HC32L072 MCU中断向量能否偏移
最近使用HC32L072PATA MCU做一款农机产品仪表盘,需要实现CAN Bootloader功能。因为Bootloader代码存放与0~0x6000地址空间,应用程序存放在0x6000~0x1FFFF地址空间。所以想要将中断向量表进行偏移至0x6000处。想请教一下小华半导体的技术大佬,这个芯片是否支持中断向量表的偏移操作。 哥们, 没技术支持的话加我微信。 m0+内核的MCU,都支持偏移。L072为M0+内核,故支持。M0的内核的MCU,不支持偏移。 已经找到本地技术支持解决问题了,感谢! 解决办法分享一下,只需在startup_hc32l07x.s中增加一行代码就可以修改向量偏移地址,如下图
我用hc32f072,不加也可以,app正常运行 M0+ 内核有 SCB->VTOR 寄存器可以直接用它做中断向量表偏移设置。 caizhiwei 发表于 2023-3-22 13:13
我用hc32f072,不加也可以,app正常运行
不加偏移,APP发生中断会跳转道地址0开始的中断向量表 iwjj1985 发表于 2023-3-27 14:37
不加偏移,APP发生中断会跳转道地址0开始的中断向量表
不可能不加偏移,只是处理方式不一样而已。
不管是直接写SCB->VTOR的值还是你在.s文件上的汇编代码里加一个偏移。
殊途同归,本质都是把0xE000ED08这个地址内的值改成你要跳转的偏移量。
不过M0+的SCB->VTOR寄存器没有直接开放,需要手动去打开来,略显麻烦。
小华原厂的做法直接在.s文件的汇编代码里添加偏移量其实挺好的。
简单粗暴,照着做能用就行了。不需要深究怎么来来的。
页:
[1]