📄 xszkzqv12.lst
字号:
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE XSZKZQV12
OBJECT MODULE PLACED IN xszkzqv12.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE xszkzqv12.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //(***************************
2 // Version V1.0
3 // 地砖控制器 2004-10-18 带播放列表
4 // 2004-09-23 mcu:w77e58 ,172800bps at RS485 11.0592MHz
5 #include <reg52.h>
6 //#include <w77c32.h>
7 #include <intrins.h>
8 #define uchar unsigned char
9 #define uint unsigned int
10 #define byte unsigned char
11 #define word unsigned
12 #define bool bit
13 #define true 1
14 #define false 0
15 //#define SPEED 20
16
17 //#define SPEEDCOLS 500 //七彩停留时间
18 //#define SPEEDBY 40 //百叶速度
19 #define ADD 1 /* 定时器T0方式控制字 */
20 #define WriteDeviceAddress 0xa0
21 #define ReadDviceAddress 0xa1
22
23 //*************************************
24 sfr CHPCON= 0xbf;
25 sfr CHPENR=0xf6;
26 sfr PMR= 0xC4;
27 sfr SBUF1=0xc1;
28 sfr SCON1=0xc0;
29 sbit SM01 = SCON1^7; /* alternative SM0_FE_1 */
30 sbit SM11 = SCON1^6; /* alternative SM1_1 */
31 sbit SM21 = SCON1^5; /* alternative SM2_1 */
32 sbit REN1 = SCON1^4; /* alternative REN_1 */
33 sbit TB81 = SCON1^3; /* alternative TB8_1 */
34 sbit RB81 = SCON1^2; /* alternative RB8_1 */
35 sbit TI1 = SCON1^1; /* alternative TI_1 */
36 sbit RI1 = SCON1^0; /* alternative RI_1 */
37 sbit ES1 = IE^6;
38
39 sbit led=P3^5;
40 sbit senden=P3^2;
41 sbit senden1=P3^3; //to dz 485
42 sbit SDA=P1^1;
43 sbit SCL=P1^0;
44 //**********************
45 uchar xdata dis_red[40];
46 uchar xdata dis_grn[40];
47 uchar xdata dis_blu[40];
48 uchar xdata send_buf[128];
49 uchar idata iic_buf[128];
50 uchar XX,X1,ssp;
51 uchar pointer,subchk; //接收指针 和校验
52 uchar timer;
53 uchar bdata flag;
54 sbit frameok=flag^0; //rece ok
55
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 2
56 uchar code r4d1cr[]=
57 {
58 0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,
59 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
60 0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,
61 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,
62 0x00,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,
63 0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,
64 0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
65 0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,
66 0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,
67 0x20,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,
68 0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,
69 0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
70 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,
71 0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
72 0x00,0x00,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x3F,
73 0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x3F,0x3F,
74 };
75 //================================
76 uchar code r4d1cg[]=
77 {
78 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,
79 0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,
80 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,
81 0x3F,0x3F,0x3F,0x3F,0x10,0x10,0x10,0x10,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,
82 0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,
83 0x20,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,
84 0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,
85 0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,
86 0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x10,0x10,0x10,0x10,0x3F,0x3F,0x3F,
87 0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
88 0x00,0x00,0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
89 0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,
90 0x3F,0x3F,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
91 0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x10,0x10,
92 0x10,0x10,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
93 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x00,0x00,
94 };
95 //====================================
96 uchar code r4d1cb[]=
97 {
98 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
99 0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,
100 0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x10,
101 0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x10,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,
102 0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x10,0x10,0x10,
103 0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
104 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,
105 0x20,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
106 0x20,0x10,0x10,0x10,0x10,0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x10,0x3F,0x3F,0x3F,
107 0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,
108 0x3F,0x3F,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
109 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,
110 0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,
111 0x20,0x20,0x20,0x20,0x20,0x20,0x10,0x10,0x10,0x10,0x20,0x20,0x20,0x20,0x10,0x10,
112 0x10,0x10,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,
113 0x20,0x20,0x20,0x3F,0x3F,0x3F,0x3F,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,0x00,
114 };
115 //===========================
116 uchar code x64cr[]=
117 {
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 3
118 0x0F,0x0F,0x0F,0x0E,0x09,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x0A,0x0F,
119 0x0F,0x0F,0x0F,0x0F,0x0F,0x0E,0x09,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,
120 0x0A,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0E,};
121 //------------------------------------------------
122 uchar code x64cg[]=
123 {
124 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x0C,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
125 0x0B,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x0C,0x0F,0x0F,0x0F,0x0F,0x0F,
126 0x0F,0x0F,0x0B,0x05,0x00,0x00,0x00,0x00,};
127 //---------------------------
128 uchar code x64cb[]=
129 {
130 0x00,0x05,0x0C,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0A,0x04,0x00,0x00,0x00,0x00,
131 0x00,0x00,0x00,0x05,0x0C,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0A,0x04,0x00,0x00,
132 0x00,0x00,0x00,0x00,0x00,0x05,0x0C,0x0F,};
133 //**************************
134 //七彩无过渡色
135 uchar code col7cr[]=
136 {
137 0x3F,0x3F,0x3F,0x3C,0x27,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x11,0x2A,0x3E,
138 0x3F,0x3F,0x3F,0x3F,0x3F,0x3C,0x27,0x0F,
139 0x3F,0x3F,0x3F,0x3C,0x27,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x11,0x2A,0x3E,
140 0x3F,0x3F,0x3F,0x3F,0x3F,0x3C,0x27,0x0F,
141
142 };
143
144 uchar code col7cg[]=
145 {
146 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x15,0x30,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,
147 0x2F,0x14,0x00,0x00,0x00,0x00,0x00,0x00,
148 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x15,0x30,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,
149 0x2F,0x14,0x00,0x00,0x00,0x00,0x00,0x00,
150
151 };
152
153 uchar code col7cb[]=
154 {
155 0x00,0x15,0x32,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3D,0x2A,0x12,0x00,0x00,0x00,0x00,
156 0x00,0x00,0x00,0x15,0x32,0x3F,0x3F,0x3F,
157 0x00,0x15,0x32,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3D,0x2A,0x12,0x00,0x00,0x00,0x00,
158 0x00,0x00,0x00,0x15,0x32,0x3F,0x3F,0x3F,
159 };
160 void clear(void);
161 void sendall(void);//发送全部
162 void televise(uchar add);//广播发送
163
164 void delay(uint j);
165 void delay1s(uint j);
166
167 void qczk(uchar speed);
168 void qcld(uchar speed);
169 void duun(uchar speed);
170 void lrmun(uchar speed);
171 void mlrun(uchar speed);
172 void mlrco(uchar speed);
173 void lrmco(uchar speed);
174 void colld(uchar speed);
175 void col7(uchar SPEEDCOL);
176 void mlrmov(uchar speed);
177 void lmovo(uchar speed);
178 void send_delay(void);
179 void ybyzk(uchar speed);
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 4
180 void send_del(uchar j);
181 void ybybm(uchar speed);
182 void zbyzk(uchar speed);
183 void zbybm(uchar speed);
184 //*******************************
185 void SomeNOP(void)
186 {
187 1 uchar i;
188 1 i=20;
189 1 while(i--);
190 1 }
191
192 /***************************************************************************/
193 void I2cDelay(unsigned int number) {
194 1 unsigned char temp;
195 1 for(;number!=0;number--) {
196 2 for(temp=112;temp!=0;temp--) {
197 3 }
198 2 }
199 1 }
200
201 /***************************************************************************/
202 void Start() {
203 1 SDA=1;
204 1 SCL=1;SomeNOP();
205 1 SDA=0;SomeNOP();
206 1 SCL=0;
207 1 }
208
209 /***************************************************************************/
210 void Stop() {
211 1 SCL=0;
212 1 SDA=0;SomeNOP();
213 1 SCL=1;SomeNOP();
214 1 SDA=1;
215 1 }
216
217 /***************************************************************************/
218 void Ack() {
219 1 SDA=0;
220 1 SCL=1;SomeNOP();
221 1 SCL=0;SomeNOP();
222 1 SDA=1;
223 1 }
224
225 /***************************************************************************/
226 void NoAck() {
227 1 SDA=1;
228 1 SCL=1;SomeNOP();
229 1 SCL=0;
230 1 }
231
232 /***************************************************************************/
233 bit TestAck() {
234 1 bit ErrorBit;
235 1 SDA=1;
236 1 SCL=1;
237 1 ErrorBit=SDA;SomeNOP();
238 1 SCL=0;
239 1 return(ErrorBit);
240 1 }
241
C51 COMPILER V7.06 XSZKZQV12 10/22/2004 14:07:12 PAGE 5
242 /***************************************************************************/
243 Write8Bit(unsigned char input)
244 {
245 1 unsigned char temp;
246 1 for(temp=8;temp!=0;temp--) {
247 2 SDA=(bit)(input&0x80);
248 2 SCL=1;SomeNOP();
249 2 SCL=0;
250 2 input=input<<1;
251 2 }
252 1 }
253 /***************************************************************************/
254 void Write24c02(unsigned char xdata *Wdata,unsigned char RomAddress,unsigned char number) {
255 1 Start();
256 1 Write8Bit(WriteDeviceAddress);
257 1 TestAck();
258 1 Write8Bit(RomAddress);
259 1 TestAck();
260 1 for(;number!=0;number--) {
261 2 Write8Bit(*Wdata);
262 2 TestAck();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -