📄 main.lst
字号:
C51 COMPILER V7.00 MAIN 09/23/2005 09:30:03 PAGE 1
C51 COMPILER V7.00, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\out\main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c LARGE BROWSE DEBUG OBJECTEXTEND OBJECT(.\out\main.obj)
stmt level source
1 #define MAIN_FILE
2 #include "include.h"
3
4 //XXGFLAGS bdata bXXGFlags;
5 //extern unsigned char xdata DBUF[BUFFER_LENGTH];
6
7 void Init_Timer0(void)
8 {
9 1 TMOD &= 0xF0; /* clear Timer 0 */
10 1 TMOD |= 0x1;
11 1 TL0 = 0xf0; /* value set by user *//*定时器0时间,5ms*/
12 1 TH0 = 0xd8; /* value set by user */
13 1 ET0 = 1; /* IE.1*/
14 1 TR0 = 1; /* TCON.4 start timer */
15 1 // PT0 = 1;
16 1 }
17
18 void Init_SpecialInterrupts(void)
19 {
20 1 IT0 = 0;
21 1 EX0 = 1;
22 1 // PX0 = 0;
23 1 }
24
25 void Init_Port()
26 {
27 1 P0 = 0xFF;
28 1 P1 = 0xFF;
29 1 P2 = 0xFF;
30 1 P3 = 0xFF;
31 1 }
32
33 /*Serial Port */
34 /*Mode = 1 /8-bit UART
35 Serial Port Interrupt = Disabled */
36 /*Receive = Enabled */
37 /*Auto Addressing = Disabled */
38 void Init_COMM(void)
39 {
40 1 SCON = 0x50;
41 1 PCON = 0x80 | PCON;
42 1 // TMOD = 0x21;
43 1 // TCON = 0x69; /* TCON */
44 1 //TH1 = 0xfa; // 9600bps @ 11.0592MHz
45 1 //TR1 = 0;
46 1 T2CON=0x30;
47 1 RCAP2H=0xFF; // 57600 @ 24MHz: 24000000/(32*(65536-(RCAP2H,RCAP2L)))
48 1 RCAP2L=0xF3;
49 1 // TI=0;
50 1 // RI=0;
51 1 TR2=1;
52 1 IP=0x35;
53 1 ES = 1;
54 1 }
55
C51 COMPILER V7.00 MAIN 09/23/2005 09:30:03 PAGE 2
56 void disp_data(uint len,void *buf)
57 {
58 1 #ifdef ZLH_DEBUG
59 1 send_str(len,(uchar *)buf);
60 1 wait_send_end();
61 1 #endif
62 1 }
63
64
65 void main(void)
66 {
67 1 uchar temp,error;
68 1 // uchar buf[20],i;
69 1 uchar cmd,package,para[1100];
70 1 uint len;
71 1
72 1 // DISABLE_INTERRUPTS;
73 1 Init_Timer0();
74 1 Init_SpecialInterrupts();
75 1 Init_Port();
76 1 Init_COMM();
77 1
78 1 MCU_LED0=0; //==0 点亮 ==1 熄灭
79 1 MCU_LED1=1;
80 1
81 1 DelayMs(110);
82 1
83 1 #ifdef ZLH_DEBUG
84 1 // ENABLE_INTERRUPTS;
85 1 // while(1){
86 1 //
87 1 // error=rece_cmd(&cmd,&package,&len,para);
88 1 // disp_data(2,"A3");
89 1 // disp_data(1,&error);
90 1 // disp_data(1,&cmd);
91 1 // disp_data(1,&package);
92 1 // disp_data(2,&len);
93 1 // disp_data(len,para);
94 1 // while(!getkey());
95 1 // }
96 1 // while(1){
97 1 // i=rece(10,buf);
98 1 // if(!i) break;
99 1 // }
100 1 // send_str(10,buf);
101 1 // i=wait_send_end;
102 1 // DISABLE_INTERRUPTS;
103 1 #endif
104 1
105 1 bXXGFlags.bits.bUartInDone=0;
106 1
107 1 SL811_Init();
108 1
109 1 for(temp=0;temp<64;temp++)
110 1 DBUF[temp]=0;
111 1
112 1 ENABLE_INTERRUPTS;
113 1
114 1 while(TRUE)
115 1 {
116 2 if (bXXGFlags.bits.bTimer){
117 3 DISABLE_INTERRUPTS;
C51 COMPILER V7.00 MAIN 09/23/2005 09:30:03 PAGE 3
118 3 bXXGFlags.bits.bTimer = 0;
119 3 ENABLE_INTERRUPTS;
120 3
121 3 //if(bXXGFlags.bits.bConfiguration)
122 3 check_key_LED();
123 3 }
124 2 if(bXXGFlags.bits.SLAVE_FOUND){
125 3 DISABLE_INTERRUPTS;
126 3 bXXGFlags.bits.SLAVE_FOUND=FALSE;
127 3 //for(temp=0;temp<4;temp++)
128 3 DelayMs(250);
129 3 //DelayMs(50);
130 3 if(EnumUsbDev(1)) // enumerate USB device, assign USB address = #1
131 3 {
132 4 bXXGFlags.bits.SLAVE_ENUMERATED = TRUE; // Set slave USB device enumerated flag
133 4 MCU_LED1=0;
134 4 #ifdef ZLH_DEBUG
135 4 disp_data(2,"A3");
136 4 while(!getkey());
137 4 #endif
138 4 }
139 3
140 3 #ifdef ZLH_DEBUG
141 3 disp_data(2,"A2");
142 3 #endif
143 3
144 3 ENABLE_INTERRUPTS;
145 3 }
146 2 if(bXXGFlags.bits.SLAVE_REMOVED){
147 3 DISABLE_INTERRUPTS;
148 3 bXXGFlags.bits.SLAVE_REMOVED=FALSE;
149 3 bXXGFlags.bits.SLAVE_ENUMERATED = FALSE;
150 3 bXXGFlags.bits.SLAVE_IS_ATTACHED = FALSE;
151 3 //bXXGFlags.bits.bMassDevice=TRUE;
152 3 ENABLE_INTERRUPTS;
153 3 }
154 2 if(bXXGFlags.bits.bMassDevice){
155 3 DISABLE_INTERRUPTS;
156 3 bXXGFlags.bits.bMassDevice=FALSE;
157 3 if(EnumMassDev())
158 3 {
159 4 bXXGFlags.bits.SLAVE_IS_ATTACHED = TRUE;
160 4 MCU_LED1=1;
161 4 }
162 3 else
163 3 {
164 4 // MCU_LED1=1;
165 4 bXXGFlags.bits.SLAVE_IS_ATTACHED = FALSE;
166 4 }
167 3 ENABLE_INTERRUPTS;
168 3 }
169 2 error=rece_cmd(&cmd,&package,&len,para);
170 2 if((error)&&(error!=OVER_TIME)){
171 3 send_error(error);
172 3 }
173 2 if(!error){
174 3 #ifdef ZLH_DEBUG
175 3 disp_data(2,"A3");
176 3 disp_data(1,&cmd);
177 3 // disp_data(1,&package);
178 3 disp_data(2,&len);
179 3 // if(len)
C51 COMPILER V7.00 MAIN 09/23/2005 09:30:03 PAGE 4
180 3 // disp_data(len,para);
181 3 #endif
182 3 MCU_LED1=0;
183 3 UartHandler(cmd,package,len,para);
184 3 MCU_LED1=1;
185 3 }
186 2 // if(bXXGFlags.bits.bUartInDone){
187 2 // DISABLE_INTERRUPTS;
188 2 // bXXGFlags.bits.bUartInDone=0;
189 2 // UartHandler();
190 2 // ENABLE_INTERRUPTS;
191 2 // }
192 2
193 2 }
194 1
195 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 422 ----
CONSTANT SIZE = 6 ----
XDATA SIZE = ---- 1105
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
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 + -