ISR 的 GCC 映射文件地址不同于内存值



GCC 地图中显示的 ISR 地址0x00001328。

.text.USART0_RX_IRQHandler
0x00001328       0xe4 ./Source/interrupts_new.o
0x00001328                USART0_RX_IRQHandler

但是,在0x0000006C处实际加载到 ISR 矢量中的值是0x00001329。

0x00000060 000012ED00001301 00001315 00001329...

这是我第一次注意到这一点(甚至看过(。可以吗? 这是对齐问题还是拇指问题?

谢谢。

它显示了 ISR 使用 THUMB 指令集的 uC。

偶数地址 - 手臂,奇数 - 拇指。

一切都正确

实际例程在地址和0xffffff0c地址 - 即最后两位归零。

最新更新