📄 ds18b20-lcd1602-c51-avr.lst
字号:
736 025a 8DE0 ldi r24,lo8(13)
737 025c CCDF rcall lcd_pos
738 .LM143:
739 025e 80E0 ldi r24,lo8(0)
740 0260 BDDF rcall lcd_wdat
741 .LM144:
742 0262 80E4 ldi r24,lo8(64)
743 0264 C8DF rcall lcd_pos
744 .LM145:
745 0266 C0E0 ldi r28,lo8(0)
746 .LM146:
747 0268 8091 0000 lds r24,cdis2
748 .L80:
749 026c 8823 tst r24
750 026e 69F0 breq .L78
751 .LM147:
752 0270 EC2F mov r30,r28
753 0272 FF27 clr r31
754 0274 E050 subi r30,lo8(-(cdis2))
755 0276 F040 sbci r31,hi8(-(cdis2))
756 0278 8081 ld r24,Z
757 027a B0DF rcall lcd_wdat
758 .LM148:
759 027c CF5F subi r28,lo8(-(1))
760 027e EC2F mov r30,r28
761 0280 FF27 clr r31
762 0282 E050 subi r30,lo8(-(cdis2))
763 0284 F040 sbci r31,hi8(-(cdis2))
764 0286 8081 ld r24,Z
765 0288 F1CF rjmp .L80
766 .L78:
767 .LM149:
768 028a 8DE4 ldi r24,lo8(77)
769 028c B4DF rcall lcd_pos
770 .LM150:
771 028e 80E0 ldi r24,lo8(0)
772 0290 A5DF rcall lcd_wdat
773 /* epilogue: frame size=0 */
774 0292 CF91 pop r28
775 0294 0895 ret
776 /* epilogue end (size=2) */
777 /* function Ok_Menu size 56 (53) */
778 .LFE20:
780 .global Error_Menu
782 Error_Menu:
783 .LFB21:
784 .LM151:
785 /* prologue: frame size=0 */
786 0296 CF93 push r28
787 /* prologue end (size=1) */
788 .LM152:
789 0298 74DF rcall lcd_init
790 .LM153:
791 029a 80E0 ldi r24,lo8(0)
792 029c ACDF rcall lcd_pos
793 .LM154:
794 029e C0E0 ldi r28,lo8(0)
795 .LM155:
796 02a0 8091 0000 lds r24,cdis3
797 .L92:
798 .LM156:
799 02a4 8823 tst r24
800 02a6 69F0 breq .L89
801 .LM157:
802 02a8 EC2F mov r30,r28
803 02aa FF27 clr r31
804 02ac E050 subi r30,lo8(-(cdis3))
805 02ae F040 sbci r31,hi8(-(cdis3))
806 02b0 8081 ld r24,Z
807 02b2 94DF rcall lcd_wdat
808 .LM158:
809 02b4 CF5F subi r28,lo8(-(1))
810 02b6 EC2F mov r30,r28
811 02b8 FF27 clr r31
812 02ba E050 subi r30,lo8(-(cdis3))
813 02bc F040 sbci r31,hi8(-(cdis3))
814 02be 8081 ld r24,Z
815 02c0 F1CF rjmp .L92
816 .L89:
817 .LM159:
818 02c2 80E4 ldi r24,lo8(64)
819 02c4 98DF rcall lcd_pos
820 .LM160:
821 02c6 C0E0 ldi r28,lo8(0)
822 .LM161:
823 02c8 8091 0000 lds r24,cdis4
824 02cc 8823 tst r24
825 02ce 71F0 breq .L91
826 .L87:
827 .LM162:
828 02d0 EC2F mov r30,r28
829 02d2 FF27 clr r31
830 02d4 E050 subi r30,lo8(-(cdis4))
831 02d6 F040 sbci r31,hi8(-(cdis4))
832 02d8 8081 ld r24,Z
833 02da 80DF rcall lcd_wdat
834 .LM163:
835 02dc CF5F subi r28,lo8(-(1))
836 02de EC2F mov r30,r28
837 02e0 FF27 clr r31
838 02e2 E050 subi r30,lo8(-(cdis4))
839 02e4 F040 sbci r31,hi8(-(cdis4))
840 02e6 8081 ld r24,Z
841 02e8 8823 tst r24
842 02ea 91F7 brne .L87
843 .L91:
844 /* epilogue: frame size=0 */
845 02ec CF91 pop r28
846 02ee 0895 ret
847 /* epilogue end (size=2) */
848 /* function Error_Menu size 45 (42) */
849 .LFE21:
851 .global Disp_Temperature
853 Disp_Temperature:
854 .LFB22:
855 .LM164:
856 /* prologue: frame size=0 */
857 /* prologue end (size=0) */
858 02f0 582F mov r21,r24
859 .LM165:
860 02f2 9091 0000 lds r25,temp_data
861 02f6 892F mov r24,r25
862 02f8 8F70 andi r24,lo8(15)
863 .LM166:
864 02fa E82F mov r30,r24
865 02fc FF27 clr r31
866 02fe E050 subi r30,lo8(-(ditab))
867 0300 F040 sbci r31,hi8(-(ditab))
868 0302 8081 ld r24,Z
869 0304 805D subi r24,lo8(-(48))
870 0306 8093 0000 sts display,r24
871 .LM167:
872 030a 292F mov r18,r25
873 030c 3327 clr r19
874 030e 64E0 ldi r22,4
875 0310 3695 1: lsr r19
876 0312 2795 ror r18
877 0314 6A95 dec r22
878 0316 E1F7 brne 1b
879 0318 8091 0000 lds r24,temp_data+1
880 031c 9927 clr r25
881 031e 8F70 andi r24,lo8(15)
882 0320 9070 andi r25,hi8(15)
883 0322 44E0 ldi r20,4
884 0324 880F 1: lsl r24
885 0326 991F rol r25
886 0328 4A95 dec r20
887 032a E1F7 brne 1b
888 032c 282B or r18,r24
889 032e 2093 0000 sts display+4,r18
890 .LM168:
891 0332 822F mov r24,r18
892 0334 64E6 ldi r22,lo8(100)
893 0336 00D0 rcall __udivmodqi4
894 0338 382F mov r19,r24
895 033a 305D subi r19,lo8(-(48))
896 033c 3093 0000 sts display+3,r19
897 .LM169:
898 0340 822F mov r24,r18
899 0342 00D0 rcall __udivmodqi4
900 0344 292F mov r18,r25
901 .LM170:
902 0346 892F mov r24,r25
903 0348 6AE0 ldi r22,lo8(10)
904 034a 00D0 rcall __udivmodqi4
905 034c 482F mov r20,r24
906 034e 405D subi r20,lo8(-(48))
907 0350 4093 0000 sts display+2,r20
908 .LM171:
909 0354 822F mov r24,r18
910 0356 00D0 rcall __udivmodqi4
911 0358 892F mov r24,r25
912 035a 805D subi r24,lo8(-(48))
913 035c 8093 0000 sts display+1,r24
914 .LM172:
915 0360 3033 cpi r19,lo8(48)
916 0362 39F4 brne .L94
917 .LM173:
918 0364 80E2 ldi r24,lo8(32)
919 0366 8093 0000 sts display+3,r24
920 .LM174:
921 036a 4033 cpi r20,lo8(48)
922 036c 11F4 brne .L94
923 .LM175:
924 036e 8093 0000 sts display+2,r24
925 .L94:
926 .LM176:
927 0372 5130 cpi r21,lo8(1)
928 0374 89F4 brne .L96
929 .LM177:
930 0376 88E4 ldi r24,lo8(72)
931 0378 3EDF rcall lcd_pos
932 .LM178:
933 037a 8091 0000 lds r24,display+3
934 037e 2EDF rcall lcd_wdat
935 .LM179:
936 0380 89E4 ldi r24,lo8(73)
937 0382 39DF rcall lcd_pos
938 .LM180:
939 0384 8091 0000 lds r24,display+2
940 0388 29DF rcall lcd_wdat
941 .LM181:
942 038a 8AE4 ldi r24,lo8(74)
943 038c 34DF rcall lcd_pos
944 .LM182:
945 038e 8091 0000 lds r24,display+1
946 0392 24DF rcall lcd_wdat
947 .LM183:
948 0394 8CE4 ldi r24,lo8(76)
949 0396 10C0 rjmp .L98
950 .L96:
951 .LM184:
952 0398 88E0 ldi r24,lo8(8)
953 039a 2DDF rcall lcd_pos
954 .LM185:
955 039c 8091 0000 lds r24,display+3
956 03a0 1DDF rcall lcd_wdat
957 .LM186:
958 03a2 89E0 ldi r24,lo8(9)
959 03a4 28DF rcall lcd_pos
960 .LM187:
961 03a6 8091 0000 lds r24,display+2
962 03aa 18DF rcall lcd_wdat
963 .LM188:
964 03ac 8AE0 ldi r24,lo8(10)
965 03ae 23DF rcall lcd_pos
966 .LM189:
967 03b0 8091 0000 lds r24,display+1
968 03b4 13DF rcall lcd_wdat
969 .LM190:
970 03b6 8CE0 ldi r24,lo8(12)
971 .L98:
972 03b8 1EDF rcall lcd_pos
973 .LM191:
974 03ba 8091 0000 lds r24,display
975 03be 0EDF rcall lcd_wdat
976 03c0 0895 ret
977 /* epilogue: frame size=0 */
978 03c2 0895 ret
979 /* epilogue end (size=1) */
980 /* function Disp_Temperature size 106 (105) */
981 .LFE22:
983 .global main
985 main:
986 .LFB23:
987 .LM192:
988 /* prologue: frame size=0 */
989 03c4 C0E0 ldi r28,lo8(__stack - 0)
990 03c6 D0E0 ldi r29,hi8(__stack - 0)
991 03c8 DEBF out __SP_H__,r29
992 03ca CDBF out __SP_L__,r28
993 /* prologue end (size=4) */
994 .LM193:
995 03cc 3DDE rcall init_io
996 .L100:
997 .LM194:
998 03ce 2BDF rcall Ok_Menu
999 .L102:
1000 .LM195:
1001 03d0 80E0 ldi r24,lo8(0)
1002 03d2 8CDE rcall Read_Temperature
1003 .LM196:
1004 03d4 80E0 ldi r24,lo8(0)
1005 03d6 8CDF rcall Disp_Temperature
1006 .LM197:
1007 03d8 82E3 ldi r24,lo8(50)
1008 03da 90E0 ldi r25,hi8(50)
1009 03dc 11DE rcall delay_nms
1010 .LM198:
1011 03de 81E0 ldi r24,lo8(1)
1012 03e0 85DE rcall Read_Temperature
1013 .LM199:
1014 03e2 81E0 ldi r24,lo8(1)
1015 03e4 85DF rcall Disp_Temperature
1016 .LM200:
1017 03e6 82E3 ldi r24,lo8(50)
1018 03e8 90E0 ldi r25,hi8(50)
1019 03ea 0ADE rcall delay_nms
1020 .LM201:
1021 03ec 8091 0000 lds r24,presence
1022 03f0 8823 tst r24
1023 03f2 71F3 breq .L102
1024 .LM202:
1025 03f4 50DF rcall Error_Menu
1026 .L105:
1027 .LM203:
1028 03f6 32DE rcall Init_DS18B20
1029 .LM204:
1030 03f8 13DE rcall beep
1031 .LM205:
1032 03fa 8091 0000 lds r24,presence
1033 03fe 8823 tst r24
1034 0400 D1F7 brne .L105
1035 0402 E5CF rjmp .L100
1036 /* epilogue: frame size=0 */
1037 /* epilogue: noreturn */
1038 /* epilogue end (size=0) */
1039 /* function main size 32 (28) */
1040 .LFE23:
1042 .comm m,1,1
1043 .comm presence,1,1
1044 .comm x,1,1
1045 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 DS18B20-LCD1602-C51-AVR.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:22 .data:00000000 cdis4
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:27 .data:00000011 cdis3
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:32 .data:00000022 cdis2
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:37 .data:00000033 cdis1
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:42 .data:00000044 RomCode
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:62 .data:00000054 mytab
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:74 .data:0000005c ditab
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:96 .bss:00000000 display
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:102 .bss:00000005 temp_data
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:107 .text:00000000 delay_nms
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:143 .text:00000016 Delay
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:168 .text:00000020 beep
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:208 .text:00000048 init_io
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:238 .text:0000005c Init_DS18B20
*COM*:00000001 presence
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:294 .text:00000098 ReadOneChar
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:343 .text:000000c4 WriteOneChar
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:387 .text:000000ec Read_Temperature
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:463 .text:00000154 lcd_busy
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:492 .text:00000166 lcd_wcmd
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:531 .text:00000182 lcd_init
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:605 .text:000001dc lcd_wdat
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:641 .text:000001f6 lcd_pos
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:658 .text:000001fe writetab
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:694 .text:00000226 Ok_Menu
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:782 .text:00000296 Error_Menu
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:853 .text:000002f0 Disp_Temperature
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cceeaaaa.s:985 .text:000003c4 main
*COM*:00000001 m
*COM*:00000001 x
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__udivmodqi4
__stack
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -