isrhandler.s

来自「S3c44b0x下的ucgui」· S 代码 · 共 52 行

S
52
字号
   
    .EQU	BIT_TIMER0,	(0x1<<13)
    .EQU    BIT_EINT2,	(0x1<<23)
	.EQU	I_ISPC,		0x1e00024   
	.EQU    BIT_ZDMA0,	(0x1<<19)
  
  .EXTERN  tick_func

  .GLOBAL  irq_TickHandler

irq_TickHandler:

           stmdb sp!, {r0-r11, ip, lr} /* 保存r0-r11, ip, lr */

            @  ldr      r0, = tick_func
            
           	LDR	r0, =I_ISPC
           	
         	LDR	r1, =BIT_TIMER0
         	
	        STR	r1, [r0]

            mov    lr, pc

            bl      tick_func                   /* 调用中断处理程序 */
            
                      
            ldmia  sp!, {r0-r11, ip, lr} /* 恢复r0, ip, lr */
            
            subs    pc, r14, #4      /* 中断返回 */
           
     .GLOBAL  irq_TspHandler
     
     .EXTERN  TS
     
irq_TspHandler:
            stmdb sp!, {r0-r11, ip, lr} 
            
          	LDR	r0, =I_ISPC
           	
         	LDR	r1, =BIT_EINT2
         	
	        STR r1, [r0]   
	        
	        mov		lr, pc
	        
            bl		TS	                        
                                 
           ldmia  sp!, {r0-r11, ip, lr} 
            
           subs    pc, r14, #4    
.END         

⌨️ 快捷键说明

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