本帖最后由 王军 于 2019-6-6 16:36 编辑

使用开发板已有一阵时间了,在这段时间内也学到了不少知识,在这里简单介绍一下如何通过串口来给STM32下载程序。STM32的启动模式
通过查阅资料,此版可以通过BOOT0和BOOT1电平的不同组合,来选择不同的启动模式。
下面是我个人的理解:
主闪存启动模式:即运行模式,单片机上电即运行程序。
系统存储器启动模式:即串口下载模式。上电之前要先设置BOOT0=1,BOOT1=0,然后才能通过串口下载程序。或者在已经上电的情况下,设置BOOT0=1,BOOT1=0,然后按一下复位键,这样也能通过串口下载程序。
SRAM启动模式:即调试模式。假如我只修改了代码中一个小小的地方,如果直接擦除整个Flash,比较费时,而且Flash的擦写次数也是有限制的。所以可以考虑从RAM中启动代码,用于快速的程序调试,等程序调试完成后,再将程序下载到单片机内,首先要安装USB串口ch341驱动,这个和51系列安装方式都是一样的,安装成功后一旦开发板插入即显示端口号和驱动名称,有图片,设置启动模式为系统存储启动模式
上电前,设置BOOT0=1,BOOT1=0。或者是在上电后,设置BOOT0=1,BOOT1=0之后,然后按一下复位按键。这两种方式都可以让设置为系统存储启动模式,从而通过串口下载程序。
参考uFUN的资料:可以看出,BOOT的选择是通过拨码开关实现的。S1对应BOOT1,S2对应BOOT0,开关处于ON状态,BOOT直接接地,为低电平0;开关处于OFF状态,BOOT上拉为高电平1,我这次调试使用Flash Loader Demonstrator下载
Flash Loader Demonstrator是ST官方的串口下载软件,可以用于STM32系列单片机的程序下载,官网地址:STM32 Flash loader demonstrator
1.软件的下载Flash_Loader_Demonstrator_v2.6.0_Setup
打开软件,选择板子串口对应的COM号,波特率可以调成最高,这样下载速度会快一点,但是有的串口芯片,我调成115200的波特率
如果和板子连接成功的话,会检测到目标STM32芯片的Flash的大小,我们的uFUN开发板是使用STM32F10RC,256KB Flash。 IMG_20190603_095025.jpg IMG_20190603_091422.jpg 这一步,可以查看当前Flash各页的读写情况,绿色的锁表示可读/可写,如果芯片被加了读保护,或者写保护,部分页会显示为红色的锁!下步是程序的下载先加载hex文件,下面的擦除选项可以选择:擦除必要的页、不擦除或者是全片擦除,这里保持默认配置就行,直接点击Next进行程序的下载。如果下载成功,会显示这里如果点击Back是不能进行第二次程序下载的,必须重新打开,连接,才能下载。我此次调试了音频程序两只老虎和试例hex文件,还有改了c文件,学习的路上还有很多知识要学习,再次非常感谢面包板社区给我提供这个试用测评机会,还要继续学习把嵌入式32单片机学习好!