完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我第一次在一台设备上遇到问题,同时在同一型号 (STM32H755IIT6) 上做一些在几台(几十台)上运行良好的事情。
我正在使用自定义更新工具更新设备的固件,该工具与使用 stm32CubeProgrammer 闪烁的协议非常相似,即在写入请求“0x31”时。 问题是,在这个设备上,部分数据没有被写入,尽管我从请求中得到了肯定的响应,当我闪烁 m4 时,落在地址 0x08010040 之后并且有几个(不总是恒定的)块. 使用 saleae,我可以看到,无论是使用更新工具还是 stm32CubeProgrammer,它们的执行方式都非常完全相同(只有 ms 的时间差异),对于相同的文件甚至相同的信息。例如: 请求:0x31 0xCE 响应:0x79 请求(地址和校验和)例如:0x08 0x00 0x00 0x00 0x08 响应:0x79 请求:数据长度、数据、校验和 响应:0x79 这是由这两种工具以相同的内容执行的,而且,这是第一次,在这个设备上,我目前只能使用 STM32CubeProgrammer,如果我读取内存,我会注意到在 m4 有一些地址什么都没有是在我使用其他工具时写的。 因此,我非常激动,首先,一个工具如何工作而另一个工具不工作,其次,也是最重要的是,如果在写入过程中出现问题,引导加载程序如何做出积极响应? 关于可能是什么问题的任何提示? PS:我还尝试检查内存中写入后无法立即写入的部分,以误导以后可能发生的任何错误覆盖。 |
|
相关推荐
1个回答
|
|
|
已解决:协议上的唯一区别是 stm32CubeProgrammer 在收到擦除的肯定响应后等待 4 秒,而该工具将再次开始请求写入权限。添加这个 4s,问题就消失了。由于 m4 是最后一个被擦除但第一个被写入,我怀疑由于某种原因这个设备在擦除时速度较慢并且在我写入时仍在擦除。我发现这出乎意料,因为我知道引导加载程序只会在擦除完成后给出正数。
TLDR:在请求写入 (0x31 0xCE) 之前,在擦除请求 (0xFF 0xFF 0x00) 的肯定响应 (0x79) 之后添加 4s 等待) |
|
|
|
|
只有小组成员才能发言,加入小组>>
stm32mp157的异核通信的rpmsg_sdb的m4固件和a7驱动该如何编写?
1453 浏览 0 评论
stm32f103用freertos对一个采样率为1kHz的传感器,进行采样,数据出差
1502 浏览 0 评论
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
3649 浏览 1 评论
3842 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
2461 浏览 1 评论
STM32H7打开DCache后,出现了串口接收信息为空的现象,是哪里出了问题?
727浏览 5评论
用NANO STM32F103RBT6的开发板烧录不了是哪里出了问题?
661浏览 5评论
710浏览 5评论
外部中断触发类型为双边沿触发,进入中断回调后有什么办法判断该边沿是上升沿还是下降沿?
941浏览 5评论
STM32L071CBT6低温环境下无法正常工作是什么原因引起的?
745浏览 5评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 03:34 , Processed in 0.563967 second(s), Total 71, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
405