📄 1.lst
字号:
250 3 if(count==1)
251 3 {
252 4 p2_5= 0;
253 4 buffer[1]=a;
254 4 P0=codeled[*p];
255 4
256 4 DelayX1ms(10);
257 4 p2_5= 1;
258 4 }
259 3
260 3 if(count==2)
261 3 {
262 4 p2_6=0;
263 4 buffer[2]=a;
264 4 P0=codeled[*p];
265 4
266 4 DelayX1ms(10);
267 4 p2_6=1;
268 4 }
269 3
270 3 }
271 2
272 2 }
273 1 }
274 //--------------------------------------------------------------------------//
275 uint yiwei(uint count)
276 {
277 1 uint b;
278 1 uchar *p;
279 1 uchar code codeled[11]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF};//共阳极0~9+"-"
280 1 b=count%3;
281 1 p=buffer+b;
282 1 le=1;
283 1 switch (b)
284 1 {
285 2 case 0: p2_4 = 0;
286 2 P0=codeled[*p];
287 2
288 2 DelayX1ms(20);
289 2 p2_4 = 1;
290 2 break;
291 2 case 1: p2_5= 0;
292 2 P0=codeled[*p];
293 2
294 2 DelayX1ms(20);
295 2 p2_5= 1;
296 2 break;
297 2 case 2: p2_6=0;
298 2 P0=codeled[*p];
299 2
300 2 DelayX1ms(20);
301 2 p2_6=1;
302 2 break;
303 2 }
C51 COMPILER V7.10 1 05/24/2006 17:19:53 PAGE 6
304 1
305 1 return b;
306 1 }
307 //----------------------------------------------------------//
308 void shuru(uchar aress)
309 {
310 1 uchar add=aress;
311 1 uchar i; //是否需要初赋值
312 1 uchar *q=buffer;
313 1 static uint j=500;
314 1 for(i=0;i<3;i++)
315 1 {
316 2 EEprom24c02Write(add,buffer[i]); //写入报警值
317 2 add+=1;
318 2 while(j)
319 2 {
320 3 display0(q);
321 3 j--;
322 3 }
323 2 }
324 1 }
325 //--------------------------------------------------------//
326 void baojinzhi() //3
327 {
328 1 uint m;
329 1 uint c=0;
330 1 oldbjz(); //显示报警值、
331 1 if(p3_4==1)
332 1 {
333 2 DelayX1ms(1);
334 2 if(p3_4==1)
335 2 {
336 3 m=yiwei(c);
337 3 c++;
338 3 }
339 2 }
340 1 if(p3_5==1)
341 1 {
342 2 DelayX1ms(1);
343 2 if(p3_5==1)
344 2 {
345 3 shuzi(m);
346 3 }
347 2 }
348 1
349 1 if(p3_3==1)
350 1 {
351 2 DelayX1ms(1);
352 2 if(p3_3==1)
353 2 {
354 3 shuru(0x10);
355 3 flag=0;
356 3 }
357 2 }
358 1 }
359 //----------------------------------------------//
360 void tiaoling(void) //1
361 {
362 1 float c;
363 1 uchar *q;
364 1 uint j=500;
365 1 if((p3_4==1)||(p3_5==1))
C51 COMPILER V7.10 1 05/24/2006 17:19:53 PAGE 7
366 1 {
367 2 DelayX1ms(1);
368 2 if((p3_4==1)||(p3_5==1))
369 2 {
370 3 c=(float)AcH/ArH; //把当前比值写入24c02
371 3 WriteK0(c);
372 3 le=1;
373 3 buffer[0]=0;
374 3 buffer[1]=0;
375 3 buffer[2]=0;
376 3 q=buffer;
377 3 while(j)
378 3 {
379 4 display0(q);
380 4 j--;
381 4 }
382 3 }
383 2 }
384 1
385 1 if(p3_3==1)
386 1 {
387 2 DelayX1ms(1);
388 2 if(p3_3==1)
389 2 {
390 3 flag=0;
391 3 }
392 2 }
393 1
394 1 }
395 //-----------------------------------------------------------------//
396 void tiaojing() //2
397 {
398 1 float k0; //u为比值,k0为更新值
399 1 uchar *q;
400 1 uint j=500;
401 1 if((p3_4==1)||(p3_5==1))
402 1 {
403 2 DelayX1ms(1);
404 2 if((p3_4==1)||(p3_5==1))
405 2 {
406 3 k0=(float)AcH/ArH*1.0811; //为 0.925的倒数,uc/(ur*k0)=0.925=k',k'为2%瓦斯时的k值
407 3 WriteK0(k0);
408 3 le=1;
409 3 buffer[0]=2;
410 3 buffer[1]=0;
411 3 buffer[2]=0; //开复用口
412 3 q=buffer;
413 3 le=1;
414 3 while(j)
415 3 {
416 4 display0(q);
417 4 j--;
418 4 }
419 3 }
420 2 }
421 1 if(p3_3==1)
422 1 {
423 2 DelayX1ms(1);
424 2 if(p3_3==1)
425 2 {
426 3 flag=0;
427 3 }
C51 COMPILER V7.10 1 05/24/2006 17:19:53 PAGE 8
428 2 }
429 1
430 1 }
431 //--------------------------------------------------------------------//
432 void duandian(void) //4
433 {
434 1 uchar *q;
435 1 uint n=0;
436 1 bit j1=0;
437 1 uint j=500;
438 1 if(p3_4==1)
439 1 {
440 2 DelayX1ms(1);
441 2 if(p3_4==1)
442 2 {
443 3 j1=1;
444 3 }
445 2 }
446 1 while(j1)
447 1 {
448 2 n++;
449 2 j1=0;
450 2 if(n>5)
451 2 n=1;
452 2 if(n==1)
453 2 {
454 3 buffer[0]=0;
455 3 buffer[1]=5;
456 3 buffer[2]=0;
457 3 }
458 2 else if(n==2)
459 2 {
460 3 buffer[0]=0;
461 3 buffer[1]=7;
462 3 buffer[2]=5;
463 3 }
464 2 else if(n==3)
465 2 {
466 3 buffer[0]=1;
467 3 buffer[1]=0;
468 3 buffer[2]=0;
469 3 }
470 2 else if(n==4)
471 2 {
472 3 buffer[0]=1;
473 3 buffer[1]=2;
474 3 buffer[2]=5;
475 3 }
476 2 else if(n==5)
477 2 {
478 3 buffer[0]=1;
479 3 buffer[1]=5;
480 3 buffer[2]=0;
481 3 }
482 2 q=buffer;
483 2 le=1;
484 2 while(j)
485 2 {
486 3 display0(q);
487 3 j--;
488 3 }
489 2 }
C51 COMPILER V7.10 1 05/24/2006 17:19:53 PAGE 9
490 1 if(p3_3==1)
491 1 {
492 2 DelayX1ms(1);
493 2 if(p3_3==1)
494 2 {
495 3 shuru(0x20);
496 3 flag=0;
497 3 }
498 2 }
499 1
500 1
501 1
502 1 }
503
504 //-------------------------------555555----------------------------------//
505 void zijian()
506 {
507 1 uchar *q;//指针指向显示存储区
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -