OTA 升级 bootload 跳转后(在APP做地址偏移)APP启动异常
-
zhaodong1 The target stopped in MemManage exception state.
Reason: Unknown at 0x0001235E.
For more information about analyzing faults on Cortex-M, refer to:
https://wiki.segger.com/Cortex-M_Fault.我执行跳转后报错是这样的,,现在看起来能跳转到APP,但是APP不能正常运行,,,同样的APP 工程我用你们的demo跳转后是可以正常运行的
-
背景: 在Cortex-M33中,用户模式(非特权模式)无法直接操作多数SCB寄存器。非特权访问尝试将触发故障(如MemManage故障或HardFault)。只有特权代码(如操作系统内核或异常处理程序)才能安全地配置这些寄存器。
**分析:**SCB->VTOR赋值属于内核操作,故需要使用特权模式。且YTMEVB_Demo_RevC 这个demo是启用了非特权模式的
方法一: 修改YCT工程配置并重新生成工程
①YCT工具配置删除以下宏

②确认所有外设均取消勾选EnableUserModeSupport

方法二: 在代码中直接增加进入特权模式,无需修改YCT配置

快速上手云途开发生态
发帖前请查看
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...


link文件我用的默认配置,生成后手动修改的