📄 isr.lst
字号:
C51 COMPILER V6.20c ISR 08/21/2003 22:51:03 PAGE 1
C51 COMPILER V6.20c, COMPILATION OF MODULE ISR
OBJECT MODULE PLACED IN ISR.OBJ
COMPILER INVOKED BY: E:\WIN98\HARDWARE\KEILC\C51\BIN\C51.EXE ISR.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "common.h"
2 #include "HAL.H"
3 #include "SL811.H"
4 #include "HPI.H"
5
6 extern XXGFLAGS bdata bXXGFlags;
7 //extern UART_CMD_BLOCK xdata inblock;
8 //extern unsigned char xdata UartInBuffer[2112];
9 extern UART_CMD_BLOCK xdata UartCmdBlock;
10 extern unsigned char xdata UARTBUF[UARTBUF_LENGTH];
11 //unsigned char nCount;
12 /////////////////////////////////////////
13 void ISRx_FN_USB(void);
14 void Reset_Timer0(void);
15 //////////////////////////////////////////
16 void ISR_COMM(void) interrupt 4
17 {
18 1 unsigned char *pBuf=(unsigned char *)&UartCmdBlock;
19 1 unsigned int cnt;
20 1 unsigned char uartState,i;
21 1 uartState=0;
22 1 if(RI==0)
23 1 return;
24 1 /////// CMD and PARA phase/////////////////
25 1 //for(cnt=0;cnt<2;cnt++)
26 1 {
27 2 while(!RI);
28 2 i=SBUF;
29 2 RI=0;
30 2 if(i==0xaa)
31 2 uartState=1;
32 2 else
33 2 {
34 3 bXXGFlags.bits.bCOM_ERR=1;
35 3 uartState=0;
36 3 return;
37 3 }
38 2 Reset_Timer0();
39 2 while(!RI && !TF0);
40 2 if(TF0)
41 2 {
42 3 bXXGFlags.bits.bCOM_ERR=1;
43 3 uartState=0;
44 3 return;
45 3 }
46 2 i=SBUF;
47 2 RI=0;
48 2 if((i==0xbb)&&(uartState==1))
49 2 uartState=2;
50 2 else
51 2 {
52 3 bXXGFlags.bits.bCOM_ERR=1;
53 3 uartState=0;
54 3 return;
55 3 }
C51 COMPILER V6.20c ISR 08/21/2003 22:51:03 PAGE 2
56 2
57 2 }
58 1
59 1 for(cnt=0;cnt<64;cnt++)
60 1 {
61 2 Reset_Timer0();
62 2 while(!RI && !TF0);
63 2 if(TF0)
64 2 {
65 3 bXXGFlags.bits.bCOM_ERR=1;
66 3 uartState=0;
67 3 return;
68 3 }
69 2 *(pBuf+cnt)=SBUF;
70 2 RI=0;
71 2 }
72 1 /////// data phase /////////////////////
73 1 if(UartCmdBlock.cmd==CMD_WRITE_FILE)
74 1 {
75 2 UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLength=SwapINT16(UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLengt
-h);
76 2 if(UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLength>MAX_WRITE_LENGTH)
77 2 {
78 3 bXXGFlags.bits.bCOM_ERR=1;
79 3 uartState=0;
80 3 return;
81 3 }
82 2 for(cnt=0;cnt<UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLength;cnt++)
83 2 {
84 3 Reset_Timer0();
85 3 while(!RI && !TF0);
86 3 if(TF0)
87 3 {
88 4 bXXGFlags.bits.bCOM_ERR=1;
89 4 uartState=0;
90 4 return;
91 4 }
92 3 UARTBUF[cnt]=SBUF;
93 3 RI=0;
94 3 }
95 2 UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLength=SwapINT16(UartCmdBlock.CmdBlock.Cmd_WriteFile.writeLengt
-h);
96 2
97 2 }
98 1
99 1
100 1 //////////////////////////
101 1 bXXGFlags.bits.bUartInDone=1;
102 1 RI=0;
103 1 }
104
105 void ISR_Timer0(void) interrupt 1
106 {
107 1 DISABLE_INTERRUPTS;
108 1 //lClockTicks ++;
109 1 bXXGFlags.bits.bTimer = 1;
110 1
111 1 //if(bZBoardFlags.bits.bLED == LED_FLASH)
112 1 // IO_LED ^= 1;
113 1 ENABLE_INTERRUPTS;
114 1 }
115
C51 COMPILER V6.20c ISR 08/21/2003 22:51:03 PAGE 3
116 void ISR_Timer1(void) interrupt 3
117 {
118 1 }
119
120 void ISR_Timer2(void) interrupt 5
121 {
122 1 }
123
124 void ISR_INT1(void) interrupt 2
125 {
126 1 }
127
128 void ISR_INT0(void) interrupt 0
129 {
130 1 //unsigned char intr;
131 1 DISABLE_INTERRUPTS;
132 1 //ISRx_FN_USB();
133 1 //intr=SL811Read(IntStatus);
134 1 SL811Write(IntStatus,INT_CLEAR);
135 1 ENABLE_INTERRUPTS;
136 1 }
137
138 void Reset_Timer0(void)
139 {
140 1 TR0=0;
141 1 TF0=0;
142 1 TL0 = 0x0; /* value set by user */
143 1 TH0 = 0x0; /* value set by user */
144 1 //ET0 = 1; /* IE.1*/
145 1 TR0 = 1; /* TCON.4 start timer */
146 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 434 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 7
IDATA SIZE = ---- ----
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 + -