📄 wt-paris.lst
字号:
C51 COMPILER V7.10 WT_PARIS 07/17/2006 16:17:47 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE WT_PARIS
OBJECT MODULE PLACED IN wt-Paris.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE wt-Paris.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <AT89X52.h>
2 #include <wt-paris.h>
3 void main(void)
4 {
5 1 // bit oldLAST=0;
6 1 // bit oldNEXT=0;
7 1 // unsigned char b;
8 1 unsigned char n,d,dd;
9 1 // bit st=0;
10 1 ln=0;
11 1 INPORT=P3;
12 1 Initial();
13 1 Initial8255();
14 1 Delay10ms(1);
15 1 LightLed=0;
16 1 TwingleLed=0;
17 1 /* for(n=0;n<20;n++)
18 1 {
19 1 PBYTE[CS3]=0xff;
20 1 Delay10ms(50);
21 1 PBYTE[CS3]=0;
22 1 Delay10ms(50);
23 1 }*/
24 1 LightLed=0;
25 1 while(1)
26 1 {
27 2
28 2 PIO1=PIO2=PIO3=PIO4=PIO5=PIO6=0;
29 2 Initial8255();
30 2 InitialH8255A();
31 2 if(ng)
32 2 {
33 3 LightLed=0x40;TwingleLed=0;
34 3 PBYTE[CS3+1]=0x8;Delay10ms(5);PBYTE[CS3+1]=0;Delay10ms(5);
35 3 PBYTE[CS3+1]=0x8;Delay10ms(5);PBYTE[CS3+1]=0;Delay10ms(5);
36 3 PBYTE[CS3+1]=0x8;Delay10ms(5);PBYTE[CS3+1]=0;Delay10ms(5);
37 3 }
38 2 if(ok)
39 2 {
40 3 LightLed=0x80;TwingleLed=0;
41 3 PBYTE[CS3+1]=0x8;Delay10ms(50);PBYTE[CS3+1]=0;
42 3 }
43 2 ln=0;
44 2 PIO2=~0x20;
45 2 PIO6=~0x10;
46 2 PBYTE[CS1+1]=PIO2;
47 2 PBYTE[CS2+2]=PIO6;
48 2 if(ng||ok)
49 2 {
50 3 ng=ok=0;
51 3 for(n=0;n<20;n++)
52 3 {
53 4 if(!(PBYTE[CS4+1]&(~PIO2))) n=0;
54 4 if(!(PBYTE[CS5+2]&(~PIO6))) n=0;
55 4 if(ng) break;
C51 COMPILER V7.10 WT_PARIS 07/17/2006 16:17:47 PAGE 2
56 4 if(!CN3) break;
57 4 }
58 3 }
59 2 else
60 2 {
61 3 LightLed=0;
62 3 TwingleLed=0xff;
63 3 Delay10ms(300);
64 3 TwingleLed=0xc0;
65 3 }
66 2 if(ng) continue;
67 2 ng=ok=0;LightLed=0;
68 2 for(n=0;n<20;n++)
69 2 {
70 3 if((dd=PBYTE[CS4+1])&(~PIO2)) n=0;
71 3 if((dd=PBYTE[CS5+2])&(~PIO6)) n=0;
72 3 if(ng) break;
73 3 }
74 2 if(ng) continue;
75 2 //Power switch test
76 2 PIO1=PIO2=PIO3=PIO4=PIO5=PIO6=0;
77 2 Initial8255();
78 2 Delay10ms(50);
79 2 LightLed=0;
80 2 TwingleLed=0x20;
81 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(20);
82 2 for(n=0;n<5;n++)
83 2 {
84 3 if(!(PBYTE[CS4+2]&0x40)) //0x40 power switch
85 3 {
86 4 ng=1;
87 4 break;
88 4 }
89 3 Delay10ms(1);
90 3 }
91 2 if(ng)
92 2 {
93 3 LightLed|=0x40;
94 3 continue;
95 3 }
96 2 for(n=0;n<5;n++)
97 2 {
98 3 if(PBYTE[CS4+2]&0x40) n=0;
99 3 if(ng) break;
100 3 Delay10ms(1);
101 3 }
102 2 while(!(PBYTE[CS4+2]&0x40)&&ng==0);
103 2 Delay10ms(10);
104 2
105 2 //Shortcut test
106 2 // PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(20);
107 2 PIO1=PIO2=PIO3=PIO4=PIO5=PIO6=0;
108 2 Initial8255();
109 2 LightLed&=0x0;TwingleLed=0x10;
110 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(20);
111 2 n=PBYTE[CS4];
112 2 n=PBYTE[CS4+1];
113 2 n=PBYTE[CS4+2];
114 2 n=PBYTE[CS5];
115 2 n=PBYTE[CS5+1];
116 2 n=PBYTE[CS5+2];
117 2 PIO1=0xd7;
C51 COMPILER V7.10 WT_PARIS 07/17/2006 16:17:47 PAGE 3
118 2 PIO2=0xdd;
119 2 PIO3=0xff;
120 2 PIO4=0xf7;
121 2 PIO5=0xb6;
122 2 PIO6=0xf; //?
123 2 PU2=0x3F;
124 2 PU1=0x3F;
125 2 while(1)
126 2 {
127 3 if(PIO1!=(dd=PBYTE[CS4])) {ng=1;break;}
128 3 if(PIO2!=PBYTE[CS4+1]) {ng=1;break;}
129 3 if(PIO3!=PBYTE[CS4+2]) {ng=1;break;}
130 3 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
131 3 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
132 3 if(PIO6!=(0x7f&PBYTE[CS5+2])) {ng=1;break;}
133 3 if(PU2!=(0x3f&P2)) {ng=1;break;}
134 3 if(PU1!=(0x3f&P1)) {ng=1;break;}
135 3 d=0x1;
136 3 for(n=0;n<8;n++)
137 3 {
138 4 PBYTE[CS1]=d;
139 4 Delay10ms(10);
140 4 if(((~d)&PIO1)!=(dd=PBYTE[CS4])) {ng=1;break;}
141 4 if(PIO2!=(dd=PBYTE[CS4+1])) {ng=1;break;}
142 4 if(PIO3!=PBYTE[CS4+2]) {ng=1;break;}
143 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
144 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
145 4 if(PIO6!=(0x7f&PBYTE[CS5+2])) {ng=1;break;}
146 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
147 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
148 4 d<<=1;
149 4 }
150 3 PBYTE[CS1]=0;
151 3 if(ng) break;
152 3 d=0x1;
153 3 for(n=0;n<8;n++)
154 3 {
155 4 PBYTE[CS1+1]=d;
156 4 Delay10ms(3);
157 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
158 4 if((~d&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
159 4 if(PIO3!=PBYTE[CS4+2]) {ng=1;break;}
160 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
161 4 if(d==1)
162 4 {
163 5 if((0x7f&PIO5)!=PBYTE[CS5+1]) {ng=1;break;}
164 5 }
165 4 else
166 4 {
167 5 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
168 5 }
169 4 if(PIO6!=(0x7f&PBYTE[CS5+2])) {ng=1;break;}
170 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
171 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
172 4 d<<=1;
173 4 }
174 3 PBYTE[CS1+1]=0;
175 3 if(ng) break;
176 3 d=0x1;
177 3 for(n=0;n<8;n++)
178 3 {
179 4 PBYTE[CS1+2]=d;
C51 COMPILER V7.10 WT_PARIS 07/17/2006 16:17:47 PAGE 4
180 4 Delay10ms(3);
181 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
182 4 if(PIO2!=PBYTE[CS4+1]) {ng=1;break;}
183 4 if((~d&PIO3)!=PBYTE[CS4+2]) {ng=1;break;}
184 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
185 4 if(PIO5!=(dd=PBYTE[CS5+1])) {ng=1;break;}
186 4 if(PIO6!=(0x7f&PBYTE[CS5+2])) {ng=1;break;}
187 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
188 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
189 4 d<<=1;
190 4 }
191 3 PBYTE[CS1+2]=0;
192 3 if(ng) break;
193 3 d=0x1;
194 3 for(n=0;n<8;n++,d<<=1)
195 3 {
196 4 if(d&(0x10|0x20|0x40)) continue;
197 4 PBYTE[CS2]=d;
198 4 Delay10ms(3);
199 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
200 4 if(PIO2!=PBYTE[CS4+1]) {ng=1;break;}
201 4 if(PIO3!=PBYTE[CS4+2]) {ng=1;break;}
202 4 if((~d&PIO4)!=(dd=PBYTE[CS5])) {ng=1;break;}
203 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
204 4 // if((d==4?PIO6&0xf7:PIO6)!=(dd=PBYTE[CS5+2])) {ng=1;break;}
205 4 if(PIO6!=(0x7f&PBYTE[CS5+2])) {ng=1;break;}
206 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
207 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
208 4 // d<<=1;
209 4 }
210 3 PBYTE[CS2]=0;
211 3 if(ng) break;
212 3 d=0x1;
213 3 for(n=0;n<8;n++)
214 3 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -