这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » UCOS 请教移植UCOS,异常向量表的问题!

共2条 1/1 1 跳转至

UCOS 请教移植UCOS,异常向量表的问题!

院士
2006-09-17 18:14:16     打赏
UCOS 请教移植UCOS,异常向量表的问题!



关键词: 请教     移植     异常     量表     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问  LDR     PC, ResetAddr
        LDR     PC, UndefinedAddr
        LDR     PC, SWI_Addr
        LDR     PC, PrefetchAddr
        LDR     PC, DataAbortAddr
        DCD     0xb9205f80
        LDR     PC, [PC, #-0xff0]
        LDR     PC, FIQ_Addr

ResetAddr           DCD     ResetInit
UndefinedAddr       DCD     Undefined
SWI_Addr            DCD     SoftwareInterrupt
PrefetchAddr        DCD     PrefetchAbort
DataAbortAddr       DCD     DataAbort
Nouse               DCD     0
IRQ_Addr            DCD     0
FIQ_Addr            DCD     FIQ_Handler


"至于在保留的异常向量位置填数据0xb9205f80"是为了使向量表中所有的数据32位累加和为0."


不知道这里所指的"数据32位"指的是哪些数据?
1: re        LDR     PC, ResetAddr
        LDR     PC, UndefinedAddr
        LDR     PC, SWI_Addr
        LDR     PC, PrefetchAddr
        LDR     PC, DataAbortAddr
        DCD     0xb9205f80
        LDR     PC, [PC, #-0xff0]
        LDR     PC, FIQ_Addr
   这8个语句对应的机器码的累加和为0(每个语句的机器码都为32位)

2: 多谢指教! 3: 关于异常向量在保留的异常向量位置填数据0xb9205f80是为了使向量表中多有的数据32位累加和位0。这个向量在ARM文件中标识为保留,该位置被boot装载程序用作有效的用户程序关键字。当向量表中所有的数据累加和为0,且ISP外部硬件条件不满足时,boot装载程序将执行用户程序。 4: 为什么要其垒加和为0呢?为什么要其垒加和为0呢?

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]