📄 cs21-2.lst
字号:
168 3 case 4:P0=SEG7[hour%10];P2=ACT[time_cnt];break;
169 3 case 5:P0=SEG7[hour/10];P2=ACT[time_cnt];break;
170 3 default:break;
171 3 }
172 2 }
173 1 //---------------------------------------
174 1 if(status==1)
175 1 {
176 2 switch(time_cnt)
177 2 {
178 3 case 0:P0=SEG7[status];P2=ACT[time_cnt];break;
179 3 case 1:if(set1_flag)P0=0x01;else P0=0x00;P2=ACT[time_cnt];break;
C51 COMPILER V7.06 CS21_2 02/19/2007 16:38:16 PAGE 4
180 3 case 2:P0=SEG7[set1_dat[0]%10];P2=ACT[time_cnt];break;
181 3 case 3:P0=SEG7[set1_dat[0]/10];P2=ACT[time_cnt];break;
182 3 case 4:P0=SEG7[set1_dat[1]%10];P2=ACT[time_cnt];break;
183 3 case 5:P0=SEG7[set1_dat[1]/10];P2=ACT[time_cnt];break;
184 3 default:if(bit_flag){P0=SEG7[set1_dat[0]%10];P2=ACT[2];}
185 3 else {P0=SEG7[set1_dat[0]/10];P2=ACT[3];}break;
186 3 }
187 2 }
188 1 //-----------------------------------------
189 1 if(status==2)
190 1 {
191 2 switch(time_cnt)
192 2 {
193 3 case 0:P0=SEG7[status];P2=ACT[time_cnt];break;
194 3 case 1:if(set1_flag)P0=0x01;else P0=0x00;P2=ACT[time_cnt];break;
195 3 case 2:P0=SEG7[set1_dat[0]%10];P2=ACT[time_cnt];break;
196 3 case 3:P0=SEG7[set1_dat[0]/10];P2=ACT[time_cnt];break;
197 3 case 4:P0=SEG7[set1_dat[1]%10];P2=ACT[time_cnt];break;
198 3 case 5:P0=SEG7[set1_dat[1]/10];P2=ACT[time_cnt];break;
199 3 default:if(bit_flag){P0=SEG7[set1_dat[1]%10];P2=ACT[4];}
200 3 else {P0=SEG7[set1_dat[1]/10];P2=ACT[5];}break;
201 3 }
202 2 }
203 1 //------------------------------------------
204 1 if(status==3)
205 1 {
206 2 switch(time_cnt)
207 2 {
208 3 case 0:P0=SEG7[status];P2=ACT[time_cnt];break;
209 3 case 1:if(set2_flag)P0=0x01;else P0=0x00;P2=ACT[time_cnt];break;
210 3 case 2:P0=SEG7[set2_dat[0]%10];P2=ACT[time_cnt];break;
211 3 case 3:P0=SEG7[set2_dat[0]/10];P2=ACT[time_cnt];break;
212 3 case 4:P0=SEG7[set2_dat[1]%10];P2=ACT[time_cnt];break;
213 3 case 5:P0=SEG7[set2_dat[0]/10];P2=ACT[time_cnt];break;
214 3 default:if(bit_flag){P0=SEG7[set2_dat[0]%10];P2=ACT[2];}
215 3 else {P0=SEG7[set2_dat[0]/10];P2=ACT[3];}break;
216 3 }
217 2 }
218 1 //--------------------------------------------
219 1 if(status==4)
220 1 {
221 2 switch(time_cnt)
222 2 {
223 3 case 0:P0=SEG7[status];P2=ACT[time_cnt];break;
224 3 case 1:if(set2_flag)P0=0x01;else P0=0x00;P2=ACT[time_cnt];break;
225 3 case 2:P0=SEG7[set2_dat[0]%10];P2=ACT[time_cnt];break;
226 3 case 3:P0=SEG7[set2_dat[0]/10];P2=ACT[time_cnt];break;
227 3 case 4:P0=SEG7[set2_dat[1]%10];P2=ACT[time_cnt];break;
228 3 case 5:P0=SEG7[set2_dat[1]/10];P2=ACT[time_cnt];break;
229 3 default:if(bit_flag){P0=SEG7[set2_dat[1]%10];P2=ACT[4];}
230 3 else {P0=SEG7[set2_dat[1]/10];P2=ACT[5];}break;
231 3 }
232 2 }
233 1 }
234 /******************************************************/
235 void delay(uint k)
236 {
237 1 uint data i,j;
238 1 for(i=0;i<k;i++){
239 2 for(j=0;j<121;j++)
240 2 {;}}
241 1 }
C51 COMPILER V7.06 CS21_2 02/19/2007 16:38:16 PAGE 5
242 /*****************************************/
243 void start()//启动读写时序
244 {
245 1 SDA=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
246 1 SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
247 1 SDA=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
248 1 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
249 1 }
250 //*****************************************
251 void stop()//停止操作
252 {
253 1 SDA=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
254 1 SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
255 1 SDA=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
256 1 }
257 //***********************
258 void ack()//应答
259 {
260 1 SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
261 1 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
262 1 }
263 //***********************
264 void shift8(char a)
265 {
266 1 data uchar i;
267 1 com_data=a;
268 1 for(i=0;i<8;i++)
269 1 {
270 2 SDA=mos_bit;
271 2 SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
272 2 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
273 2 com_data=com_data*2;
274 2 }
275 1 }
276 //******************
277 uchar rd_24c01(char a)
278 {
279 1 data uchar i,command;
280 1 SDA=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
281 1 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
282 1 start();
283 1 command=160;
284 1 shift8(command);
285 1 ack();
286 1 shift8(a);
287 1 ack();
288 1 start();
289 1 command=161;
290 1 shift8(command);
291 1 ack();
292 1 SDA=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
293 1 for(i=0;i<8;i++)
294 1 {
295 2 com_data=com_data*2;
296 2 SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
297 2 low_bit=SDA;
298 2 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
299 2 }
300 1 stop();
301 1 return(com_data);
302 1 }
303 //*****************
C51 COMPILER V7.06 CS21_2 02/19/2007 16:38:16 PAGE 6
304 void wr_24c01(char a,char b)
305 {
306 1 data uchar command;
307 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
308 1 SDA=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
309 1 SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
310 1 start();
311 1 command=160;
312 1 shift8(command);
313 1 ack();
314 1 shift8(a);
315 1 ack();
316 1 shift8(b);
317 1 ack();
318 1 stop();
319 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
320 1 }
321 //***************
322 void delay_iic(int n)
323 {
324 1 int i;
325 1 for(i=1;i<n;i++){}
326 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1554 ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 11 2
IDATA SIZE = ---- ----
BIT SIZE = 3 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -