[其他ST产品] STM32745/747芯片固件升级问题

[复制链接]
 楼主| flycamelaaa 发表于 2024-11-11 10:46 | 显示全部楼层 |阅读模式

STM32745芯片属于双核芯片,有M7和M4两个核,如果要做固件升级功能采用M4 BOOT+M4 APP,M7 BOOT+M7 APP,M4的app程序放在0x08120000位置处,M7的app程序放在0x08020000位置处,不知道采样这样的方式是否可行?或者是否有推荐的升级方案?目前用两个boot+两个app的方案跳转不成功,不知道什么原因,双核固件跳转是否有什么要注意的事项?请大神帮忙解答
elephant00 发表于 2024-11-11 12:03 | 显示全部楼层
为M7和M4核心分别编写独立的BOOT引导程序。
BOOT程序负责验证APP程序的完整性、加载APP程序到相应的内存区域,并跳转到APP程序的入口点。
两只袜子 发表于 2024-11-11 14:00 | 显示全部楼层
用内部Flash存储器来存储BOOT和APP程序
AdaMaYun 发表于 2024-11-11 16:47 | 显示全部楼层
STM32745芯片属于双核芯片,内部通讯是如何进行的?
jcky001 发表于 2024-11-11 19:00 | 显示全部楼层
如果两个核心需要协同工作,应实现双核之间的同步和通信机制。
可以使用共享内存、中断、消息队列等方式进行双核之间的数据交换和同步。
cr315 发表于 2024-11-11 20:00 | 显示全部楼层
BOOT程序的跳转地址是否正确。
duo点 发表于 2024-11-11 22:00 | 显示全部楼层
检查APP程序的入口点是否正确设置。
onlycook 发表于 2024-11-11 23:00 | 显示全部楼层
JTAG/SWD调试器调试一下
风凉 发表于 2025-1-14 19:06 | 显示全部楼层
STM32F745芯片确实是一个双核芯片,拥有M7和M4两个内核。关于固件升级的策略,采用独立的BOOT和APP程序对于每个内核是可行的。将M4的APP程序放置在地址0x08120000,M7的APP程序放置在地址0x08020000这样的设计是合理的。但是,实现这种策略时需要注意地址分配:确保在Flash中为每个内核的BOOT和APP程序分配了足够的空间,并且没有地址冲突
捧一束彼岸花 发表于 2025-1-15 02:00 | 显示全部楼层
需要正确配置每个内核的启动向量表(BOOT向量表),以确保在启动时跳转到正确的位置

失物招領 发表于 2025-1-15 03:00 | 显示全部楼层
实现一个可靠的跳转机制来在不同的BOOTAPP之间切换。这通常涉及到修改某些寄存器或内存值来触发内核的跳转

她已醉 发表于 2025-1-15 04:00 | 显示全部楼层
确保在切换过程中不会丢失任何重要的数据或上下文信息

春日负喧 发表于 2025-1-15 05:00 | 显示全部楼层
在升级过程中要确保系统的稳定性,避免在切换过程中出现意外情况导致系统崩溃

白马过平川 发表于 2025-1-15 07:00 | 显示全部楼层
关于你提到的使用两个BOOT和两个APP的方案跳转不成功的问题,可能的原因包括:地址配置错误:检查地址配置是否正确,包括BOOTAPP程序的起始地址以及跳转指令的地址

西洲 发表于 2025-1-15 08:00 | 显示全部楼层
在切换内核时,需要正确配置相关寄存器和内存地址。任何错误都可能导致跳转失败

故意相遇 发表于 2025-1-15 09:00 | 显示全部楼层
切换逻辑问题也有可能的,确保切换逻辑正确无误,包括中断处理、异常处理等

将爱藏于深海 发表于 2025-1-15 10:00 | 显示全部楼层
确保两个内核之间的通信机制是可靠的,以便在切换过程中进行必要的协调。在切换过程中,要特别注意内存访问和数据同步的问题,避免数据冲突或丢失。在升级过程中,要确保系统的稳定性和安全性,避免任何可能导致系统崩溃或数据丢失的操作

您需要登录后才可以回帖 登录 | 注册

本版积分规则

824

主题

4298

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部