liangliangwa 发表于 2018-1-26 09:14:51

STM32用串口下载程序的原理是什么?自己能写一个下载软件...

STM32用串口下载程序的原理是什么?自己能写一个下载软件吗?像官方提供的Flash Loader Demo软件一样,连接串口,然后下载程序?

Inc_brza 发表于 2018-1-26 09:32:06

肯定是可以的,君不见已经有人写过了?原子提供的flymcu,sscom这些都有吧。
如果没资料,楼主可以用逻辑分析仪吧下载的过成给抓出来分析,毕竟这个过程
是透明的。

发表于 2018-1-26 09:41:44

有标准协议,在Flash Loader Demo\doc下面,UM0516.pdf

yu0405jie 发表于 2018-1-26 10:01:23

原理就是Flash的可读写,烧录程序就是将二进制文件写入单片机中指定地址的Flash中。
你可以设置单片机boot引脚,利用已经固化在系统存储区中的程序进行更新,这样只需要自己写上位机就可以了,但要先搞清楚通信协议是怎样的。
你也可以自己编写一个单片机端的IAP程序,制定自己的通信协议,在编写上位机程序来更新,这样灵活性更大一些,不用设置boot引脚。

liangliangwa 发表于 2018-1-26 10:23:52

Inc_brza 发表于 2018-1-26 09:32
肯定是可以的,君不见已经有人写过了?原子提供的flymcu,sscom这些都有吧。
如果没资料,楼主可以用逻辑分 ...

感谢回复!

liangliangwa 发表于 2018-1-26 10:26:10

安 发表于 2018-1-26 09:41
有标准协议,在Flash Loader Demo\doc下面,UM0516.pdf

感谢回复!已经找到,我会仔细阅读的。

liangliangwa 发表于 2018-1-26 10:28:22

安 发表于 2018-1-26 09:41
有标准协议,在Flash Loader Demo\doc下面,UM0516.pdf

对了,ST在芯片内部ROM区域出厂固化的那段程序是支持接收上位机的命令的,但绝对没法改变已经固化程序,是吧?

liangliangwa 发表于 2018-1-26 10:30:45

yu0405jie 发表于 2018-1-26 10:01
原理就是Flash的可读写,烧录程序就是将二进制文件写入单片机中指定地址的Flash中。
你可以设置单片机boot ...

感谢回复!能详细说说编写单片机端的IAP程序吗?你所说的这个编写的IAP程序能将芯片出厂的固化程序修改掉吗?又为什么不用设置Boot脚呢?

hello_bug 发表于 2018-1-26 10:46:06

学习了,试试自己弄个下载软件,编个上位机。

发表于 2018-1-26 14:19:17

无法更改芯片中的固件,可以自己写一个程序实现串口或者其他方式进行程序烧写,这个类似IAP,第一次需要手动烧写。
页: [1] 2
查看完整版本: STM32用串口下载程序的原理是什么?自己能写一个下载软件...