📄 led+ad.lst
字号:
(0074) MCUCSR=0;
00E8 2422 CLR R2
00E9 BE24 OUT 0x34,R2
(0075) ADMUX=0x00;//0通道
00EA B827 OUT 0x07,R2
(0076) ADCSR=(1<<ADEN)|(1<<ADSC)|(1<<ADIF)|(1<<ADIE)|0x06;
00EB ED8E LDI R24,0xDE
00EC B986 OUT 0x06,R24
(0077) SEI();
00ED 9478 BSET 7
(0078) for(i=0;i<6;i++)
00EE 24AA CLR R10
00EF C010 RJMP 0x0100
(0079) ledbuff[i]=tabel[0];
00F0 E682 LDI R24,0x62
00F1 E090 LDI R25,0
00F2 2DEA MOV R30,R10
00F3 27FF CLR R31
00F4 0FE8 ADD R30,R24
00F5 1FF9 ADC R31,R25
00F6 E5A4 LDI R26,0x54
00F7 E0B0 LDI R27,0
00F8 93FA ST R31,-Y
00F9 93EA ST R30,-Y
00FA 01FD MOVW R30,R26
00FB 91A4 LPM R26,0(Z)
00FC 91E9 LD R30,Y+
00FD 91F9 LD R31,Y+
00FE 83A0 STD Z+0,R26
00FF 94A3 INC R10
0100 2D8A MOV R24,R10
0101 3086 CPI R24,6
0102 F368 BCS 0x00F0
(0080) i=0;
0103 24AA CLR R10
0104 C01F RJMP 0x0124
(0081) while(1)
(0082) {
(0083) if((i==127)|(i==0))
0105 2D8A MOV R24,R10
0106 378F CPI R24,0x7F
0107 F421 BNE 0x010C
0108 E081 LDI R24,1
0109 E090 LDI R25,0
010A 017C MOVW R14,R24
010B C002 RJMP 0x010E
010C 24EE CLR R14
010D 24FF CLR R15
010E 20AA TST R10
010F F421 BNE 0x0114
0110 E081 LDI R24,1
0111 E090 LDI R25,0
0112 016C MOVW R12,R24
0113 C002 RJMP 0x0116
0114 24CC CLR R12
0115 24DD CLR R13
0116 0117 MOVW R2,R14
0117 282C OR R2,R12
0118 283D OR R3,R13
0119 2022 TST R2
011A F411 BNE 0x011D
011B 2033 TST R3
011C F029 BEQ 0x0122
(0084) adctovol(ad_con);//降低AD结果刷新速率
011D 91000060 LDS R16,_ad_con
011F 91100061 LDS R17,_ad_con+1
0121 DF5B RCALL _adctovol
(0085) display(); //使末位闪烁不太明显
0122 DF37 RCALL _display
(0086) i++;
0123 94A3 INC R10
0124 CFE0 RJMP 0x0105
(0087) }
(0088) }
FILE: <library>
0125 9508 RET
_delay_1ms:
0126 E001 LDI R16,1
0127 E010 LDI R17,0
0128 C002 RJMP 0x012B
0129 5F0F SUBI R16,0xFF
012A 4F1F SBCI R17,0xFF
012B 3706 CPI R16,0x76
012C E0E4 LDI R30,4
012D 071E CPC R17,R30
012E F3D0 BCS 0x0129
012F 9508 RET
mod16u:
0130 9468 BSET 6
0131 C001 RJMP xdiv16u
div16u:
0132 94E8 BCLR 6
xdiv16u:
0133 92EA ST R14,-Y
0134 92FA ST R15,-Y
0135 938A ST R24,-Y
0136 24EE CLR R14
0137 24FF CLR R15
0138 E180 LDI R24,0x10
0139 0F00 LSL R16
013A 1F11 ROL R17
013B 1CEE ROL R14
013C 1CFF ROL R15
013D 16E2 CP R14,R18
013E 06F3 CPC R15,R19
013F F018 BCS 0x0143
0140 1AE2 SUB R14,R18
0141 0AF3 SBC R15,R19
0142 9503 INC R16
0143 958A DEC R24
0144 F7A1 BNE 0x0139
0145 F416 BRTC 0x0148
0146 2D0E MOV R16,R14
0147 2D1F MOV R17,R15
0148 9189 LD R24,Y+
0149 90F9 LD R15,Y+
014A 90E9 LD R14,Y+
014B 9508 RET
empy32u:
empy32s:
014C 940E0192 CALL long_prolog
014E 927F PUSH R7
014F 940E01AB CALL tstzero1
0151 F139 BEQ 0x0179
0152 2477 CLR R7
0153 940E01B1 CALL tstzero2
0155 F419 BNE 0x0159
0156 018C MOVW R16,R24
0157 019D MOVW R18,R26
0158 C020 RJMP 0x0179
0159 9F08 MUL R16,R24
015A 2CB0 MOV R11,R0
015B 2CA1 MOV R10,R1
015C 9F28 MUL R18,R24
015D 2C90 MOV R9,R0
015E 2C81 MOV R8,R1
015F 9F18 MUL R17,R24
0160 0CA0 ADD R10,R0
0161 1C91 ADC R9,R1
0162 1C87 ADC R8,R7
0163 9F09 MUL R16,R25
0164 0CA0 ADD R10,R0
0165 1C91 ADC R9,R1
0166 1C87 ADC R8,R7
0167 9F19 MUL R17,R25
0168 0C90 ADD R9,R0
0169 1C81 ADC R8,R1
016A 9F0A MUL R16,R26
016B 0C90 ADD R9,R0
016C 1C81 ADC R8,R1
016D 9F38 MUL R19,R24
016E 0C80 ADD R8,R0
016F 9F29 MUL R18,R25
0170 0C80 ADD R8,R0
0171 9F1A MUL R17,R26
0172 0C80 ADD R8,R0
0173 9F0B MUL R16,R27
0174 0C80 ADD R8,R0
0175 2D0B MOV R16,R11
0176 2D1A MOV R17,R10
0177 2D29 MOV R18,R9
0178 2D38 MOV R19,R8
0179 907F POP R7
017A 940C01A0 JMP long_epilog
pop_gset3x:
017C E0E4 LDI R30,4
popx:
017D 90A9 LD R10,Y+
017E 90B9 LD R11,Y+
017F FDE2 SBRC R30,2
0180 9508 RET
0181 90C9 LD R12,Y+
0182 90D9 LD R13,Y+
0183 FDE3 SBRC R30,3
0184 9508 RET
0185 90E9 LD R14,Y+
0186 90F9 LD R15,Y+
0187 9508 RET
pop_gset4x:
0188 E0E8 LDI R30,0x8
0189 940C017D JMP popx
push_gset3x:
018B 92BA ST R11,-Y
018C 92AA ST R10,-Y
018D 9508 RET
push_gset4x:
018E 92DA ST R13,-Y
018F 92CA ST R12,-Y
0190 940C018B JMP push_gset3x
long_prolog:
0192 928A ST R8,-Y
0193 929A ST R9,-Y
0194 92AA ST R10,-Y
0195 92BA ST R11,-Y
0196 93EA ST R30,-Y
0197 938A ST R24,-Y
0198 939A ST R25,-Y
0199 93AA ST R26,-Y
019A 93BA ST R27,-Y
019B 8589 LDD R24,Y+9
019C 859A LDD R25,Y+10
019D 85AB LDD R26,Y+11
019E 85BC LDD R27,Y+12
019F 9508 RET
long_epilog:
01A0 91B9 LD R27,Y+
01A1 91A9 LD R26,Y+
01A2 9199 LD R25,Y+
01A3 9189 LD R24,Y+
01A4 91E9 LD R30,Y+
01A5 90B9 LD R11,Y+
01A6 90A9 LD R10,Y+
01A7 9099 LD R9,Y+
01A8 9089 LD R8,Y+
01A9 9624 ADIW R28,4
01AA 9508 RET
tstzero1:
01AB 27EE CLR R30
01AC 2BE0 OR R30,R16
01AD 2BE1 OR R30,R17
01AE 2BE2 OR R30,R18
01AF 2BE3 OR R30,R19
01B0 9508 RET
tstzero2:
01B1 27EE CLR R30
01B2 2BE8 OR R30,R24
01B3 2BE9 OR R30,R25
01B4 2BEA OR R30,R26
01B5 2BEB OR R30,R27
01B6 9508 RET
lsl8:
01B7 2311 TST R17
01B8 F019 BEQ 0x01BC
01B9 0F00 LSL R16
01BA 951A DEC R17
01BB CFFB RJMP lsl8
01BC 9508 RET
lsr32:
01BD 920F PUSH R0
01BE 9009 LD R0,Y+
01BF 2000 TST R0
01C0 F031 BEQ 0x01C7
01C1 9536 LSR R19
01C2 9527 ROR R18
01C3 9517 ROR R17
01C4 9507 ROR R16
01C5 940A DEC R0
01C6 CFF8 RJMP 0x01BF
01C7 900F POP R0
01C8 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -