📄 isr.lst
字号:
C51 COMPILER V7.07 ISR 07/13/2007 21:38:25 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE ISR
OBJECT MODULE PLACED IN D:\HEX\ISR.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ISR.C BROWSE DEBUG OBJECTEXTEND OBJECT(D:\HEX\ISR.obj)
stmt level source
1 #include "common.h"
2 #include "HAL.H"
3 #include "SL811.H"
4 #include "HPI.H"
5 #include "HPI32.H"
6
7 extern FLAGS bdata bFlags;
8 extern unsigned char xdata UARTBUF[UARTBUF_LENGTH];
9 extern Command_Def xdata Command;
10 //////////////////////////////////////////
11 void ISR_COMM(void) interrupt 4
12 {
13 1 unsigned char *pBuf=(unsigned char *)&Command; //Low Bit at Head
14 1 unsigned long idata cnt;
15 1 unsigned char temp;
16 1
17 1 DISABLE_INTERRUPTS;
18 1 MCU_LED3=0;
19 1 if(RI==0)
20 1 {
21 2 MCU_LED3=1;
22 2 goto ssioover;
23 2 }
24 1 while(!RI);
25 1 RI=0;
26 1 temp=SBUF;
27 1 if(temp!=0x2b){
28 2 HeaderEr: //数据头错误处理
29 2 RI=0;
30 2 for(cnt=0;cnt<0x1000;cnt++){
31 3 if(RI==1) goto HeaderEr;
32 3 } //等待对方发送完毕
33 2 SBUF=0X03;
34 2 while(TI==0);
35 2 TI=0;
36 2 for(cnt=0;cnt<3;cnt++){ //发送包头错误处理代码
37 3 SBUF=0x0;
38 3 while(TI==0);
39 3 TI=0;
40 3 }
41 2 goto ssioover;
42 2 }
43 1 while(!RI);
44 1 RI=0;
45 1 temp=SBUF;
46 1 if(temp!=0x10) goto HeaderEr;
47 1 for(cnt=0;cnt<37;cnt++){
48 2 while(!RI);
49 2 *(pBuf+cnt)=SBUF;
50 2 RI=0;
51 2 }
52 1 /////// data phase /////////////////////
53 1 if(Command.CLass==0x04||Command.CLass==0x05||Command.CLass==0x09) ///GreatFile/GreatDir/WriteFile
54 1 {
55 2 if(Command.len>MAX_WRITE_LENGTH)
C51 COMPILER V7.07 ISR 07/13/2007 21:38:25 PAGE 2
56 2 {
57 3 Command.CLass=0xff;
58 3 bFlags.bits.bUartInDone=1;
59 3 MCU_LED3=1;
60 3 goto ssioover;
61 3 }
62 2 for(cnt=0;cnt<Command.len;cnt++)
63 2 {
64 3 while(!RI);
65 3 UARTBUF[cnt]=SBUF;
66 3 RI=0;
67 3 }
68 2 }
69 1 //////////////////////////
70 1 bFlags.bits.bUartInDone=1;
71 1 RI=0;
72 1 MCU_LED3=1;
73 1 ssioover:
74 1 ENABLE_INTERRUPTS;
75 1 }
76
77 void ISR_INT0(void) interrupt 0
78 {
79 1 DISABLE_INTERRUPTS;
80 1 MCU_LED4=0;
81 1 SL811Write(IntStatus,INT_CLEAR);
82 1 MCU_LED4=1;
83 1 ENABLE_INTERRUPTS;
84 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 534 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 4
IDATA SIZE = ---- 4
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -