STM32 FDCAN Bootloader写入数据出现奇怪问题

STM32 FDCAN Bootloader Strange Problem in Write data

提问人:maj Ves 提问时间:9/8/2023 最后编辑:maj Ves 更新时间:9/8/2023 访问量:78

问:

我使用过STM32h723 arm处理器FDCAN引导加载程序。但是我在将数据写入闪存时遇到了一个奇怪的问题。 我可以成功地使处理器进入FDCAN引导加载程序并从中获取响应,但无法在某些地址中写入数据。(见图片)

例如,我可以在地址 0x08000000 和 0x08000004中写入数据,但不能在 0x08000008 或 0x0800000C中写入数据。它将填充 0 或保持0xFFFFFFFF。

我阅读了 AN2606 和 AN5405 ST 的文档,但没有结果。此外,我以多种方式测试了引导加载程序,它总是以 ACK 消息响应,但数据尚未写入某些地址。此外,我还在STM32F4上研究过CAN引导加载程序,这非常简单且运行良好,但是STM32H723中的FDCAN引导加载程序具有痛苦的行为。图像 1 图像 2

闪存 STM32 引导加载程序 CAN 总线

评论

0赞 Ilya 9/8/2023
闪存写入时序?请注意,正确和错误书写的字数是一致的。检查写入宽度。参考手册,第 154 页提到了写入缓冲区和“写入包装突发不得跨越 32 字节对齐的地址边界以恰好针对一个 Flash 字”(阅读此处以获取更多上下文)。检查其中是否有任何问题。
0赞 maj Ves 9/8/2023
感谢您的关注。我会检查的。@Ilya
0赞 Ilya 9/9/2023
这也可能是指针增量错误。尝试编写一些固定值,例如0x00000000 0x11111111 0x22222222 0x33333333 ...只是为了看看什么写在哪里,哪些值被跳过或不被跳过。此外,如果您需要按字节检查它,则可以使用类似 0x11223344 的东西。

答: 暂无答案