arm:stm32f103c8t6
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
arm:stm32f103c8t6 [2014/04/14 21:13] – [Overview] redox | arm:stm32f103c8t6 [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | # STM32F103C8T6 Dev. board | ||
- | |||
- | ## Overview | ||
- | |||
- | {{ : | ||
- | |||
- | It's a small development board, with a 20 pins JTAG connector, a MiniUSB connector and all (?) pins broken out on two rows on the side. | ||
- | There' | ||
- | |||
- | I have found a schematic that looks okay | ||
- | {{ : | ||
- | |||
- | ## Bootloader | ||
- | |||
- | The board is shipped without any software, link, datasheet, or pre-loaded code. Luckily, the STM32 family chips often (always ?) embed a bootloader. For this chip, STM32F103C8T6, | ||
- | |||
- | I have tried flashing it with the SWD (that can be found in the JTAG header) with an ST-link programmer. I does work but requires some hardware. So the Serial bootloader... | ||
- | |||
- | Don't forget to set BOOT0 to 1 (and keep BOOT1 to 0) with the appropriate jumper on the board. Then, power or or reset the Board (with the onboard switch) and flash you binary =) | ||
- | |||
- | < | ||
- | stm32flash - http:// | ||
- | |||
- | Using Parser : Raw BINARY | ||
- | Serial Config: 57600 8E1 | ||
- | Version | ||
- | Option 1 : 0x00 | ||
- | Option 2 : 0x00 | ||
- | Device ID : 0x0410 (Medium-density) | ||
- | - RAM : 20KiB (512b reserved by bootloader) | ||
- | - Flash : 128KiB (sector size: 4x1024) | ||
- | - Option RAM : 16b | ||
- | - System RAM : 2KiB | ||
- | |||
- | Wrote and verified address 0x08001e6c (100.00%) Done. | ||
- | |||
- | Starting execution at address 0x08000000... done.</ | ||
- | |||
- | It should start right away. If you're using the USB port in your code, you will probably have to unplug and replug the board from your USB port (or else it won't enumerate...). | ||
- | |||
- | ## USB bootloader | ||
- | |||
- | The serial bootloader is better than the JTAG stuff when you only need to flash your code. However, it requires an USB-Serial adapter, changing jumpers, ... Not really friendly. So I looked for another method: an USB bootloader. | ||
- | |||
- | Keep in mind that you can easily screw up the USB bootloader, while the serial bootloader is much much harder (impossible ?) to accidentaly erase. | ||
- | |||
- | I haven' | ||
- | |||
- | The Maple Bootloader provides DFU access. You can program to RAM or Flash. I won't go into details about DFU... On Archlinux, install the __df-utils__ package from the AUR, and then it's just " | ||
- | |||
- | < | ||
- | dfu-util 0.7 | ||
- | |||
- | Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc. | ||
- | Copyright 2010-2012 Tormod Volden and Stefan Schmidt | ||
- | This program is Free Software and has ABSOLUTELY NO WARRANTY | ||
- | Please report bugs to dfu-util@lists.gnumonks.org | ||
- | |||
- | Filter on vendor = 0x1337 product = 0x1eaf | ||
- | Opening DFU capable USB device... ID 1337:1eaf | ||
- | Run-time device DFU version 0110 | ||
- | Found DFU: [1337:1eaf] devnum=0, cfg=1, intf=0, alt=1, name=" | ||
- | Claiming USB DFU Interface... | ||
- | Setting Alternate Setting #1 ... | ||
- | Determining device status: state = dfuIDLE, status = 0 | ||
- | dfuIDLE, continuing | ||
- | DFU mode device DFU version 0110 | ||
- | Device returned transfer size 1024 | ||
- | No valid DFU suffix signature | ||
- | Warning: File has no DFU suffix | ||
- | bytes_per_hash=155 | ||
- | Copying data from PC to DFU device | ||
- | Starting download: [################################################## | ||
- | state(8) = dfuMANIFEST-WAIT-RESET, | ||
- | Done! | ||
- | Resetting USB to switch back to runtime mode</ | ||
- | |||
- | Some changes have been made: | ||
- | |||
- | * USB VID/PID have been changed | ||
- | * LED moved to PA0 | ||
- | * LED timings changed | ||
- | * Button removed | ||
- | * Bootloader timeout also changed | ||
- | * It now used a little bit less than 16Kio; the user-program flash definition has to be changed accordingly: | ||
- | |||
- | __Note:__ With DFU, don't forget to " | ||
- | dfu-suffix -a ./main.bin -v 1337 -p 1eaf -d 0001 | ||
- | |||
- | The latest source is: {{: | ||
- | |||
- | |||
- | |||
- | ## Demo | ||
- | |||
- | ## Links | ||