main.lst
来自「旋转16个LED灯控制程序」· LST 代码 · 共 1,175 行 · 第 1/3 页
LST
1,175 行
824 0486 2F91 pop r18
825 0488 1F91 pop r17
826 048a 0F91 pop r16
827 048c 0F90 pop __tmp_reg__
828 048e 0FBE out __SREG__,__tmp_reg__
829 0490 0F90 pop __tmp_reg__
830 0492 1F90 pop __zero_reg__
831 0494 1895 reti
832 /* epilogue end (size=19) */
833 /* function __vector_2 size 261 (223) */
834 .LFE6:
836 .global ioinit
838 ioinit:
839 .LFB7:
840 .LM117:
841 /* prologue: frame size=0 */
842 /* prologue end (size=0) */
843 .LM118:
844 0496 83E7 ldi r24,lo8(115)
845 0498 81BB out 49-0x20,r24
846 .LM119:
847 049a 8FED ldi r24,lo8(-33)
848 049c 87BB out 55-0x20,r24
849 .LM120:
850 049e 80E1 ldi r24,lo8(16)
851 04a0 88BB out 56-0x20,r24
852 .LM121:
853 04a2 8CE4 ldi r24,lo8(76)
854 04a4 82BB out 50-0x20,r24
855 .LM122:
856 04a6 98E0 ldi r25,lo8(8)
857 04a8 95BF out 85-0x20,r25
858 .LM123:
859 04aa 80EC ldi r24,lo8(-64)
860 04ac 8BBF out 91-0x20,r24
861 .LM124:
862 04ae 10BE out 80-0x20,__zero_reg__
863 .LM125:
864 04b0 84E0 ldi r24,lo8(4)
865 04b2 83BF out 83-0x20,r24
866 .LM126:
867 04b4 89B7 in r24,89-0x20
868 04b6 8260 ori r24,lo8(2)
869 04b8 89BF out 89-0x20,r24
870 .LM127:
871 04ba 1FBC out 79-0x20,__zero_reg__
872 .LM128:
873 04bc 9EBD out 78-0x20,r25
874 .LM129:
875 04be 1092 0000 sts hall_debounce,__zero_reg__
876 .LM130:
877 04c2 1092 0000 sts (sensor_timer)+1,__zero_reg__
878 04c6 1092 0000 sts sensor_timer,__zero_reg__
879 /* epilogue: frame size=0 */
880 04ca 0895 ret
881 /* epilogue end (size=1) */
882 /* function ioinit size 27 (26) */
883 .LFE7:
885 .global main
887 main:
888 .LFB9:
889 .LM131:
890 /* prologue: frame size=1 */
891 04cc C0E0 ldi r28,lo8(__stack - 1)
892 04ce D0E0 ldi r29,hi8(__stack - 1)
893 04d0 DEBF out __SP_H__,r29
894 04d2 CDBF out __SP_L__,r28
895 /* prologue end (size=4) */
896 .LM132:
897 04d4 84B7 in r24,84-0x20
898 .LM133:
899 04d6 14BE out 84-0x20,__zero_reg__
900 .LM134:
901 04d8 8EE0 ldi r24,lo8(14)
902 04da 81BD out 65-0x20,r24
903 .LM135:
904 04dc DCDF rcall ioinit
905 .LM136:
906 04de 8EEF ldi r24,lo8(-2)
907 04e0 3EDE rcall set_all
908 .LM137:
909 /* #APP */
910 04e2 7894 sei
911 /* #NOAPP */
912 .L85:
913 .LM138:
914 /* #APP */
915 04e4 A895 wdr
916 .LM139:
917 /* #NOAPP */
918 04e6 8091 0000 lds r24,sensor_timer+1
919 04ea 8F3F cpi r24,lo8(-1)
920 04ec 71F4 brne .L52
921 .LM140:
922 /* #APP */
923 04ee F894 cli
924 .LM141:
925 /* #NOAPP */
926 04f0 36DE rcall set_all
927 .LM142:
928 04f2 9698 cbi 50-0x20,6
929 .LM143:
930 04f4 C49A sbi 56-0x20,4
931 .LM144:
932 04f6 81B5 in r24,65-0x20
933 04f8 8861 ori r24,lo8(24)
934 04fa 81BD out 65-0x20,r24
935 .LM145:
936 04fc 11BC out 65-0x20,__zero_reg__
937 .LM146:
938 04fe 85B7 in r24,85-0x20
939 0500 8067 ori r24,lo8(112)
940 0502 85BF out 85-0x20,r24
941 .LM147:
942 /* #APP */
943 0504 7894 sei
944 .LM148:
945 0506 8895 sleep
946 /* #NOAPP */
947 0508 EDCF rjmp .L85
948 .L52:
949 .LBB6:
950 .LM149:
951 050a 8091 0000 lds r24,dynamicType
952 050e 8983 std Y+1,r24
953 .LM150:
954 0510 8091 0000 lds r24,dynamicType
955 0514 9927 clr r25
956 0516 807F andi r24,lo8(240)
957 0518 9070 andi r25,hi8(240)
958 051a 8032 cpi r24,32
959 051c 9105 cpc r25,__zero_reg__
960 051e 71F0 breq .L56
961 0520 8132 cpi r24,33
962 0522 9105 cpc r25,__zero_reg__
963 0524 1CF4 brge .L69
964 0526 4097 sbiw r24,16
965 0528 29F0 breq .L55
966 052a 72C0 rjmp .L68
967 .L69:
968 052c C097 sbiw r24,48
969 052e 09F4 brne .+2
970 0530 6BC0 rjmp .L67
971 0532 6EC0 rjmp .L68
972 .L55:
973 .LM151:
974 0534 24E0 ldi r18,lo8(4)
975 .LM152:
976 0536 00E0 ldi r16,lo8(dynamicREV)
977 0538 10E0 ldi r17,hi8(dynamicREV)
978 .LM153:
979 053a 6BC0 rjmp .L54
980 .L56:
981 .LM154:
982 053c 80E3 ldi r24,lo8(48)
983 053e 8093 0000 sts dynamicRPM+2,r24
984 0542 8091 0000 lds r24,dynamicRPM+2
985 0546 8093 0000 sts dynamicRPM+1,r24
986 054a 8091 0000 lds r24,dynamicRPM+1
987 054e 8093 0000 sts dynamicRPM,r24
988 .LM155:
989 0552 0AB5 in r16,74-0x20
990 0554 1BB5 in r17,(74)+1-0x20
991 .LM156:
992 0556 A0E0 ldi r26,lo8(div732+5)
993 0558 B0E0 ldi r27,hi8(div732+5)
994 .L84:
995 .LM157:
996 055a 17FD sbrc r17,7
997 055c 04C0 rjmp .L77
998 .LM158:
999 055e 000F lsl r16
1000 0560 111F rol r17
1001 .LM159:
1002 0562 1396 adiw r26,3
1003 0564 FACF rjmp .L84
1004 .L77:
1005 .LM160:
1006 0566 1F77 andi r17,hi8(32767)
1007 .LM161:
1008 0568 80E0 ldi r24,hi8(div732)
1009 056a A030 cpi r26,lo8(div732)
1010 056c B807 cpc r27,r24
1011 056e 09F0 breq .+2
1012 0570 08F4 brsh .+2
1013 0572 46C0 rjmp .L79
1014 .L66:
1015 .LM162:
1016 0574 17FD sbrc r17,7
1017 0576 3BC0 rjmp .L62
1018 .LBB7:
1019 .LM163:
1020 0578 FB2F mov r31,r27
1021 057a EA2F mov r30,r26
1022 057c 1197 sbiw r26,1
1023 /* #APP */
1024 057e C895 lpm
1025 0580 902D mov r25, r0
1026
1027 /* #NOAPP */
1028 .LBE7:
1029 0582 8091 0000 lds r24,dynamicRPM
1030 0586 890F add r24,r25
1031 0588 8093 0000 sts dynamicRPM,r24
1032 .LM164:
1033 058c 8091 0000 lds r24,dynamicRPM
1034 0590 8A33 cpi r24,lo8(58)
1035 0592 50F0 brlo .L63
1036 .LM165:
1037 0594 8091 0000 lds r24,dynamicRPM
1038 0598 8A50 subi r24,lo8(-(-10))
1039 059a 8093 0000 sts dynamicRPM,r24
1040 .LM166:
1041 059e 8091 0000 lds r24,dynamicRPM+1
1042 05a2 8F5F subi r24,lo8(-(1))
1043 05a4 8093 0000 sts dynamicRPM+1,r24
1044 .L63:
1045 .LBB8:
1046 .LM167:
1047 05a8 FB2F mov r31,r27
1048 05aa EA2F mov r30,r26
1049 05ac 1197 sbiw r26,1
1050 /* #APP */
1051 05ae C895 lpm
1052 05b0 902D mov r25, r0
1053
1054 /* #NOAPP */
1055 .LBE8:
1056 05b2 8091 0000 lds r24,dynamicRPM+1
1057 05b6 890F add r24,r25
1058 05b8 8093 0000 sts dynamicRPM+1,r24
1059 .LM168:
1060 05bc 8091 0000 lds r24,dynamicRPM+1
1061 05c0 8A33 cpi r24,lo8(58)
1062 05c2 50F0 brlo .L64
1063 .LM169:
1064 05c4 8091 0000 lds r24,dynamicRPM+1
1065 05c8 8A50 subi r24,lo8(-(-10))
1066 05ca 8093 0000 sts dynamicRPM+1,r24
1067 .LM170:
1068 05ce 8091 0000 lds r24,dynamicRPM+2
1069 05d2 8F5F subi r24,lo8(-(1))
1070 05d4 8093 0000 sts dynamicRPM+2,r24
1071 .L64:
1072 .LBB9:
1073 .LM171:
1074 05d8 FB2F mov r31,r27
1075 05da EA2F mov r30,r26
1076 05dc 1197 sbiw r26,1
1077 /* #APP */
1078 05de C895 lpm
1079 05e0 902D mov r25, r0
1080
1081 /* #NOAPP */
1082 .LBE9:
1083 05e2 8091 0000 lds r24,dynamicRPM+2
1084 05e6 890F add r24,r25
1085 05e8 8093 0000 sts dynamicRPM+2,r24
1086 05ec 01C0 rjmp .L65
1087 .L62:
1088 .LM172:
1089 05ee 1397 sbiw r26,3
1090 .L65:
1091 .LM173:
1092 05f0 000F lsl r16
1093 05f2 111F rol r17
1094 05f4 E0E0 ldi r30,hi8(div732)
1095 05f6 A030 cpi r26,lo8(div732)
1096 05f8 BE07 cpc r27,r30
1097 05fa 11F0 breq .+4
1098 05fc 08F0 brlo .+2
1099 05fe BACF rjmp .L66
1100 .L79:
1101 .LM174:
1102 0600 23E0 ldi r18,lo8(3)
1103 .LM175:
1104 0602 00E0 ldi r16,lo8(dynamicRPM)
1105 0604 10E0 ldi r17,hi8(dynamicRPM)
1106 .LM176:
1107 0606 05C0 rjmp .L54
1108 .L67:
1109 .LM177:
1110 0608 28E0 ldi r18,lo8(8)
1111 .LM178:
1112 060a 00E0 ldi r16,lo8(dynamicTime)
1113 060c 10E0 ldi r17,hi8(dynamicTime)
1114 .LM179:
1115 060e 01C0 rjmp .L54
1116 .L68:
1117 .LM180:
1118 0610 20E0 ldi r18,lo8(0)
1119 .L54:
1120 .LM181:
1121 /* #APP */
1122 0612 F894 cli
1123 .LM182:
1124 /* #NOAPP */
1125 0614 9981 ldd r25,Y+1
1126 0616 8091 0000 lds r24,dynamicType
1127 061a 9813 cpse r25,r24
1128 .LM183:
1129 061c 20E0 ldi r18,lo8(0)
1130 .L70:
1131 .LM184:
1132 061e 8091 0000 lds r24,dynamicType
1133 0622 8823 tst r24
1134 0624 79F0 breq .L71
1135 0626 2223 tst r18
1136 0628 69F0 breq .L71
1137 .LM185:
1138 062a A091 0000 lds r26,dynamicPtr
1139 062e B091 0000 lds r27,(dynamicPtr)+1
1140 .L75:
1141 .LM186:
1142 0632 F12F mov r31,r17
1143 0634 E02F mov r30,r16
1144 0636 8191 ld r24,Z+
1145 0638 0E2F mov r16,r30
1146 063a 1F2F mov r17,r31
1147 063c 8C93 st X,r24
1148 063e 1197 sbiw r26,1
1149 .LM187:
1150 0640 2150 subi r18,lo8(-(-1))
1151 0642 B9F7 brne .L75
1152 .L71:
1153 .LM188:
1154 /* #APP */
1155 0644 7894 sei
1156 /* #NOAPP */
1157 .LBE6:
1158 .LM189:
1159 0646 4ECF rjmp .L85
1160 /* epilogue: frame size=1 */
1161 /* epilogue: noreturn */
1162 /* epilogue end (size=0) */
1163 /* function main size 214 (210) */
1164 .LFE9:
1166 .comm dynamicTimeCounter,2,1
1167 .comm topLine,16,1
1168 .comm botLine,16,1
1169 .comm fleds,4,1
1170 .comm hall_debounce,1,1
1171 .comm sensor_timer,2,1
1172 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 main.c
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:3 *ABS*:0000003f __SREG__
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:4 *ABS*:0000003e __SP_H__
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:5 *ABS*:0000003d __SP_L__
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:6 *ABS*:00000000 __tmp_reg__
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:7 *ABS*:00000001 __zero_reg__
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:22 .data:00000000 pixelNum
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:27 .data:00000001 charNum
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:34 .bss:00000000 botChar
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:40 .bss:00000002 topChar
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:46 .data:00000002 line_shift
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:51 .data:00000003 cur_line
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:56 .data:00000004 line_timer
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:61 .data:00000005 dynamicTime
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:67 .progmem.data:00000000 div732
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:83 .data:0000000d dynamicRPM
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:88 .data:00000010 dynamicREV
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:95 .bss:00000004 dynamicType
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:101 .bss:00000005 dynamicPtr
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:107 .progmem.data:0000001c dInfo
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:119 .progmem.data:00000024 lines
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:125 .progmem.data:00000085 lineOffsets
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:137 .text:00000000 clock_scroll
*COM*:00000004 fleds
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:200 .text:0000004e __vector_6
*COM*:00000001 hall_debounce
*COM*:00000002 sensor_timer
*COM*:00000002 dynamicTimeCounter
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:336 .text:0000015e set_all
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:357 .text:00000174 __vector_4
*COM*:00000010 topLine
*COM*:00000010 botLine
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:496 .text:0000027a __vector_1
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:540 .text:000002ae __vector_2
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:838 .text:00000496 ioinit
D:\DOCUME~1\Robert\LOCALS~1\Temp/ccm2aaaa.s:887 .text:000004cc main
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
spi_transfer
spi_transfer_n
spieeprom_read
memcpy_P
__stack
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?