0 軟硬件環境
1.操作系統:Windows
2.軟件:
- Keil
- FlyMcu
3.硬件:
- PC
- STM32最小系統開發板
- USB轉TTL CH340G
1 生成hex文件
編寫好要燒寫的程序後,點擊菜單欄的【Flash】,選擇【Config Flash Tools】。首先,在【Device】頁面中選擇設備類型,這裏是STM32F103C8。
然後,切換到【Output】頁面,勾選【Create HEX File】,最後點擊【OK】。
回到Keil主界面,點擊【Build】編譯項目,部分輸出如下:
Build started: Project: encoder_test
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\Keil_v5\ARM\ARMCC\Bin'
Build target 'Encoder'
compiling stm32f10x_bkp.c...
..\Sys\stm32f10x.h(53): warning: #47-D: incompatible redefinition of macro "STM32F10X_MD"
#define STM32F10X_MD /* 處理器型號 stm32f103rb */
..\Lib\src\stm32f10x_bkp.c: 1 warning, 0 errors
...
linking...
Program Size: Code=9612 RO-data=336 RW-data=68 ZI-data=1636
FromELF: creating hex file...
".\output\encoder_test.axf" - 0 Error(s), 30 Warning(s).
Build Time Elapsed: 00:00:07
可以看到,沒有報錯,而且生成了hex文件,這正是我們需要的。
2 準備STM32最小系統開發板
2.1 設置BOOT方式
STM32最小系統開發板如下圖所示,這裏只看【BOOT選擇部分】,上面是BOOT 0,下面是BOOT 1,左側是0,右側是1。
有兩種BOOT模式,一種爲運行模式,另一種爲燒寫模式,設置方式爲:
- 運行模式:BOOT 0爲0,BOOT 1爲0
- 燒寫模式:BOOT 0爲1,BOOT 1爲0
因爲這裏要燒寫程序,所以將BOOT 0設置爲0,BOOT 1設置爲0。
2.2 連接USB轉TTL CH340G
USB轉TTL CH340G示意圖:
根據下圖的接線方式,將USB轉TTL CH340G與STM32最小系統開發板連接起來。
連接好後,將USB轉TTL CH340G插入到PC的USB接口中。
3 使用FlyMCU往STM32中燒寫程序
3.1 搜索串口
正常情況下,軟件會自動搜索到串口。
3.2 加載hex文件
加載之前生成的hex文件。
3.3 其他設置
勾選【校驗】和【編程後執行】。
3.4 燒寫
點擊【開始編程】,燒寫程序。
右側窗口爲輸出信息,可以看出,燒寫完成。