prettyprint

2020年6月26日 星期五

STM32F103C8T6 使用Arduino IDE 開發環境常用方法

STM32F103C8T6 MCU,功能不錯,價格也很親民。最近測試了STM32F103C8T6  BluePill與BlackPill,為了與Arduino, ESP8266等MCU使用相同的Arduino IDE做為開發工具,上網查了一些方法並測試一下,把它彙整整理,以便有興趣使用STM32板子的人提供整合的經驗。

  • 第一種方法使用FTDI(USB-to-UART)
需加一塊FTDI的板子。因為手邊剛好有一塊ESP8266 NodeMCU就拿它來當FTDI用,
void setup() {
  // put your setup code here, to run once:
  pinMode(0, INPUT);
  pinMode(1, INPUT);

}

void loop() {
  // put your main code here, to run repeatedly:

}
燒錄到ESP8266就可當FTDI用了。
接線方式
ESP8266        STM32F103C8
3V3                V3
G                    G
RX                A10
TX                A9


STM32F103C8
boot0 接到+

上傳blink測試程式,upload method選用Serial


  • 第二種方法在STM32F103C8 Flash Bootloader

可直接使用板子的USB上傳程式碼。
常用兩種Bootloader為

另外兩種開發板分別為

    可參考下列網址即可完成,

採用第二種開發版程式需加裝STM32CubeProgrammer,下載網址https://www.st.com/en/development-tools/stm32cubeprog.html


使用ST的Arduino_Core_STM32




但如果使用上述generic_boot20_p13.bin bootloader則燒錄一次後com port即消失無法使用第二次
因此改用STM32_HID_Bootloader,但第一次上傳時若COM無法選取,直接上傳一次後就會出現正常的COM port了。

建議採用Arduino_Core_STM32,因為可使用完整ST提供完整的開發環境。

USB Support與upload method如上圖所示,若選錯可能破壞bootloader。