📄 text1.lst
字号:
215 1 }
216
217 void timetiaozh(void)
218 {
219 1 TR1=0;
220 1
221 1 if(!K2) //k3按键处理
222 1 {
223 2 f1++; //值加1
224 2 while(!K2); //等待按键松开
225 2 for(m=0;m<250;m++); //松开按键去抖
226 2 }
227 1 f2=f1*10;
228 1 f3=f2/10;
229 1 f4=f2%10;
230 1 xiansishu();
231 1 }
232
233 void scan_key()
234 {TR1=0;
235 1 if(!K1) //k3按键处理
236 1 {
237 2 set++; //值加1
238 2 if(set>=5)set=0;
239 2 while(!K1); //等待按键松开
240 2 for(m=0;m<250;m++); //松开按键去抖
241 2 }
C51 COMPILER V7.06 TEXT1 09/06/2007 19:50:59 PAGE 5
242 1 }
243
244 void gais()
245 {TR1=0;
246 1
247 1 if(!K2) //k3按键处理
248 1 {
249 2 nn++; //值加1
250 2 while(!K2); //等待按键松开
251 2 for(m=0;m<250;m++); //松开按键去抖
252 2 }
253 1
254 1 mm=nn/10;
255 1 qq=nn%10;
256 1 xiangais();
257 1 }
258
259
260 void time_adj()
261 {
262 1 TR0=0;
263 1 TR1=0;
264 1 time2=0;
265 1 time1=0;
266 1 A_input1 = 0;
267 1 A_input2 = 0;
268 1 A_enable = 0;
269 1 if(!K2) //k1按键处理
270 1 {
271 2 shu1++; //值减1
272 2 if(shu1>30)shu1=0;
273 2 while(!K2); //等待按键松开
274 2 for(m=0;m<250;m++); //松开按键去抖
275 2 }
276 1 if(!K3) //k3按键处理
277 1 {
278 2 shu2++; //值减1
279 2 if(shu2>9)shu1=0;
280 2 while(!K3); //等待按键松开
281 2 for(m=0;m<250;m++); //松开按键去抖
282 2 }
283 1 if(!K4) //k3按键处理
284 1 {
285 2 shu1--; //值减1
286 2 if(shu2<0)shu1=30;
287 2 while(!K4); //等待按键松开
288 2 for(m=0;m<250;m++); //松开按键去抖
289 2 }
290 1 wz=shu1*10+shu2;
291 1 c4=wz%10;
292 1 c5=(wz/10)%10;
293 1 c6=(wz/100)%10;
294 1 xiansi1();
295 1 led=0;
296 1 }
297 void timer0() interrupt 1 using 2 //定义定时器0
298 {
299 1 // TF0=0;
300 1 TH0=0x3c;
301 1 TL0=0xb0;
302 1 s++;
303 1 }
C51 COMPILER V7.06 TEXT1 09/06/2007 19:50:59 PAGE 6
304
305 void timer1() interrupt 3 using 3 //定义定时器1
306 {TH1=0xb1;
307 1 TL1=0xdf;
308 1 t1++;}
309
310
311 void time()
312 {
313 1 TR0=1;
314 1 TR1=1;
315 1 if(s<9)
316 1 { A_input1 = 1;
317 2 A_input2 = 0;
318 2 A_enable = 1;}
319 1 if(s>=9)
320 1 {A_input1 = 0;
321 2 A_input2 = 0;
322 2 A_enable = 0;
323 2 }
324 1 if(s==24) s=0;
325 1 adc=TLC549ADC();
326 1 w1=(adc*500)/255;
327 1 ph1++;
328 1 if(ph1>2)
329 1 {
330 2 w=w1;
331 2 ph1=0;
332 2 }
333 1
334 1
335 1
336 1 if(t1>60){time1++;//时间
337 2 time7++;
338 2 t1=0; }
339 1 if(time1>59)
340 1 {time2++;
341 2 time1=0;}
342 1
343 1
344 1 time3=time2/10;
345 1 time4=time2%10;
346 1 time5=time1/10;
347 1 time6=time1%10;
348 1 xiansishij(); //显示时间
349 1
350 1 guiji();
351 1
352 1 if((wz-w)<10)//||((wz-w)>-10)
353 1 {TR0=0;
354 2 s=10;
355 2 A_input1 = 0;
356 2 A_input2 = 0;
357 2 A_enable = 0;
358 2
359 2 }
360 1 if((w-wz)>10)
361 1 {A_input1 = 0;
362 2 A_input2 = 1;
363 2 A_enable = 1;
364 2 delay(8);
365 2 A_input1 = 0;
C51 COMPILER V7.06 TEXT1 09/06/2007 19:50:59 PAGE 7
366 2 A_input2 = 0;
367 2 A_enable = 0;
368 2 }
369 1 if(time7==f2)
370 1 {led=1;}
371 1 if(time7==(f2+8))
372 1 { TR0=1;
373 2 s=3;
374 2 }
375 1 if((left==1)&&(righ==1)&&(midrigh==1)&&(midleft==1))
376 1 { A_input1 = 0;
377 2 A_input2 = 1;
378 2 A_enable = 1;
379 2 delay(500);
380 2 while(1);
381 2 A_input1 = 0;
382 2 A_input2 = 0;
383 2 A_enable = 0;
384 2 }
385 1 }
386
387
388 void main()
389 {
390 1
391 1 TMOD=0X11;
392 1 //IT1=0; //电平触发
393 1 //EX1=1;
394 1 //PT1=1;
395 1 TH0=0x3c;
396 1 TL0=0xb0;
397 1 TH1=0xb1;
398 1 TL1=0xdf;
399 1 ET1=1;
400 1 ET0=1;
401 1 EA=1;
402 1 TR0=1;
403 1 led=0;
404 1 while(1)
405 1 {
406 2 scan_key();
407 2
408 2 switch(set) /*根据set键值散转*/
409 2 {
410 3 case 0:time();break; /*转动程序*/
411 3 case 1:dianya();break; //电压调整
412 3 case 2:time_adj();break; /*转动调整*/
413 3 case 3:timetiaozh();break;
414 3 case 4:gais();break;
415 3 default:break; /*其它退出*/
416 3 }
417 2 }
418 1 }
419
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1737 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 108 ----
C51 COMPILER V7.06 TEXT1 09/06/2007 19:50:59 PAGE 8
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 + -