📄 12864lcd显示.lst
字号:
470 1 i=ReadTemperature(); //读温度并送显
471 1 a=i/100;
472 1
473 1 LCD_set_xy(4,2);
474 1 LCD_Write_number(a);
475 1 b=i/10-a*10;
476 1 LCD_Write_number(b);
477 1 LCD_Write_number(12);//.
478 1 c=i-a*100-b*10;
479 1 LCD_Write_number(c);
480 1
481 1 if(hour==1) //小时闪烁标志位
482 1 {
483 2 if(flag==1) //光标闪烁
484 2 {
485 3 d=read_clock(0x85); //读小时
486 3 e=d;
487 3 d=d>>4; //十位数据
488 3 e=e&0x0f; //个位数据
489 3 LCD_set_xy(3,3); //指定LCD屏位置
C51 COMPILER V7.02b 12864LCD_允_ 04/06/2009 00:17:44 PAGE 9
490 3 LCD_Write_number(d); //写入十位数值
491 3 LCD_Write_number(e); //写入个位数值
492 3 }
493 2 else
494 2 {
495 3 LCD_set_xy(3,3);
496 3 LCD_Write_number(10); //显示空格
497 3 LCD_Write_number(10); //显示空格
498 3 }
499 2 }
500 1 else
501 1 {
502 2 d=read_clock(0x85); //读小时
503 2 e=d;
504 2 d=d>>4;
505 2 e=e&0x0f;
506 2 LCD_set_xy(3,3);
507 2 LCD_Write_number(d);
508 2 LCD_Write_number(e);
509 2 }
510 1
511 1 if(flag == 0)
512 1 LCD_Write_number(11); //显示:
513 1 else
514 1 LCD_Write_number(10); //显示空格
515 1
516 1 if(min==1) //分钟闪烁标志位
517 1 {
518 2 if(flag==1)
519 2 {
520 3 d=read_clock(0x83); //读分钟
521 3 e=d;
522 3 d=d>>4;
523 3 e=e&0x0f;
524 3 LCD_Write_number(d);
525 3 LCD_Write_number(e);
526 3 }
527 2 else
528 2 {
529 3 LCD_Write_number(10); //显示空格
530 3 LCD_Write_number(10);
531 3 }
532 2 }
533 1 else
534 1 {
535 2 d=read_clock(0x83); //读分钟
536 2 e=d;
537 2 d=d>>4;
538 2 e=e&0x0f;
539 2 LCD_Write_number(d);
540 2 LCD_Write_number(e);
541 2 }
542 1
543 1 if(flag == 0)
544 1 LCD_Write_number(11); //显示:
545 1 else
546 1 LCD_Write_number(10); //显示空格
547 1
548 1 if(sec==1) //秒闪烁标志位
549 1 {
550 2 if(flag==1)
551 2 {
C51 COMPILER V7.02b 12864LCD_允_ 04/06/2009 00:17:44 PAGE 10
552 3 d=read_clock(0x81); //读秒
553 3 e=d;
554 3 d=d>>4;
555 3 e=e&0x0f;
556 3 LCD_Write_number(d); //送显示
557 3 LCD_Write_number(e);
558 3 }
559 2 else
560 2 {
561 3 LCD_Write_number(10); //显示数字空格
562 3 LCD_Write_number(10);
563 3 }
564 2 }
565 1 else
566 1 {
567 2 d=read_clock(0x81); //读秒
568 2 e=d;
569 2 d=d>>4;
570 2 e=e&0x0f;
571 2 LCD_Write_number(d);
572 2 LCD_Write_number(e);
573 2 }
574 1
575 1 if(year==1) //年闪烁标志位
576 1 {
577 2 if(flag==1)
578 2 {
579 3 d=read_clock(0x8d); //读年
580 3 e=d;
581 3 d=d>>4;
582 3 e=e&0x0f;
583 3 LCD_set_xy(2,2);
584 3 LCD_Write_number(d);
585 3 LCD_Write_number(e);
586 3 }
587 2 else
588 2 {
589 3 LCD_set_xy(2,2);
590 3 LCD_Write_number(10); //显示空格
591 3 LCD_Write_number(10);
592 3 }
593 2 }
594 1 else
595 1 {
596 2 d=read_clock(0x8d); //读年
597 2 e=d;
598 2 d=d>>4;
599 2 e=e&0x0f;
600 2 LCD_set_xy(2,2);
601 2 LCD_Write_number(d);
602 2 LCD_Write_number(e);
603 2 }
604 1
605 1 if(mon==1) //月闪烁标志位
606 1 {
607 2 if(flag==1)
608 2 {
609 3 d=read_clock(0x89); //读月
610 3 e=d;
611 3 d=d>>4;
612 3 e=e&0x0f;
613 3 LCD_set_xy(2,4);
C51 COMPILER V7.02b 12864LCD_允_ 04/06/2009 00:17:44 PAGE 11
614 3 LCD_Write_number(d);
615 3 LCD_Write_number(e);
616 3
617 3 }
618 2 else
619 2 {
620 3 LCD_set_xy(2,4);
621 3 LCD_Write_number(10); //显示空格
622 3 LCD_Write_number(10);
623 3 }
624 2 }
625 1 else
626 1 {
627 2 d=read_clock(0x89); //读月
628 2 e=d;
629 2 d=d>>4;
630 2 e=e&0x0f;
631 2 LCD_set_xy(2,4);
632 2 LCD_Write_number(d);
633 2 LCD_Write_number(e);
634 2 }
635 1
636 1 if(day==1) //日闪烁标志位
637 1 {
638 2 if(flag==1)
639 2 {
640 3 d=read_clock(0x87); //读日
641 3 e=d;
642 3 d=d>>4;
643 3 e=e&0x0f;
644 3 LCD_set_xy(2,6);
645 3 LCD_Write_number(d);
646 3 LCD_Write_number(e);
647 3 }
648 2 else
649 2 {
650 3 LCD_set_xy(2,6);
651 3 LCD_Write_number(10); //显示空格
652 3 LCD_Write_number(10);
653 3 }
654 2 }
655 1 else
656 1 {
657 2 d=read_clock(0x87); //读日
658 2 e=d;
659 2 d=d>>4;
660 2 e=e&0x0f;
661 2 LCD_set_xy(2,6);
662 2 LCD_Write_number(d);
663 2 LCD_Write_number(e);
664 2 }
665 1
666 1 if(weekk==1) //星期闪烁标志位
667 1 {
668 2 if(flag==1)
669 2 {
670 3 d=read_clock(0x8b); //读星期
671 3 LCD_Write_week(d);
672 3 }
673 2 else
674 2 {
675 3 LCD_Write_week(8); //显示空格
C51 COMPILER V7.02b 12864LCD_允_ 04/06/2009 00:17:44 PAGE 12
676 3 }
677 2 }
678 1 else
679 1 {
680 2 d=read_clock(0x8b); //读星期
681 2 LCD_Write_week(d);
682 2 }
683 1 }
684
685
686 void Disp2(void) //闹钟界面光标显示
687 {
688 1 if(Kgb==1) //开关闪烁标志位
689 1 {
690 2 if(flag==1)
691 2 {
692 3 if(Bell_Swh == 0)//0为关
693 3 {
694 4 LCD_Write_string(1,6,guan);//显示关
695 4 }
696 3 else
697 3 {
698 4 LCD_Write_string(1,6,kai);//显示开
699 4 }
700 3 }
701 2 else
702 2 {
703 3 LCD_Write_string(1,6,space_c); //显示空格
704 3 }
705 2 }
706 1 else
707 1 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -