[其他ST产品] STM32 串口ISP烧录问题

[复制链接]
1566|17
 楼主| elephant00 发表于 2025-1-15 16:01 | 显示全部楼层 |阅读模式
我有一套代码需要使用ISp烧录HEX文件运行,代码有一个老的HEX,无论是全片擦除还是擦除重要部分再下载都没有问题。 但是代码重新编译之后的产生的新hex文件,如果选择全片擦除,就没办法正常运行。只有ISP选择擦除重要部分在下载,才是正常的 正确的代码现象是灯可以闪烁,能连接上串口。新编译的HEX文件如果全片擦除,则没有任何现象。 只有选择老的(正确的)HEX文件ISP下载一次,新编译的HEX文件再ISP烧录一遍才能够运行成功。 这个问题很困扰我,希望有懂得朋友解答一下。谢谢各位
失物招領 发表于 2025-2-11 01:34 | 显示全部楼层
你这个简单,就是ISP和你的程序地址设置有问题,有冲突了

将爱藏于深海 发表于 2025-2-11 02:38 | 显示全部楼层
新的HEX文件可能在编译时生成了不同的校验和或配置位设置。这些设置可能影响了微控制器的启动行为。检查编译器设置,确保新的HEX文件在编译时使用了与旧文件相同的配置(如时钟设置、启动模式、看门狗设置等)

她已醉 发表于 2025-2-11 03:23 | 显示全部楼层
新的HEX文件可能包含了额外的代码或数据段,这些段可能覆盖了旧文件未使用的内存区域

春日负喧 发表于 2025-2-11 04:35 | 显示全部楼层
使用链接器脚本(如果适用)来确保内存布局正确。检查是否有内存区域被错误地覆盖或未被正确初始化

温室雏菊 发表于 2025-2-11 05:34 | 显示全部楼层
确认ISP烧录工具的设置是否正确,特别是与校验和验证、配置位写入等相关的设置

故意相遇 发表于 2025-2-11 06:23 | 显示全部楼层
尝试使用不同的ISP烧录工具或更新当前工具的固件/软件版本

白马过平川 发表于 2025-2-11 07:23 | 显示全部楼层
如果新代码改变了启动代码或中断向量表的位置,可能会导致微控制器无法正确启动

公羊子丹 发表于 2025-2-11 08:16 | 显示全部楼层
你描述的现象很可能和芯片的Option Bytes配置有关,建议检查一下老版本和新编译HEX文件烧录时的Option Bytes设置是否一致。
周半梅 发表于 2025-2-11 08:17 | 显示全部楼层
全片擦除会清除Option Bytes中的一些重要配置,比如读写保护或BOOT模式设置,可能导致程序无法正常运行。
帛灿灿 发表于 2025-2-11 08:18 | 显示全部楼层
你可以用STM32CubeProgrammer读取老HEX烧录后的Option Bytes配置,和新编译HEX对比,看看是否有不同的地方。
童雨竹 发表于 2025-2-11 08:19 | 显示全部楼层
如果Option Bytes被修改导致无法运行,可以手动设置回来,比如将Boot选项设为主程序闪存启动(nBOOT0 = 0,nBOOT1 = 1)。
万图 发表于 2025-2-11 08:21 | 显示全部楼层
检查一下新编译代码的向量表地址是否正确,比如是否从 0x08000000 开始。如果向量表地址不对,全片擦除后自然无法正常启动。
Wordsworth 发表于 2025-2-11 08:22 | 显示全部楼层
有可能是ISR或者中断向量表未正确初始化,建议在启动文件中确认 SystemInit() 是否被调用并初始化时钟等配置。
Bblythe 发表于 2025-2-11 08:23 | 显示全部楼层
如果老HEX能正常运行,说明硬件基本没问题。你可以尝试用STM32CubeIDE直接Debug看一下新编译代码的启动情况,看看是卡在哪个地方了。
Pulitzer 发表于 2025-2-11 08:24 | 显示全部楼层
注意检查新代码是否启用了Watchdog或其他复位功能,全片擦除后默认配置可能触发复位异常。
Uriah 发表于 2025-2-11 08:25 | 显示全部楼层
建议使用STM32CubeMX重新生成启动配置,再移植新代码,确保时钟、复位等系统初始化步骤都正确。
Clyde011 发表于 2025-2-11 08:27 | 显示全部楼层
实在不行可以对比老版本和新编译HEX的二进制数据,通过工具查看具体差异,找出导致异常的原因。
风凉 发表于 2025-2-11 08:34 | 显示全部楼层
检查启动代码和中断向量表是否位于正确的内存地址

捧一束彼岸花 发表于 2025-2-11 09:45 | 显示全部楼层
微控制器的某些内存区域可能是保留的,用于特定的硬件功能或启动配置。确保新代码没有覆盖这些保留区域

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

本版积分规则

1031

主题

3946

帖子

7

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