STM32 isp程序下载协议

2020-01-10 19:42发布

最近公司要做一个STM32的手持编程器,按照ST公司给ISP协议写了出来,能和STm32握手擦除写ROM等。。。。但是写完后STM32没反应???
现在怀疑是写数据的问题。
过程:
下发数据要写到的地址:08 00 00 00四个字节,后面紧跟一个字节的异或校验码(即前四个字节按位异或校验)08,ISP给予回复79,然后loader下发一个字节的数据数量“FB(252)”,ISP接收后并不回复,等待loader发送252字节的数据,发送完后,loader再发送一个包括前面数据量在内的253个字节数据的异或后结果的校验码7C(视每次具体发送的数据内容而定校验码的数值),如果isp校验结果于此相同,即回复79,否则1F,重新传送。因为每次ISP接收不能超过256字节,所以,需要发送8*252+1*32(每次只发送252个数据,且下发的格式为N+1,其中N为数据长度,1为数据长度)共九次一个大的数据发送循环。
现在没反应啊~!!!!谁有程序,或者是有人懂的求赐教

另送文档,供大家研究!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
27条回答
jiaowoxiaolu
1楼-- · 2020-01-10 20:07
 精彩回答 2  元偷偷看……
jingwaner
2楼-- · 2020-01-10 22:57
建议你用commmonitor或者逻辑分析仪抓下通讯数据,看下哪里出了问题,另外可以抓下其他软件的通讯数据做对比,问我细节,我也不知道了
varding
3楼-- · 2020-01-10 23:34
以前做过,细节不记得了,stm32的isp协议相对nxp的协议简单的不是一点点,看官方的文档就能做出来了,要仔细看
varding
4楼-- · 2020-01-11 00:37
isp烧写完毕后我都是读取到pc上与bin文件进行比较,你读上来就知道你烧写的是不是对的
laylovesb1314
5楼-- · 2020-01-11 02:32
varding 发表于 2015-3-20 16:29
以前做过,细节不记得了,stm32的isp协议相对nxp的协议简单的不是一点点,看官方的文档就能做出来了,要仔 ...

已经很仔细看了~!完全按照官方文档看的,英文版的!不过发上来的这个是中文版的,中文版就是注意力多了个必须是4的倍数的数据长度!
zhouqw1979
6楼-- · 2020-01-11 04:11
 精彩回答 2  元偷偷看……

一周热门 更多>