FlyMcu串口下载和STLINK Utility

FlyMCU

FlyMCU软件进行代码下载时建立在串口USART1的基础上进行的,所有需要提前把串口(需要串口转usb)这里必须使用USART1,因为我们芯片的串口下载只适配了USART1和电脑连接。
在这里插入图片描述

接下来在keil软件的工程选项内内点击OUTPUT,选择Create HEX file如下图。
在这里插入图片描述

打开FlyMcu先点击搜索串口,之后选择端口,bps选择默认的。
在这里插入图片描述
选择我们的HEX文件,在下载之下先得让程序进入BootLoader程序 :在硬件电路中先把BOOT0设为1如图所示把跳线帽移到右边。然后按一下复位,因为stm32只有刚复位时才能读取BOOT引脚。这样stm32就进入bootloader程序了,然后点击FlyMcu里的开始编程。
在这里插入图片描述
最后把BootLoader换回来,按一下复位。这个方法只是因为我们的硬件电路没有一键下载电路与串口配合所以比较麻烦,如果有这个电路就在软件下面选择好对应的触发方式DTR和Bootloader,可以直接点击开始编程了。

在这里插入图片描述
其实我们还可以在软件内勾选编程后执行(作用是软件自动从Bootloader跳转到0x08000000运行),然后取消下面的编程到FLASH时写选项字节如图。不过这样只能调试一次,再按一次复位程序有从Bootloader开始了。
在这里插入图片描述
点击读FLASH可以生成bin文件。

下载原理解释:之前我们学习过存储映像:
在这里插入图片描述
如图在ROM区的0X08000000位置的数据就是编译后的代码,stm32启动后就会自动运行这里的程序。如果想使用串口下载程序的话我们就得把数据通过串口发给stm32,stm32把数据转运到0x08000000的位置就好了,那么接受并转运数据就交给BootLoder(st公司写好的一段代码程序放在0x1FFFF0000区)了。接收并转运之后程序就进入了瘫痪状态,更新好之后,再启动主程序。那么如何启动BootLoder呢?如下图
在这里插入图片描述

当BOOT0为0时,就是主闪存,也就是再0x08000000的位置开始运行,再BOOT1为0BOOT0为1时,在系统存储器1FFFF000位置开始运行。下面写道BOOT引脚被锁存,也就是每次切换BOOT引脚后都要按一下复位。

STLINK Utility

电路只要把STLINK连接好就行了,串口可以不接,跳线帽可以都在最左边。在这里插入图片描述
点击软件的这个按钮连接在这里插入图片描述
这个按钮断开连接在这里插入图片描述
点击这个编程按钮选择我们要下载的文件(这里支持bin和hex两种格式下载)
在这里插入图片描述
在这里插入图片描述
这个和keil内置的下载基本是一样的,我们使用的是keil内置的下载,直接在keil内点击下载就好了。

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值