STM32 FlyMcu使用教程

shSTM32 FlyMcu使用教程

缺点:

  • FlyMcu在下载的时候只能选择.hex文件,如果选择.bin文件会报错,但是读取的时候只能选择.bin文件,读取出来的.bin文件就不能在下载回去了
  • 不能单独写入选项字节,只能下载Flash,顺便写入选项字节,但如果设置了写保护,程序就下载不了,下载不了,就无法清除写保护,形成死循环

准备工作

  • 先配置STM32的启动模式,将Boot0设为1,Boot1设为0,将系统储存器作为启动区域。(将Boot引脚切换好后要按复位,因为STM32只有在刚复位时才会读取Boot引脚,程序运行之后,切换Boot引脚是无效的
  • 生成HEX文件,在Keil中,选择魔术棒——>OutPut——>勾选Creat Hex File,之后编译,就可以在相应工程目录的Object文件夹下,找到对应的Hex文件了。
  • STM32 FlyMcu使用教程_第1张图片

下载程序

  • 搜索串口,选择我们串口通信对应的COM号,波特率默认即可
  • 选择刚刚编译生成的HEX程序文件
  • 开始编程,把我们想要的程序通过BootLoader刷新到主闪存
  • 把Boot0置0,然后按一下复位,更新Boot引脚的配置信息,执行主程序

如需下载程序后可以立即执行,则可勾选编程后执行,并且取消勾选编程到FLASH时写选项字节

STM32 FlyMcu使用教程_第2张图片

读FLASH

可以将芯片里的程序读出来(.bin格式),里面记录的就是STM32从0x0800 0000开始存储的程序数据。

  • .bin格式是没有地址信息的原始数据文件
  • .hex格式是有地址信息的

比如你看到别人用STM32做了一个产品,你觉得不错,就可以抄一下他的PCB板,然后程序文件,又可以通过FlyMcu读取出来,这样就可以借鉴别人的产品了

不过STM32可以配置读保护

STM32 FlyMcu使用教程_第3张图片

清除芯片

可以把主程序区域全部擦除,擦除之后,所有的数据都是FF

STM32 FlyMcu使用教程_第4张图片

读取器件信息

将芯片的序列号,FLASH容量,SRAM容量等信息读取出来

STM32 FlyMcu使用教程_第5张图片

选项字节

存储一些独立于程序代码的配置参数

配置读保护

  • 设成A5允许读出,设成FF阻止读出
  • 如果设置成阻止读出,那么再回到Keil下载程序时就会失败,需要取消读保护后在进行下载(取消读保护时,会同时清空芯片的程序,这样程序就不会被偷走了)

STM32 FlyMcu使用教程_第6张图片

  • 无论程序怎么更新,选项字节的数据都可以不变,可以用这些字节来存储不随程序变化而变化的参数
  • 选项字节可以使用上位机很方变地修改,在上位机中可以直接修改选项字节的内容

配置写保护

比如在主程序最后几页写了一些自定的数据,不想在下载的时候被擦除了,就可以把最后几页设置写保护锁起来,设置写保护之后,就无法再写了,如果想再次写入,需要先解除写保护

数据,不想在下载的时候被擦除了,就可以把最后几页设置写保护锁起来,设置写保护之后,就无法再写了,如果想再次写入,需要先解除写保护

STM32 FlyMcu使用教程_第7张图片

你可能感兴趣的:(stm32,嵌入式硬件,单片机)