📄 ad_led.lst
字号:
(0070) void main(void)
(0071) {
(0072) unsigned char i;
(0073) port_init();
_main:
i --> R20
00D0 DF68 RCALL _port_init
(0074) MCUCR=0;
00D1 2422 CLR R2
00D2 BE25 OUT P35,R2
(0075) ADMUX=0x00;//0通道
00D3 B827 OUT P07,R2
(0076) ADCSR=(1<<ADEN)|(1<<ADSC)|(1<<ADIF)|(1<<ADIE)|0x06;
00D4 ED8E LDI R24,0xDE
00D5 B986 OUT P06,R24
(0077) SEI();
00D6 9478 BSET 7
(0078) for(i=0;i<6;i++)
00D7 2744 CLR R20
00D8 C011 RJMP 0x00EA
(0079) ledbuff[i]=tabel[0];
00D9 E682 LDI R24,0x62
00DA E090 LDI R25,0
00DB 2FE4 MOV R30,R20
00DC 27FF CLR R31
00DD 0FE8 ADD R30,R24
00DE 1FF9 ADC R31,R25
00DF E282 LDI R24,0x22
00E0 E090 LDI R25,0
00E1 93FA ST R31,-Y
00E2 93EA ST R30,-Y
00E3 2FE8 MOV R30,R24
00E4 2FF9 MOV R31,R25
00E5 95C8 LPM
00E6 91E9 LD R30,Y+
00E7 91F9 LD R31,Y+
00E8 8200 STD R0,0+Z
00E9 9543 INC R20
00EA 3046 CPI R20,6
00EB F368 BCS 0x00D9
(0080) i=0;
00EC 2744 CLR R20
00ED C01F RJMP 0x010D
(0081) while(1)
(0082) {
(0083) if((i==127)|(i==0))
00EE 374F CPI R20,0x7F
00EF F429 BNE 0x00F5
00F0 E081 LDI R24,1
00F1 E090 LDI R25,0
00F2 2EA8 MOV R10,R24
00F3 2EB9 MOV R11,R25
00F4 C002 RJMP 0x00F7
00F5 24AA CLR R10
00F6 24BB CLR R11
00F7 2344 TST R20
00F8 F419 BNE 0x00FC
00F9 E061 LDI R22,1
00FA E070 LDI R23,0
00FB C002 RJMP 0x00FE
00FC 2766 CLR R22
00FD 2777 CLR R23
00FE 2C2A MOV R2,R10
00FF 2C3B MOV R3,R11
0100 2A26 OR R2,R22
0101 2A37 OR R3,R23
0102 2022 TST R2
0103 F411 BNE 0x0106
0104 2033 TST R3
0105 F029 BEQ 0x010B
(0084) adctovol(ad_con);//降低AD结果刷新速率
0106 91000060 LDS R16,_ad_con
0108 91100061 LDS R17,_ad_con+1
010A DF52 RCALL _adctovol
(0085) display(); //使末位闪烁不太明显
010B DF34 RCALL _display
(0086) i++;
010C 9543 INC R20
(0087) }
010D CFE0 RJMP 0x00EE
(0088) }
FILE: <library>
010E 9508 RET
_delay_1ms:
010F E001 LDI R16,1
0110 E010 LDI R17,0
0111 C002 RJMP 0x0114
0112 5F0F SUBI R16,0xFF
0113 4F1F SBCI R17,0xFF
0114 3706 CPI R16,0x76
0115 E0E4 LDI R30,4
0116 071E CPC R17,R30
0117 F3D0 BCS 0x0112
0118 9508 RET
mod16u:
0119 9468 BSET 6
011A C001 RJMP xdiv16u
div16u:
011B 94E8 BCLR 6
xdiv16u:
011C 92EA ST R14,-Y
011D 92FA ST R15,-Y
011E 938A ST R24,-Y
011F 24EE CLR R14
0120 24FF CLR R15
0121 E180 LDI R24,0x10
0122 0F00 LSL R16
0123 1F11 ROL R17
0124 1CEE ROL R14
0125 1CFF ROL R15
0126 16E2 CP R14,R18
0127 06F3 CPC R15,R19
0128 F018 BCS 0x012C
0129 1AE2 SUB R14,R18
012A 0AF3 SBC R15,R19
012B 9503 INC R16
012C 958A DEC R24
012D F7A1 BNE 0x0122
012E F416 BRTC 0x0131
012F 2D0E MOV R16,R14
0130 2D1F MOV R17,R15
0131 9189 LD R24,Y+
0132 90F9 LD R15,Y+
0133 90E9 LD R14,Y+
0134 9508 RET
push_gset1:
0135 935A ST R21,-Y
0136 934A ST R20,-Y
0137 9508 RET
pop_gset1:
0138 E0E1 LDI R30,1
pop:
0139 9149 LD R20,Y+
013A 9159 LD R21,Y+
013B FDE0 SBRC R30,0
013C 9508 RET
013D 9169 LD R22,Y+
013E 9179 LD R23,Y+
013F FDE1 SBRC R30,1
0140 9508 RET
0141 90A9 LD R10,Y+
0142 90B9 LD R11,Y+
0143 FDE2 SBRC R30,2
0144 9508 RET
0145 90C9 LD R12,Y+
0146 90D9 LD R13,Y+
0147 FDE3 SBRC R30,3
0148 9508 RET
0149 90E9 LD R14,Y+
014A 90F9 LD R15,Y+
014B 9508 RET
push_gset2:
014C 937A ST R23,-Y
014D 936A ST R22,-Y
014E CFE6 RJMP push_gset1
push_gset3:
014F 92BA ST R11,-Y
0150 92AA ST R10,-Y
0151 CFFA RJMP push_gset2
push_gset4:
0152 92DA ST R13,-Y
0153 92CA ST R12,-Y
0154 CFFA RJMP push_gset3
pop_gset4:
0155 E0E8 LDI R30,0x8
0156 CFE2 RJMP pop
lsr32:
0157 920F PUSH R0
0158 9009 LD R0,Y+
0159 2000 TST R0
015A F031 BEQ 0x0161
015B 9536 LSR R19
015C 9527 ROR R18
015D 9517 ROR R17
015E 9507 ROR R16
015F 940A DEC R0
0160 CFF8 RJMP 0x0159
0161 900F POP R0
0162 9508 RET
lsl8:
0163 2311 TST R17
0164 F019 BEQ 0x0168
0165 0F00 LSL R16
0166 951A DEC R17
0167 CFFB RJMP lsl8
0168 9508 RET
long_prolog:
0169 928A ST R8,-Y
016A 929A ST R9,-Y
016B 92AA ST R10,-Y
016C 92BA ST R11,-Y
016D 93EA ST R30,-Y
016E 938A ST R24,-Y
016F 939A ST R25,-Y
0170 93AA ST R26,-Y
0171 93BA ST R27,-Y
0172 8589 LDD R24,9+Y
0173 859A LDD R25,10+Y
0174 85AB LDD R26,11+Y
0175 85BC LDD R27,12+Y
0176 9508 RET
long_epilog:
0177 91B9 LD R27,Y+
0178 91A9 LD R26,Y+
0179 9199 LD R25,Y+
017A 9189 LD R24,Y+
017B 91E9 LD R30,Y+
017C 90B9 LD R11,Y+
017D 90A9 LD R10,Y+
017E 9099 LD R9,Y+
017F 9089 LD R8,Y+
0180 9624 ADIW R28,4
0181 9508 RET
tstzero1:
0182 27EE CLR R30
0183 2BE0 OR R30,R16
0184 2BE1 OR R30,R17
0185 2BE2 OR R30,R18
0186 2BE3 OR R30,R19
0187 9508 RET
tstzero2:
0188 27EE CLR R30
0189 2BE8 OR R30,R24
018A 2BE9 OR R30,R25
018B 2BEA OR R30,R26
018C 2BEB OR R30,R27
018D 9508 RET
mpy32u:
mpy32s:
018E DFDA RCALL long_prolog
018F DFF2 RCALL tstzero1
0190 F0C9 BEQ 0x01AA
0191 2488 CLR R8
0192 2499 CLR R9
0193 24AA CLR R10
0194 24BB CLR R11
0195 DFF2 RCALL tstzero2
0196 F079 BEQ 0x01A6
0197 9536 LSR R19
0198 9527 ROR R18
0199 9517 ROR R17
019A 9507 ROR R16
019B F420 BCC 0x01A0
019C 0E88 ADD R8,R24
019D 1E99 ADC R9,R25
019E 1EAA ADC R10,R26
019F 1EBB ADC R11,R27
01A0 0F88 LSL R24
01A1 1F99 ROL R25
01A2 1FAA ROL R26
01A3 1FBB ROL R27
01A4 DFDD RCALL tstzero1
01A5 F789 BNE 0x0197
01A6 2D08 MOV R16,R8
01A7 2D19 MOV R17,R9
01A8 2D2A MOV R18,R10
01A9 2D3B MOV R19,R11
01AA CFCC RJMP long_epilog
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -