【问题标题】:Where is the Reset_Addr, Undef_Addr etc. defined in ARM7?ARM7中定义的Reset_Addr、Undef_Addr等在哪里?
【发布时间】:2015-03-08 09:23:50
【问题描述】:

我正在 LPC2119 中试验 ARM7TDMI-s,并试图找出 startup.s 代码中的内容以了解向量中断系统。

我很好奇在哪里定义了像 Reset_Addr 和 SWI_Addr 这样的标签,因为它们不在同一个文件中,也不在标题中。

; Exception Vectors
;  Mapped to Address 0.
;  Absolute addressing mode must be used.
;  Dummy Handlers are implemented as infinite loops which can be modified.

Vectors         LDR     PC, Reset_Addr         
                LDR     PC, Undef_Addr
                LDR     PC, SWI_Addr
                LDR     PC, PAbt_Addr
                LDR     PC, DAbt_Addr
                NOP                            ; Reserved Vector 
;               LDR     PC, IRQ_Addr
                LDR     PC, [PC, #-0x0FF0]     ; Vector from VicVectAddr
                LDR     PC, FIQ_Addr

Reset_Addr      DCD     Reset_Handler
Undef_Addr      DCD     Undef_Handler
SWI_Addr        DCD     SWI_Handler
PAbt_Addr       DCD     PAbt_Handler
DAbt_Addr       DCD     DAbt_Handler
                DCD     0                      ; Reserved Address 
IRQ_Addr        DCD     IRQ_Handler
FIQ_Addr        DCD     FIQ_Handler

Undef_Handler   B       Undef_Handler
SWI_Handler     B       SWI_Handler
PAbt_Handler    B       PAbt_Handler
DAbt_Handler    B       DAbt_Handler
IRQ_Handler     B       IRQ_Handler
FIQ_Handler     B       FIQ_Handler

感谢任何帮助。

谢谢

【问题讨论】:

    标签: assembly arm lpc


    【解决方案1】:
    • 我认为您只是对 armasm 语法感到困惑。
    • Reset_Addr 是一个标签,只需将其名称放在第一列即可定义。即Reset_Addr 定义为:

    Reset_Addr DCD Reset_Handler

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-12
      • 2011-05-16
      • 1970-01-01
      • 2013-04-09
      • 2015-04-05
      相关资源
      最近更新 更多