请问stm32怎么通过isp串口将bin文件发送给另一个stm32哈
目前在做一个项目,类似于脱机烧录器。stm32将bin文件或是hex文件通过串口利用isp协议发送到另一个stm32中,现在已经将模拟U盘与FAtfs文件系统整合到一起了,很方便的从电脑上将hex文件放入stm32spiflash中,可以通过fatfs系统完成读写。但是最关键isp通讯不是很懂,看过了网上关于isp协议的一些资料,也知道用什么指令操作。不过关于串口发送数据这块搞得不是很明白,那些isp的操作指令要怎么发送到另一个stm32中,只知道串口可以发送字符串,但是那些指令都是十六进制数如0x7f,难道要将0x7f以字符串的形式发送到另一个stm32中吗?另一个stm32在接收到指令之后还会发送一个0x79给主机,此时接收的难道也是字符串吗?真的被串口搞懵逼了!:Q:Q:Q
两个问题
1、烧写另外一片芯片时,如果需要芯片进入BOOT模式,可以用ST的协议进行,很简单的。自己抓包数据,多看几遍就明白了
2、如果是另外一片芯片是正常工作的,只是需要把数据传输过去,他自己处理的话。建议自己写串口通讯协议。比如,数据发送头+长度+内容+校验和的方式。 安 发表于 2018-11-15 11:14
两个问题
1、烧写另外一片芯片时,如果需要芯片进入BOOT模式,可以用ST的协议进行,很简单的。自己抓包数据 ...
感谢版主的回答,:D对,说的就是第一个问题,目前是知道怎么进入bootlloader,isp的操作协议也大致上了解了,但就是不知道串口怎么传输数据,比如说那些指令要怎么传给从机,bin文件要怎么通过串口传输给从机 你可以参考一下串口IAP的程序,从机烧一个IAP的demo,主机从内存卡或者flash读取bin文件然后通过串口发给从机,然后从机从刚刚传过去的bin启动 指令是类似的。楼主抓包STMFlashLoader 的通讯过程,多看看就明白了。 mzy2364 发表于 2018-11-15 13:05
你可以参考一下串口IAP的程序,从机烧一个IAP的demo,主机从内存卡或者flash读取bin文件然后通过串口发给从 ...
好的,谢谢回答:lol 安 发表于 2018-11-15 14:14
指令是类似的。楼主抓包STMFlashLoader 的通讯过程,多看看就明白了。
我研究研究看看 什么字符串 数据格式你自己都搞不明白?
这个可能需要在STM32工程里添加文件系统FatFs,才有可能打开二进制文件以文件流方式进行串口发送。
页:
[1]