CuVoodoo

the sorcery of copper

User Tools

Site Tools


stm32f1xx

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
stm32f1xx [2017/03/31 20:22] – [core board] kingkevinstm32f1xx [2024/01/07 17:49] (current) – external edit 127.0.0.1
Line 72: Line 72:
   * proper USB disconnect circuit (useful for using the DFU bootloader it comes with)   * proper USB disconnect circuit (useful for using the DFU bootloader it comes with)
   * small   * small
-  * good analogue design+  * good analog design
   * more flash (128 vs 64 kB)   * more flash (128 vs 64 kB)
   * small, fits breadboard (600 mil wide)   * small, fits breadboard (600 mil wide)
Line 79: Line 79:
   * no additional connections (SWD, power, GND)   * no additional connections (SWD, power, GND)
   * the pin silkscreen are not the chip pins (you always need the schematic at hand)   * the pin silkscreen are not the chip pins (you always need the schematic at hand)
-  * the clones don't provide a second voltage regulator for the analague part+  * the clones don't provide a second voltage regulator for the analog part
  
 ===== blue pill ===== ===== blue pill =====
Line 86: Line 86:
 {{ :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}}):
Line 114: Line 114:
   * no user button   * no user button
   * board extends over headers   * board extends over headers
 +  * the RTC is not stable when the on-board LED is toggled
  
 Here a rough {{:stm32f1xx:bluepill-6-stm32f103c8t6原理图.pdf|schematic}}, but there a many derivatives. Here a rough {{:stm32f1xx:bluepill-6-stm32f103c8t6原理图.pdf|schematic}}, but there a many derivatives.
 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 =====
  
Line 364: Line 388:
 ==== USB DFU ==== ==== USB DFU ====
  
-There are several USB DFU bootloader. +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
-I am using [[https://github.com/rogerclarkmelbourne/STM32duino-bootloader|STM32duino-bootloader]] ([[https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Bootloader|wiki]])+ 
-It works well on most generic boards and is small (8kB).+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.
  
 If you want to make use of USB in your actual application after the bootloader started it, don't forget to force re-enumerating USB so the host computer sees the new interface: If you want to make use of USB in your actual application after the bootloader started it, don't forget to force re-enumerating USB so the host computer sees the new interface:
stm32f1xx.1490991755.txt.gz · Last modified: 2024/01/07 17:49 (external edit)