interrupt.lis

来自「AVR单片机 C语言程序设计经典实用」· LIS 代码 · 共 58 行

LIS
58
字号
                        .module interrupt.c
                        .area vector(rom, abs)
                        .org 12
 000C 0C940000          jmp _Timer2_Interrupt
                        .area text(rom, con, rel)
 0000                   .dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\多任务模拟系统设计\interrupt.c
 0000                   .dbfunc e Timer2_Interrupt _Timer2_Interrupt fV
                        .even
 0000           _Timer2_Interrupt::
 0000 0E940000          xcall push_lset
 0004                   .dbline -1
 0004                   .dbline 19
 0004           ; //***************************************************************
 0004           ; // File Name : Interrupt.c
 0004           ; // Author    : Steaven
 0004           ; // Created   : 2008-06-09
 0004           ; // Modified  : 
 0004           ; // Revision  : V0.0
 0004           ; //***************************************************************
 0004           ; 
 0004           ; #include "app.h"
 0004           ; 
 0004           ; //***************************************************************
 0004           ; // Function    : Timer2_Interrupt
 0004           ; // Input       : none
 0004           ; // Output      : none
 0004           ; // Description : Kernel Clock Interrupt Service Routine
 0004           ; //***************************************************************
 0004           ; #pragma interrupt_handler Timer2_Interrupt:4
 0004           ; void Timer2_Interrupt(void)
 0004           ; {
 0004                   .dbline 21
 0004           ;       //Clear Timer2 OCIF Flag
 0004           ;       TIFR  |= 0x80;
 0004 88B7              in R24,0x38
 0006 8068              ori R24,128
 0008 88BF              out 0x38,R24
 000A                   .dbline 22
 000A           ;     TCNT2 = 0x00;
 000A 2224              clr R2
 000C 24BC              out 0x24,R2
 000E                   .dbline 24
 000E           ;       //Key Detection
 000E           ;       Key_Detection();
 000E 0E940000          xcall _Key_Detection
 0012                   .dbline 26
 0012           ;       //Update Task Status
 0012           ;       OS_Task_Update();
 0012 0E940000          xcall _OS_Task_Update
 0016                   .dbline -2
 0016                   .dbline 27
 0016           ; }
 0016           L1:
 0016 0E940000          xcall pop_lset
 001A                   .dbline 0 ; func end
 001A 1895              reti
 001C                   .dbend

⌨️ 快捷键说明

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