⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shiyan.lst

📁 已经调试好的AVR单片机MEGA8的串口打印输出程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
_strcpy:
    026A 2FA0      MOV	R26,R16
    026B 2FB1      MOV	R27,R17
    026C 2FE2      MOV	R30,R18
    026D 2FF3      MOV	R31,R19
    026E 9001      LD	R0,Z+
    026F 920D      ST	R0,X+
    0270 2000      TST	R0
    0271 F7E1      BNE	0x026E
    0272 9508      RET
push_arg4:
    0273 933A      ST	R19,-Y
    0274 932A      ST	R18,-Y
push_arg2:
    0275 931A      ST	R17,-Y
    0276 930A      ST	R16,-Y
    0277 9508      RET
mod16s:
    0278 9468      BSET	6
    0279 92DA      ST	R13,-Y
    027A 2ED1      MOV	R13,R17
    027B C004      RJMP	0x0280
div16s:
    027C 94E8      BCLR	6
    027D 92DA      ST	R13,-Y
    027E 2ED1      MOV	R13,R17
    027F 26D3      EOR	R13,R19
    0280 FF17      SBRS	R17,7
    0281 C001      RJMP	0x0283
    0282 D162      RCALL	0x03E5
    0283 FF37      SBRS	R19,7
    0284 C004      RJMP	0x0289
    0285 9530      COM	R19
    0286 9520      COM	R18
    0287 5F2F      SUBI	R18,0xFF
    0288 4F3F      SBCI	R19,0xFF
    0289 D008      RCALL	xdiv16u
    028A FED7      SBRS	R13,7
    028B C001      RJMP	0x028D
    028C D158      RCALL	0x03E5
    028D 90D9      LD	R13,Y+
    028E 9508      RET
mod16u:
    028F 9468      BSET	6
    0290 C001      RJMP	xdiv16u
div16u:
    0291 94E8      BCLR	6
xdiv16u:
    0292 92EA      ST	R14,-Y
    0293 92FA      ST	R15,-Y
    0294 938A      ST	R24,-Y
    0295 24EE      CLR	R14
    0296 24FF      CLR	R15
    0297 E180      LDI	R24,0x10
    0298 0F00      LSL	R16
    0299 1F11      ROL	R17
    029A 1CEE      ROL	R14
    029B 1CFF      ROL	R15
    029C 16E2      CP	R14,R18
    029D 06F3      CPC	R15,R19
    029E F018      BCS	0x02A2
    029F 1AE2      SUB	R14,R18
    02A0 0AF3      SBC	R15,R19
    02A1 9503      INC	R16
    02A2 958A      DEC	R24
    02A3 F7A1      BNE	0x0298
    02A4 F416      BRTC	0x02A7
    02A5 2D0E      MOV	R16,R14
    02A6 2D1F      MOV	R17,R15
    02A7 9189      LD	R24,Y+
    02A8 90F9      LD	R15,Y+
    02A9 90E9      LD	R14,Y+
    02AA 9508      RET
pop_gset4:
    02AB E0E8      LDI	R30,0x8
    02AC C00E      RJMP	pop
pop_gset5:
    02AD 27EE      CLR	R30
    02AE C00C      RJMP	pop
push_gset5:
    02AF 92FA      ST	R15,-Y
    02B0 92EA      ST	R14,-Y
push_gset4:
    02B1 92DA      ST	R13,-Y
    02B2 92CA      ST	R12,-Y
push_gset3:
    02B3 92BA      ST	R11,-Y
    02B4 92AA      ST	R10,-Y
push_gset2:
    02B5 937A      ST	R23,-Y
    02B6 936A      ST	R22,-Y
push_gset1:
    02B7 935A      ST	R21,-Y
    02B8 934A      ST	R20,-Y
    02B9 9508      RET
pop_gset1:
    02BA E0E1      LDI	R30,1
pop:
    02BB 9149      LD	R20,Y+
    02BC 9159      LD	R21,Y+
    02BD FDE0      SBRC	R30,0
    02BE 9508      RET
    02BF 9169      LD	R22,Y+
    02C0 9179      LD	R23,Y+
    02C1 FDE1      SBRC	R30,1
    02C2 9508      RET
    02C3 90A9      LD	R10,Y+
    02C4 90B9      LD	R11,Y+
    02C5 FDE2      SBRC	R30,2
    02C6 9508      RET
    02C7 90C9      LD	R12,Y+
    02C8 90D9      LD	R13,Y+
    02C9 FDE3      SBRC	R30,3
    02CA 9508      RET
    02CB 90E9      LD	R14,Y+
    02CC 90F9      LD	R15,Y+
    02CD 9508      RET
xicall:
    02CE 920A      ST	R0,-Y
    02CF 95C8      LPM
    02D0 920A      ST	R0,-Y
    02D1 9631      ADIW	R30,1
    02D2 95C8      LPM
    02D3 2DF0      MOV	R31,R0
    02D4 91E9      LD	R30,Y+
    02D5 9009      LD	R0,Y+
    02D6 9409      IJMP
_putchar:
    02D7 DFDF      RCALL	push_gset1
    02D8 2F40      MOV	R20,R16
    02D9 90200154  LDS	R2,_textmode
    02DB 90300155  LDS	R3,_textmode+1
    02DD 2022      TST	R2
    02DE F411      BNE	0x02E1
    02DF 2033      TST	R3
    02E0 F021      BEQ	0x02E5
    02E1 304A      CPI	R20,0xA
    02E2 F411      BNE	0x02E5
    02E3 E00D      LDI	R16,0xD
    02E4 DFF2      RCALL	_putchar
    02E5 9B5D      SBIS	0x0B,5
    02E6 CFFE      RJMP	0x02E5
    02E7 B94C      OUT	0x0C,R20
    02E8 2F04      MOV	R16,R20
    02E9 2711      CLR	R17
    02EA DFCF      RCALL	pop_gset1
    02EB 9508      RET
_getchar:
    02EC 9B5F      SBIS	0x0B,7
    02ED CFFE      RJMP	_getchar
    02EE B10C      IN	R16,0x0C
    02EF 2711      CLR	R17
    02F0 9508      RET
__va_start:
    02F1 2F82      MOV	R24,R18
    02F2 2F93      MOV	R25,R19
    02F3 9601      ADIW	R24,1
    02F4 7F8E      ANDI	R24,0xFE
    02F5 0F80      ADD	R24,R16
    02F6 1F91      ADC	R25,R17
    02F7 2F08      MOV	R16,R24
    02F8 2F19      MOV	R17,R25
    02F9 9508      RET
_itoa:
    02FA DFB4      RCALL	push_gset5
    02FB 2EC2      MOV	R12,R18
    02FC 2ED3      MOV	R13,R19
    02FD 2F40      MOV	R20,R16
    02FE 2F51      MOV	R21,R17
    02FF 97A2      SBIW	R28,0x22
    0300 A4AC      LDD	R10,Y+44
    0301 A4BD      LDD	R11,Y+45
    0302 2D8C      MOV	R24,R12
    0303 2D9D      MOV	R25,R13
    0304 3080      CPI	R24,0
    0305 E0E0      LDI	R30,0
    0306 079E      CPC	R25,R30
    0307 F42C      BGE	0x030D
    0308 E061      LDI	R22,1
    0309 D0CC      RCALL	0x03D6
    030A 2EC8      MOV	R12,R24
    030B 2ED9      MOV	R13,R25
    030C C001      RJMP	0x030E
    030D 2766      CLR	R22
    030E 2422      CLR	R2
    030F A229      STD	Y+33,R2
    0310 2F8C      MOV	R24,R28
    0311 2F9D      MOV	R25,R29
    0312 9681      ADIW	R24,0x21
    0313 2EE8      MOV	R14,R24
    0314 2EF9      MOV	R15,R25
    0315 D09C      RCALL	0x03B2
    0316 D0BA      RCALL	0x03D1
    0317 DF60      RCALL	mod16s
    0318 2FE0      MOV	R30,R16
    0319 2FF1      MOV	R31,R17
    031A EF81      LDI	R24,0xF1
    031B E090      LDI	R25,0
    031C D09D      RCALL	0x03BA
    031D D0B3      RCALL	0x03D1
    031E DF5D      RCALL	div16s
    031F 2EC0      MOV	R12,R16
    0320 2ED1      MOV	R13,R17
    0321 20CC      TST	R12
    0322 F791      BNE	0x0315
    0323 20DD      TST	R13
    0324 F781      BNE	0x0315
    0325 2366      TST	R22
    0326 F029      BEQ	0x032C
    0327 D08A      RCALL	0x03B2
    0328 E28D      LDI	R24,0x2D
    0329 2DE2      MOV	R30,R2
    032A 2DF3      MOV	R31,R3
    032B 8380      STD	Z+0,R24
    032C 2D2E      MOV	R18,R14
    032D 2D3F      MOV	R19,R15
    032E 2F04      MOV	R16,R20
    032F 2F15      MOV	R17,R21
    0330 DF39      RCALL	_strcpy
    0331 96A2      ADIW	R28,0x22
    0332 DF7A      RCALL	pop_gset5
    0333 9508      RET
_utoa:
    0334 DF7C      RCALL	push_gset4
    0335 2EA2      MOV	R10,R18
    0336 2EB3      MOV	R11,R19
    0337 2EC0      MOV	R12,R16
    0338 2ED1      MOV	R13,R17
    0339 97A2      SBIW	R28,0x22
    033A A56A      LDD	R22,Y+42
    033B A57B      LDD	R23,Y+43
    033C 2422      CLR	R2
    033D A229      STD	Y+33,R2
    033E 2F4C      MOV	R20,R28
    033F 2F5D      MOV	R21,R29
    0340 5D4F      SUBI	R20,0xDF
    0341 4F5F      SBCI	R21,0xFF
    0342 2F84      MOV	R24,R20
    0343 2F95      MOV	R25,R21
    0344 9701      SBIW	R24,1
    0345 2E28      MOV	R2,R24
    0346 2E39      MOV	R3,R25
    0347 2F48      MOV	R20,R24
    0348 2F59      MOV	R21,R25
    0349 D096      RCALL	0x03E0
    034A DF44      RCALL	mod16u
    034B 2FE0      MOV	R30,R16
    034C 2FF1      MOV	R31,R17
    034D E186      LDI	R24,0x16
    034E E091      LDI	R25,1
    034F D06A      RCALL	0x03BA
    0350 D08F      RCALL	0x03E0
    0351 DF3F      RCALL	div16u
    0352 2EA0      MOV	R10,R16
    0353 2EB1      MOV	R11,R17
    0354 20AA      TST	R10
    0355 F761      BNE	0x0342
    0356 20BB      TST	R11
    0357 F751      BNE	0x0342
    0358 2F24      MOV	R18,R20
    0359 2F35      MOV	R19,R21
    035A 2D0C      MOV	R16,R12
    035B 2D1D      MOV	R17,R13
    035C DF0D      RCALL	_strcpy
    035D 96A2      ADIW	R28,0x22
    035E DF4C      RCALL	pop_gset4
    035F 9508      RET
_islower:
    0360 E289      LDI	R24,0x29
    0361 E090      LDI	R25,0
    0362 2E20      MOV	R2,R16
    0363 2E31      MOV	R3,R17
    0364 0E28      ADD	R2,R24
    0365 1E39      ADC	R3,R25
    0366 2DE2      MOV	R30,R2
    0367 2DF3      MOV	R31,R3
    0368 95C8      LPM
    0369 2D00      MOV	R16,R0
    036A 2711      CLR	R17
    036B 7002      ANDI	R16,2
    036C 7010      ANDI	R17,0
    036D 9508      RET
_toupper:
    036E DF48      RCALL	push_gset1
    036F 2F40      MOV	R20,R16
    0370 2F51      MOV	R21,R17
    0371 2F04      MOV	R16,R20
    0372 2F15      MOV	R17,R21
    0373 DFEC      RCALL	_islower
    0374 3000      CPI	R16,0
    0375 0701      CPC	R16,R17
    0376 F039      BEQ	0x037E
    0377 2F04      MOV	R16,R20
    0378 2F15      MOV	R17,R21
    0379 5601      SUBI	R16,0x61
    037A 4010      SBCI	R17,0
    037B 5B0F      SUBI	R16,0xBF
    037C 4F1F      SBCI	R17,0xFF
    037D C002      RJMP	0x0380
    037E 2F04      MOV	R16,R20
    037F 2F15      MOV	R17,R21
    0380 DF39      RCALL	pop_gset1
    0381 9508      RET
_printf:
    0382 DEF0      RCALL	push_arg4
    0383 DF33      RCALL	push_gset1
    0384 9722      SBIW	R28,2
    0385 E022      LDI	R18,2
    0386 E030      LDI	R19,0
    0387 2F0C      MOV	R16,R28
    0388 2F1D      MOV	R17,R29
    0389 5F0C      SUBI	R16,0xFC
    038A 4F1F      SBCI	R17,0xFF
    038B DF65      RCALL	__va_start
    038C 2F40      MOV	R20,R16
    038D 2F51      MOV	R21,R17
    038E 8359      STD	Y+1,R21
    038F 8348      STD	Y+0,R20
    0390 812C      LDD	R18,Y+4
    0391 813D      LDD	R19,Y+5
    0392 E206      LDI	R16,0x26
    0393 E010      LDI	R17,0
    0394 DDAC      RCALL	__print
    0395 2F40      MOV	R20,R16
    0396 2F51      MOV	R21,R17
    0397 9622      ADIW	R28,2
    0398 DF21      RCALL	pop_gset1
    0399 9624      ADIW	R28,4
    039A 9508      RET
<created procedures>:
    039B 8D88      LDD	R24,Y+24
    039C 8D99      LDD	R25,Y+25
    039D 9602      ADIW	R24,2
    039E 8F99      STD	Y+25,R25
    039F 8F88      STD	Y+24,R24
    03A0 2FE8      MOV	R30,R24
    03A1 2FF9      MOV	R31,R25
    03A2 9732      SBIW	R30,2
    03A3 9508      RET
    03A4 818E      LDD	R24,Y+6
    03A5 819F      LDD	R25,Y+7
    03A6 9601      ADIW	R24,1
    03A7 839F      STD	Y+7,R25
    03A8 838E      STD	Y+6,R24
    03A9 9508      RET
    03AA E090      LDI	R25,0
    03AB 8399      STD	Y+1,R25
    03AC 8388      STD	Y+0,R24
    03AD 8528      LDD	R18,Y+8
    03AE 8539      LDD	R19,Y+9
    03AF 2F04      MOV	R16,R20
    03B0 2F15      MOV	R17,R21
    03B1 9508      RET
    03B2 2D8E      MOV	R24,R14
    03B3 2D9F      MOV	R25,R15
    03B4 9701      SBIW	R24,1
    03B5 2E28      MOV	R2,R24
    03B6 2E39      MOV	R3,R25
    03B7 2EE8      MOV	R14,R24
    03B8 2EF9      MOV	R15,R25
    03B9 9508      RET
    03BA 0FE8      ADD	R30,R24
    03BB 1FF9      ADC	R31,R25
    03BC 8040      LDD	R4,Z+0
    03BD 2DE2      MOV	R30,R2
    03BE 2DF3      MOV	R31,R3
    03BF 8240      STD	Z+0,R4
    03C0 9508      RET
    03C1 898E      LDD	R24,Y+22
    03C2 899F      LDD	R25,Y+23
    03C3 9601      ADIW	R24,1
    03C4 8B9F      STD	Y+23,R25
    03C5 8B8E      STD	Y+22,R24
    03C6 9508      RET
    03C7 E38B      LDI	R24,0x3B
    03C8 E091      LDI	R25,1
    03C9 2EC8      MOV	R12,R24
    03CA 2ED9      MOV	R13,R25
    03CB 9508      RET
    03CC 8020      LDD	R2,Z+0
    03CD 8031      LDD	R3,Z+1
    03CE 8639      STD	Y+9,R3
    03CF 8628      STD	Y+8,R2
    03D0 9508      RET
    03D1 2D2A      MOV	R18,R10
    03D2 2D3B      MOV	R19,R11
    03D3 2D0C      MOV	R16,R12
    03D4 2D1D      MOV	R17,R13
    03D5 9508      RET
    03D6 9580      COM	R24
    03D7 9590      COM	R25
    03D8 5F8F      SUBI	R24,0xFF
    03D9 4F9F      SBCI	R25,0xFF
    03DA 9508      RET
    03DB 2DEC      MOV	R30,R12
    03DC 2DFD      MOV	R31,R13
    03DD 8020      LDD	R2,Z+0
    03DE 2022      TST	R2
    03DF 9508      RET
    03E0 2F26      MOV	R18,R22
    03E1 2F37      MOV	R19,R23
    03E2 2D0A      MOV	R16,R10
    03E3 2D1B      MOV	R17,R11
    03E4 9508      RET
    03E5 9510      COM	R17
    03E6 9500      COM	R16
    03E7 5F0F      SUBI	R16,0xFF
    03E8 4F1F      SBCI	R17,0xFF
    03E9 9508      RET

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -