一般只能通过三种方式下载程序到stm32单片机中:
1.JTAG 2.ISP 3.IAP
具体可参考:单片机程序下载方式ISP、IAP、JTAG
接下来介绍如何ISP烧录代码:
要通过ISP方式下载程序,需要用到单片机内部自带的Bootloader,这个Bootloader是预制在单片机内部的,出厂自带的,它在出厂后就不能修改或擦除。因此首先要将BOOT0=1,BOOT1=0 让单片机从系统存储器启动,然后使用ISP下载软件就可以下载程序了。ISP可以有很多种方式,比如串口、USB、CAN。下载完成后,设置BOOT0=0,BOOT1=X(0或1)。
第一步:获取软件
STM32使用的ISP下载软件是官方软件Flash loader demostrator。下载地址:软件下载地址
下载完解压安装。
第二步:软件使用
1)点击运行程序
Port name:串口号,就是数据线连接到电脑的哪个COM。
Band Rate:波特率,随便选择,最高115200
Timout:一般设置为5秒,可以适当选择.
注意:数据线连接stm32板子的一端,应该连接到usb_232这个口,同时通过连接帽使得BOOT0=1,BOOT1=0 如图:
点击next
2)正确读取stm32芯片容量256kb,我使用的是stm32f103RCT6.
点击next
3)
Target表示芯片类型。
PID表示目标ID
version表示BootLoader的版本号
点击next
4)
Erase:擦除stm32的Flash存储器,可以选择全部擦除和部分擦除
Download to device:下载固件(.hex)。
Upload from device:读取芯片内部的固件
Enable/Disable Flash protection:启用或禁用Flash的读写保护。
Edit option bytes:编辑选项字节
这里选择Download to device下载固件,找到固件,文件类型选用.hex,点击next。
下载成功。点击close关闭软件。
5)关机,通过连接帽,使得BOOT0=0,BOOT1=0或BOOT1=1。切换到用户闪存启动系统。开机进入正常工作模式。