共2条
1/1 1 跳转至页
LPC2220 求解周立功LPC2220启动及相关问题
问
VectorTable
ldr pc, [pc,#-0xFF0] ; IRQ : read the
请问在启动代码中断向量表中0x18处把IRQ中断向量地址赋给PC,为何这样写法?这句汇编的含义是这样理解吗?: PC = PC - 0xFF0 而IRQ的中断向量地址应该是:VICVectAddr EQU 0xFFFFF030.这样的话,上面的减法如何能得到 0xFFFFF030.
还有关于重映射的问题:
假如在一个板中已经烧进去了一段BootLoader(假如在片外的FLASH地址处为0x80000000).然后将应用程序烧到0x80002000处.把FLASH接到片选0处,那上电第一条指令是从哪个地址开始取指令阿?
那在最先烧进去的BootLoader中放中断向量表,还是在应该程序的启动函数statup.s中放置中断向量表,还是两个地方都要放.
还有不解的就是,如果BootLoader中已经对硬件进行了初始化配置,为何还要statup.s这个文件阿(在LPC2220中,为初始化一些堆栈,和存储器初始化等,而且在第一段中还有中断向量表).
问题多多,对于本初学者来讲,望高手,前辈详细解答,在此先谢.由于很希望搞懂整个启动过程. 答 1: 我就郁闷了唉,在这里问过几次问题,竟然没有一个人回答,这次也一样,真郁闷!
ldr pc, [pc,#-0xFF0] ; IRQ : read the
请问在启动代码中断向量表中0x18处把IRQ中断向量地址赋给PC,为何这样写法?这句汇编的含义是这样理解吗?: PC = PC - 0xFF0 而IRQ的中断向量地址应该是:VICVectAddr EQU 0xFFFFF030.这样的话,上面的减法如何能得到 0xFFFFF030.
还有关于重映射的问题:
假如在一个板中已经烧进去了一段BootLoader(假如在片外的FLASH地址处为0x80000000).然后将应用程序烧到0x80002000处.把FLASH接到片选0处,那上电第一条指令是从哪个地址开始取指令阿?
那在最先烧进去的BootLoader中放中断向量表,还是在应该程序的启动函数statup.s中放置中断向量表,还是两个地方都要放.
还有不解的就是,如果BootLoader中已经对硬件进行了初始化配置,为何还要statup.s这个文件阿(在LPC2220中,为初始化一些堆栈,和存储器初始化等,而且在第一段中还有中断向量表).
问题多多,对于本初学者来讲,望高手,前辈详细解答,在此先谢.由于很希望搞懂整个启动过程. 答 1: 我就郁闷了唉,在这里问过几次问题,竟然没有一个人回答,这次也一样,真郁闷!
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |