📄 18b20lcd.lst
字号:
611 0667 3000 movlw 0
612 0668 1803 btfsc 3,0
613 0669 3001 movlw 1
614 066A 0771 addwf btemp+1,w
615 066B 00A8 movwf ?a_read+5
616 066C l55
617 ;18b20LCD.c: 246: return(value);
618 066C 0828 movf ?a_read+5,w
619 066D 00F1 movwf btemp+1
620 066E 0827 movf ?a_read+4,w
621 066F 00F0 movwf btemp
622 ;18b20LCD.c: 249: }
623 0670 0008 return
624 0671 _LCD_set_xy
625 ; _x assigned to ?a_LCD_set_xy+0
626 0000 _LCD_set_xy$x set ?a_LCD_set_xy
627 ; _address assigned to ?a_LCD_set_xy+1
628 0000 _LCD_set_xy$address set ?a_LCD_set_xy+1
629 ;_x stored from w
630 0671 0183 clrf 3 ;select bank 0
631 0672 00A7 movwf ?a_LCD_set_xy
632 ;18b20LCD.c: 83: unsigned char address;
633 0673 08A6 movf ?_LCD_set_xy
634 0674 1D03 btfss 3,2
635 0675 2E79 goto l20
636 0676 0827 movf ?a_LCD_set_xy,w
637 0677 3E80 addlw -128
638 0678 2E7B goto L1
639 ;18b20LCD.c: 85: else address = 0xc0 + x;
640 0679 l20
641 0679 0827 movf ?a_LCD_set_xy,w
642 067A 3EC0 addlw -64
643 067B L1
644 067B 00A8 movwf ?a_LCD_set_xy+1
645 ;18b20LCD.c: 86: LCD_write_command( address);
646 067C 2D4F ljmp _LCD_write_command
647 067D _LCD_write_string
648 ; _X assigned to ?a_LCD_write_string+0
649 0000 _LCD_write_string$X set ?a_LCD_write_string
650 ;_X stored from w
651 067D 0183 clrf 3 ;select bank 0
652 067E 00A5 movwf ?a_LCD_write_string
653 ;18b20LCD.c: 91: LCD_set_xy( X, Y );
654 067F 0823 movf ?_LCD_write_string,w
655 0680 00A6 movwf ?_LCD_set_xy
656 0681 0825 movf ?a_LCD_write_string,w
657 0682 2671 120A 118A fcall _LCD_set_xy
658 ;18b20LCD.c: 92: while (*s)
659 0685 2E8E goto l23
660 0686 l24
661 ;18b20LCD.c: 93: {
662 0686 0824 movf ?_LCD_write_string+1,w
663 0687 0084 movwf 4
664 0688 1383 bcf 3,7
665 0689 0800 movf 0,w
666 068A 255A 120A 118A fcall _LCD_write_data
667 ;18b20LCD.c: 95: s ++;
668 068D 0AA4 incf ?_LCD_write_string+1
669 068E l23
670 ;18b20LCD.c: 96: }
671 068E 0824 movf ?_LCD_write_string+1,w
672 068F 0084 movwf 4
673 0690 1383 bcf 3,7
674 0691 0880 movf 0
675 0692 1903 btfsc 3,2
676 0693 0008 return
677 0694 2E86 goto l24
678 0695 _LCD_write_char
679 ; _X assigned to ?a_LCD_write_char+0
680 0000 _LCD_write_char$X set ?a_LCD_write_char
681 ;_X stored from w
682 0695 0183 clrf 3 ;select bank 0
683 0696 00A3 movwf ?a_LCD_write_char
684 ;18b20LCD.c: 102: LCD_set_xy( X, Y );
685 0697 0823 movf ?_LCD_write_char,w
686 0698 00A6 movwf ?_LCD_set_xy
687 0699 0823 movf ?a_LCD_write_char,w
688 069A 2671 120A 118A fcall _LCD_set_xy
689 ;18b20LCD.c: 103: LCD_write_data( data);
690 069D 0824 movf ?_LCD_write_char+1,w
691 069E 2D5A ljmp _LCD_write_data
692 069F _DS18B20_HEX_to_LCD
693 ; _temp assigned to ?a_DS18B20_HEX_to_LCD+0
694 0000 _DS18B20_HEX_to_LCD$temp set ?a_DS18B20_HEX_to_
+ LCD
695 ; _temp2 assigned to ?a_DS18B20_HEX_to_LCD+1
696 0000 _DS18B20_HEX_to_LCD$temp2 set ?a_DS18B20_HEX_to
+ _LCD+1
697 ;18b20LCD.c: 253: char temp;
698 069F 0183 clrf 3 ;select bank 0
699 06A0 0824 movf ?_DS18B20_HEX_to_LCD+1,w
700 06A1 00F1 movwf btemp+1
701 06A2 0823 movf ?_DS18B20_HEX_to_LCD,w
702 06A3 00F0 movwf btemp
703 06A4 3007 movlw 7
704 06A5 05F1 andwf btemp+1
705 06A6 3004 movlw 4
706 06A7 00F2 movwf btemp+2
707 06A8 u195
708 06A8 1003 bcf 3,0
709 06A9 0CF1 rrf btemp+1
710 06AA 0CF0 rrf btemp
711 06AB 0BF2 decfsz btemp+2
712 06AC 2EA8 goto u195
713 06AD 0870 movf btemp,w
714 06AE 00A6 movwf ?a_DS18B20_HEX_to_LCD
715 ;18b20LCD.c: 257: if (x&0x800) symbol='-';
716 06AF 1DA4 btfss ?_DS18B20_HEX_to_LCD+1,3
717 06B0 2EB3 goto l57
718 06B1 302D movlw 45
719 06B2 00D1 movwf _symbol
720 06B3 l57
721 ;18b20LCD.c: 258: p[0]=symbol;
722 06B3 0825 movf ?_DS18B20_HEX_to_LCD+2,w
723 06B4 0084 movwf 4
724 06B5 1383 bcf 3,7
725 06B6 0851 movf _symbol,w
726 06B7 0080 movwf 0
727 ;18b20LCD.c: 259: p[1]=temp/100+'0';
728 06B8 0A25 incf ?_DS18B20_HEX_to_LCD+2,w
729 06B9 0084 movwf 4
730 06BA 3064 movlw 100
731 06BB 00F1 movwf btemp+1
732 06BC 0826 movf ?a_DS18B20_HEX_to_LCD,w
733 06BD 120A 118A 276F fcall lbdiv
734 06C0 3E30 addlw 48
735 06C1 0080 movwf 0
736 ;18b20LCD.c: 261: p[2]=temp%100/10+'0';
737 06C2 0825 movf ?_DS18B20_HEX_to_LCD+2,w
738 06C3 3E02 addlw 2
739 06C4 0084 movwf 4
740 06C5 1383 bcf 3,7
741 06C6 3064 movlw 100
742 06C7 00F1 movwf btemp+1
743 06C8 0826 movf ?a_DS18B20_HEX_to_LCD,w
744 06C9 120A 118A 276F fcall lbmod
745 06CC 0870 movf btemp,w
746 06CD 300A movlw 10
747 06CE 00F1 movwf btemp+1
748 06CF 0870 movf btemp,w
749 06D0 120A 118A 276F fcall lbdiv
750 06D3 3E30 addlw 48
751 06D4 0080 movwf 0
752 ;18b20LCD.c: 263: p[3]=temp%100%10+'0';
753 06D5 0825 movf ?_DS18B20_HEX_to_LCD+2,w
754 06D6 3E03 addlw 3
755 06D7 0084 movwf 4
756 06D8 1383 bcf 3,7
757 06D9 3064 movlw 100
758 06DA 00F1 movwf btemp+1
759 06DB 0826 movf ?a_DS18B20_HEX_to_LCD,w
760 06DC 120A 118A 276F fcall lbmod
761 06DF 0870 movf btemp,w
762 06E0 300A movlw 10
763 06E1 00F1 movwf btemp+1
764 06E2 0870 movf btemp,w
765 06E3 120A 118A 276F fcall lbmod
+ 120A 118A
766 06E8 0870 movf btemp,w
767 06E9 3E30 addlw 48
768 06EA 0080 movwf 0
769 ;18b20LCD.c: 264: if (p[1]=='0') {
770 06EB 0A25 incf ?_DS18B20_HEX_to_LCD+2,w
771 06EC 0084 movwf 4
772 06ED 1383 bcf 3,7
773 06EE 0800 movf 0,w
774 06EF 3A30 xorlw 48
775 06F0 1D03 btfss 3,2
776 06F1 2F03 goto l58
777 ;18b20LCD.c: 265: if (p[2]=='0') {p[2]=' ';}
778 06F2 0825 movf ?_DS18B20_HEX_to_LCD+2,w
779 06F3 3E02 addlw 2
780 06F4 0084 movwf 4
781 06F5 0800 movf 0,w
782 06F6 3A30 xorlw 48
783 06F7 1D03 btfss 3,2
784 06F8 2EFE goto l59
785 06F9 0825 movf ?_DS18B20_HEX_to_LCD+2,w
786 06FA 3E02 addlw 2
787 06FB 0084 movwf 4
788 06FC 3020 movlw 32
789 06FD 0080 movwf 0
790 06FE l59
791 ;18b20LCD.c: 266: p[1]=' ';
792 06FE 0A25 incf ?_DS18B20_HEX_to_LCD+2,w
793 06FF 0084 movwf 4
794 0700 1383 bcf 3,7
795 0701 3020 movlw 32
796 0702 0080 movwf 0
797 0703 l58
798 ;18b20LCD.c: 267: }
799 0703 3071 movlw 113
800 0704 00F2 movwf btemp+2
801 0705 3002 movlw 2
802 0706 00F3 movwf btemp+3
803 0707 0824 movf ?_DS18B20_HEX_to_LCD+1,w
804 0708 00F1 movwf btemp+1
805 0709 0823 movf ?_DS18B20_HEX_to_LCD,w
806 070A 00F0 movwf btemp
807 070B 300F movlw 15
808 070C 05F0 andwf btemp
809 070D 01F1 clrf btemp+1
810 070E 120A 118A 24FA fcall lwmul
811 0711 0874 movf btemp+4,w
812 0712 00A7 movwf ?a_DS18B20_HEX_to_LCD+1
813 0713 0875 movf btemp+5,w
814 0714 00A8 movwf ?a_DS18B20_HEX_to_LCD+2
815 ;18b20LCD.c: 269: p[5]=temp2/1000+'0';
816 0715 0825 movf ?_DS18B20_HEX_to_LCD+2,w
817 0716 3E05 addlw 5
818 0717 0084 movwf 4
819 0718 1383 bcf 3,7
820 0719 30E8 movlw 232
821 071A 00F2 movwf btemp+2
822 071B 3003 movlw 3
823 071C 00F3 movwf btemp+3
824 071D 0828 movf ?a_DS18B20_HEX_to_LCD+2,w
825 071E 00F1 movwf btemp+1
826 071F 0827 movf ?a_DS18B20_HEX_to_LCD+1,w
827 0720 00F0 movwf btemp
828 0721 120A 118A 27A5 fcall lwdiv
829 0724 0874 movf btemp+4,w
830 0725 3E30 addlw 48
831 0726 0080 movwf 0
832 ;18b20LCD.c: 270: temp2=temp2%1000;
833 0727 30E8 movlw 232
834 0728 00F2 movwf btemp+2
835 0729 3003 movlw 3
836 072A 00F3 movwf btemp+3
837 072B 0828 movf ?a_DS18B20_HEX_to_LCD+2,w
838 072C 00F1 movwf btemp+1
839 072D 0827 movf ?a_DS18B20_HEX_to_LCD+1,w
840 072E 00F0 movwf btemp
841 072F 120A 118A 27A5 fcall lwmod
842 0732 0870 movf btemp,w
843 0733 00A7 movwf ?a_DS18B20_HEX_to_LCD+1
844 0734 0871 movf btemp+1,w
845 0735 00A8 movwf ?a_DS18B20_HEX_to_LCD+2
846 ;18b20LCD.c: 271: p[6]=temp2/100+'0';
847 0736 0825 movf ?_DS18B20_HEX_to_LCD+2,w
848 0737 3E06 addlw 6
849 0738 0084 movwf 4
850 0739 1383 bcf 3,7
851 073A 3064 movlw 100
852 073B 00F2 movwf btemp+2
853 073C 01F3 clrf btemp+3
854 073D 0828 movf ?a_DS18B20_HEX_to_LCD+2,w
855 073E 00F1 movwf btemp+1
856 073F 0827 movf ?a_DS18B20_HEX_to_LCD+1,w
857 0740 00F0 movwf btemp
858 0741 120A 118A 27A5 fcall lwdiv
+ 120A 118A
859 0746 0874 movf btemp+4,w
860 0747 3E30 addlw 48
861 0748 0080 movwf 0
862 ;18b20LCD.c: 277: }
863 0749 0008 return
864 ;18b20LCD.c: 279: void main()
865 ;18b20LCD.c: 280: {
866 074A _main
867 ;18b20LCD.c: 281: lcdinit();
868 074A 2565 120A 118A fcall _lcdinit
869 ;18b20LCD.c: 282: LCD_write_string(0,0,cc1);
870 074D 01A3 clrf ?_LCD_write_string
871 074E 3031 movlw _cc1
872 074F 00A4 movwf ?_LCD_write_string+1
873 0750 3000 movlw 0
874 0751 267D fcall _LCD_write_string
875 0752 l62
876 ;18b20LCD.c: 283: while(1)
877 ;18b20LCD.c: 284: {
878 0752 261D fcall _read
879 0753 0870 movf btemp,w
880 0754 00A1 movwf _m
881 0755 0871 movf btemp+1,w
882 0756 00A2 movwf _m+1
883 ;18b20LCD.c: 287: DS18B20_HEX_to_LCD(m,cc2);
884 0757 0821 movf _m,w
885 0758 00A3 movwf ?_DS18B20_HEX_to_LCD
886 0759 0822 movf _m+1,w
887 075A 00A4 movwf ?_DS18B20_HEX_to_LCD+1
888 075B 3042 movlw _cc2
889 075C 00A5 movwf ?_DS18B20_HEX_to_LCD+2
890 075D 269F 120A 118A fcall _DS18B20_HEX_to_LCD
891 ;18b20LCD.c: 288: delay_nus(50);
892 0760 3032 movlw 50
893 0761 00AA movwf ?_delay_nus
894 0762 01AB clrf ?_delay_nus+1
895 0763 2534 fcall _delay_nus
896 ;18b20LCD.c: 289: LCD_write_string(0,1,cc2);
897 0764 01A3 clrf ?_LCD_write_string
898 0765 0AA3 incf ?_LCD_write_string
899 0766 3042 movlw _cc2
900 0767 00A4 movwf ?_LCD_write_string+1
901 0768 3000 movlw 0
902 0769 267D fcall _LCD_write_string
903 ;18b20LCD.c: 290: delay_nus(50);
904 076A 3032 movlw 50
905 076B 00AA movwf ?_delay_nus
906 076C 01AB clrf ?_delay_nus+1
907 076D 2534 fcall _delay_nus
908 ;18b20LCD.c: 292: }
909 076E 2F52 goto l62
910
911 psect rbit_0
912 0100 F504
913 0100 ds 1
914 0101 F507
915 0101 ds 1
916 0000
917 0000
918 0000
919 0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -