irq_timer.s

来自「详细介绍了arm7-at91r40008,的开发全过程」· S 代码 · 共 102 行

S
102
字号
;------------------------------------------------------------------------------
;-         ATMEL Microcontroller Software Support  -  ROUSSET  -
;------------------------------------------------------------------------------
; The software is delivered "AS IS" without warranty or condition of any
; kind, either express, implied or statutory. This includes without
; limitation any warranty or condition with respect to merchantability or
; fitness for any particular purpose, or against the infringements of
; intellectual property rights of others.
;------------------------------------------------------------------------------
;- File source          : irq_timer.s
;- Object               : Assembler timer Interrupt Handler.
;-
;- 1.0 14/Feb/03 JPP     : Creation
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
;- Area Definition
;------------------------------------------------------------------------------
	AREA      	itHandler, CODE, READONLY

	INCLUDE		../../../parts/r40008/r40008.inc

    INCLUDE   	irq_arm.mac


;------------------------------------------------------------------------------
;- Function             : timer0_asm_irq_handler
;- Treatments           : Timer 0 interrupt handler.
;- Called Functions     : timer0_c_irq_handler
;- Called Macros        : IRQ_ENTRY, IRQ_EXIT
;------------------------------------------------------------------------------
	EXPORT timer0_asm_irq_handler
	IMPORT timer0_c_irq_handler
	IMPORT TC0_DESC
	
timer0_asm_irq_handler

;- Manage Exception Entry
	IRQ_ENTRY

;- Call the timer Interrupt C handler
	ldr         r0, =TC0_DESC
    ldr         r1, =timer0_c_irq_handler
    mov         r14, pc
    bx          r1
;- Irq exit
;- Manage Exception Exit
    b			exit_irq

;------------------------------------------------------------------------------
;- Function             : timer1_asm_irq_handler
;- Treatments           : Timer 1 interrupt handler.
;- Called Functions     : timer1_c_irq_handler
;- Called Macros        : IRQ_ENTRY, IRQ_EXIT
;------------------------------------------------------------------------------
	EXPORT timer1_asm_irq_handler
    IMPORT timer1_c_irq_handler
    IMPORT TC1_DESC

timer1_asm_irq_handler

;- Manage Exception Entry
    IRQ_ENTRY

;- Call the timer Interrupt C handler
	ldr         r0, =TC1_DESC
    ldr         r1, =timer1_c_irq_handler
    mov         r14, pc
    bx          r1
;- Irq exit
;- Manage Exception Exit
    b			exit_irq
    
;------------------------------------------------------------------------------
;- Function             : timer2_asm_irq_handler
;- Treatments           : Timer 2 interrupt handler.
;- Called Functions     : timer2_c_irq_handler
;- Called Macros        : IRQ_ENTRY, IRQ_EXIT
;------------------------------------------------------------------------------
	EXPORT timer2_asm_irq_handler
	IMPORT timer2_c_irq_handler
	IMPORT TC2_DESC

timer2_asm_irq_handler

;- Manage Exception Entry
    IRQ_ENTRY

;- Call the timer Interrupt C handler
	ldr         r0, =TC2_DESC
    ldr         r1, =timer2_c_irq_handler
    mov         r14, pc
    bx          r1

;- Irq exit
exit_irq

;- Manage Exception Exit
	IRQ_EXIT
	
    END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?