Both sides previous revisionPrevious revisionNext revision | Previous revision |
stm32f1xx [2019/09/19 10:02] – [blue pill] RTC issue kingkevin | stm32f1xx [2024/01/07 17:49] (current) – external edit 127.0.0.1 |
---|
{{ :stm32f1xx:blue-pill_pinout.svg?0x400|}} | {{ :stm32f1xx:blue-pill_pinout.svg?0x400|}} |
| |
This cheap board is often referred as blue pill in forums and sold under $2.50 as [[http://www.aliexpress.com/item/1pcs-STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-arduino/32478120209.html|STM32 minimum system development board]]. | This cheap board is often referred as blue pill in forums and sold under $2.50. |
It has: | It has: |
* [[http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164476|STM32F103C8T6]] MCU ([[http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00161566.pdf|DS5319 datasheet]], {{:stm32f1xx:CD00161566-STM32F103x8_datasheet.pdf|archive}}): | * [[http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164476|STM32F103C8T6]] MCU ([[http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00161566.pdf|DS5319 datasheet]], {{:stm32f1xx:CD00161566-STM32F103x8_datasheet.pdf|archive}}): |
Mine for example has a 10 kΩ pull-up (to 3.3 V) resistor on USB D+/PA12 instead if a 4.7kΩ (to 5 V), although USB devices use a 1.5 kΩ resistor to pull up (to 3.3 V) usually. | Mine for example has a 10 kΩ pull-up (to 3.3 V) resistor on USB D+/PA12 instead if a 4.7kΩ (to 5 V), although USB devices use a 1.5 kΩ resistor to pull up (to 3.3 V) usually. |
| |
| ===== black pill ===== |
| |
| {{ :stm32f1xx:black-pill_bottom-mini.jpg?0x400|}} |
| {{ :stm32f1xx:black-pill_top-mini.jpg?0x400|}} |
| |
| the [[https://stm32-base.org/boards/STM32F103C8T6-Black-Pill.html|black pill]] is a "fixed" version of the blue pill, but I find it quite inferior. |
| |
| advantages: |
| * correct 1.5 kΩ pull-up resistor on USB D+ |
| * RTC is usable at the same time as the LED |
| * has 4 mounting holes |
| * USB input diode protection |
| changes: |
| * LED is on PB12 (sink to enable it) |
| * different pinout |
| drawbacks: |
| * larger |
| * same length but with less pins |
| * only one 3.3V pin (instead of 2 on the blue pill) |
| * no 5V pin |
| * no VBAT pin |
| * one less GND pin |
| * no C15 and C14 pin (used for OSC32) |
===== core board ===== | ===== core board ===== |
| |
==== USB DFU ==== | ==== USB DFU ==== |
| |
There are several USB DFU bootloaders available (one from [[http://www.st.com/resource/en/application_note/cd00264379.pdf|STMicroelectronics]] themselves, or the open source [[https://github.com/rogerclarkmelbourne/STM32duino-bootloader|STM32duino-bootloader]]), but I developed [[https://git.cuvoodoo.info/stm32f1/about/|my own]] because I wanted to know how DFU works. | There are several USB DFU bootloaders available (one from [[http://www.st.com/resource/en/application_note/cd00264379.pdf|STMicroelectronics]] themselves, or the open source [[https://github.com/rogerclarkmelbourne/STM32duino-bootloader|STM32duino-bootloader]]), but I developed [[https://git.cuvoodoo.info/kingkevin/stm32f1/|my own]] because I wanted to know how DFU works. |
| |
Here I will explain how to use USB DFU with the [[https://github.com/rogerclarkmelbourne/STM32duino-bootloader|STM32duino-bootloader]] because it provides binaries for numerous development boards (while mine supports only a few, needs to be configured, and must compiled), but for other DFU bootloaders just replace with the corresponding USB ID. | Here I will explain how to use USB DFU with the [[https://github.com/rogerclarkmelbourne/STM32duino-bootloader|STM32duino-bootloader]] because it provides binaries for numerous development boards (while mine supports only a few, needs to be configured, and must compiled), but for other DFU bootloaders just replace with the corresponding USB ID. |