📄 aasd.lst
字号:
C51 COMPILER V6.14 AASD 11/02/2002 09:19:29 PAGE 1
C51 COMPILER V6.14, COMPILATION OF MODULE AASD
OBJECT MODULE PLACED IN .\aasd.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE .\aasd.c DEBUG OBJECTEXTEND
stmt level source
1 #include<reg51.h>
2 #include<intrins.h>
3 //#include<absacc.h>
4 #define byte unsigned char
5
6 bit as();
7 bit aj();
8 void datey();
9 void datey1();
10 sbit b1=P3^5;
11
12 sbit b2=P3^4;
13 sbit l1=P1^4;
14 sbit l2=P1^3;
15 sbit l3=P1^2;
16 sbit s1=P1^1;
17 sbit s2=P1^5;
18 unsigned char ec=250;
19 unsigned char ed=1;
20 unsigned char ee=1;
21 unsigned char ef=0x09;
22 #define xdart 0x0000
23 unsigned char xdata * dda ;
24 unsigned char xdata * ddb ;
25 unsigned char dgh;
26
27 extern int i2c_read(byte address);
28 extern bit i2c_write(byte address,int fb);
29 void main()
30 {
31 1 l1=0;
32 1 l2=0;
33 1 l3=0;
34 1 datey();
35 1 P2=ec;
36 1 l1=1;l2=1;datey();
37 1 l1=0;l2=0;
38 1 P2=ef;
39 1 l3=1;datey();l3=0;
40 1 dda=xdart;
41 1 ddb=0xffff;
42 1 i2c_write(0x04,800);
43 1 while(1)
44 1 {
45 2 if(as())
46 2 {
47 3 ec=ec+1;
48 3 if(ec==0xff)
49 3 ec=20;
50 3 P2=ec;
51 3 l2=1;
52 3 l1=1;
53 3
54 3 l1=0;
55 3 l2=0;
C51 COMPILER V6.14 AASD 11/02/2002 09:19:29 PAGE 2
56 3 ed=ed+1;
57 3 if(ed>=8)
58 3 ed=0;
59 3 ed=ed&0x07;
60 3 ee=ee+1;
61 3 if(ee>=8)
62 3 ee=0;
63 3 ee=ee&0x07;
64 3 ef=((ee<<5)&0xe0)|ed;
65 3
66 3 P2=ef;
67 3 l3=1;_nop_();l3=0;
68 3 }
69 2 if(aj())
70 2 {
71 3 ec=ec-1;
72 3 if(ec<=20)
73 3 ec=0xff;
74 3 P2=ec;
75 3 l1=1;
76 3 l2=1;
77 3
78 3 l1=0;
79 3 l2=0;
80 3 ed=ed-1;
81 3
82 3 if(ed==0xff)
83 3 ed=0x07;
84 3 ed=ed&0x07;
85 3 ee=ee-1;
86 3 if(ee==0xff)
87 3 ee=0x07;
88 3 ee=ee&0x07;
89 3 ef=((ee<<5)&0xe0)|ed;
90 3 P2=ef;
91 3 l3=1;_nop_();l3=0;
92 3 }
93 2 if(ec<=19)
94 2 {
95 3 ec=0xff;
96 3 P2=ec;
97 3 l1=1;
98 3 l2=1;
99 3
100 3 l1=0;
101 3 l2=0;
102 3 }
103 2 *dda=80;
104 2 dda++;
105 2 if(dda==ddb)
106 2 {
107 3 dda=xdart;
108 3 for(;dda<ddb;dda++)
109 3 {
110 4 dgh=*dda;
111 4 if(dgh==80)
112 4 s1=!s1;
113 4 else s2=!s2;
114 4 }
115 3 dda=xdart;
116 3 }
117 2 if(i2c_read(0x04)==800)
C51 COMPILER V6.14 AASD 11/02/2002 09:19:29 PAGE 3
118 2 {
119 3 b1=0;
120 3 _nop_();
121 3 b1=1;
122 3 }
123 2 }
124 1 }
125 bit as()
126 {
127 1 if(!b1)
128 1 {
129 2 datey1();
130 2 if(!b1)
131 2 {
132 3 datey1();
133 3 while(!b1);
134 3 datey();
135 3 if(b1);
136 3 return(1);
137 3 }
138 2 }
139 1 return(0);
140 1 }
141
142 bit aj()
143 {
144 1 if(!b2)
145 1 {
146 2 datey1();
147 2 if(!b2)
148 2 {
149 3 datey1();
150 3 while(!b2);
151 3 datey();
152 3 if(b2);
153 3 return(1);
154 3 }
155 2 }
156 1 return(0);
157 1 }
158
159 void datey()
160 {
161 1 int i;
162 1 for(i=0;i<=50;i++)
163 1 _nop_();
164 1 }
165
166
167
168 void datey1()
169 {
170 1 int i;
171 1 for(i=0;i<=350;i++)
172 1 _nop_();
173 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 394 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
C51 COMPILER V6.14 AASD 11/02/2002 09:19:29 PAGE 4
PDATA SIZE = ---- ----
DATA SIZE = 9 ----
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 + -