您好我是ARM的新手,我使用的是SAM3S4A ARM处理器和IAR编译器。
了解闪存代码来自0x00400000 - 0x0043FFFF并且处理器从地址零(0x00000000)开始,当默认情况下VTOR寄存器为零时,PC如何跳转到0x00400000。
答案 0 :(得分:0)
根据我从文档中可以理解的,ARM proc在复位时转到0x0。可以使用GPNVM寄存器将0x00000000处的4K地址空间映射到ROM或FLASH。因此,在重置时,ARM开始从ROM或FLASH执行代码。 (ROM包含一些专有的引导加载程序,您可以在Flash中拥有自己的OS / Bootloader)。一旦控制到达您写入闪存的代码,您就可以设置一个新的向量表并更新VTOR,以便在那里路由新的异常。