问: VECTORS.s 中的一段,里面的 REMAP 操作都做了些什么 好像是保护一类的操作.REMAP 和 MEMMAP 各是什么含义 如果我要同时使用两个外部中断,应当怎样写这一段REMAPS MOV R2,#0x40000000LDR R1,=VectorsLDMIA R1!,{R3-R10}STMIA R2!,{R3-R10}LDMIA R1!,{R3-R10}STMIA R2!,{R3-R10}LDR R2,=MEMMAPMOV R1,#0x02STR R1,[R2]MSR CPSR_c, #0x1fMOV PC, R0
答:REMAP 是重映射的意思,MEMMAP 是存储器映射控制寄存器.MEMMAP = 0b01,不映射,程序由 FLASH 开始.MEMMAP = 0b10,程序从 RAM 开始,如果你的程序在 RAM 中,必须使用这种方式.如同时使用两个中断,这一段也不用改. |