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

📄 test.lst

📁 avr单片机mega128 的串口通讯的完整程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
    014F 0192      MOVW	R18,R4
    0150 940E01DD  CALL	mod32u
    0152 E644      LDI	R20,0x64
    0153 E050      LDI	R21,0
    0154 E060      LDI	R22,0
    0155 E070      LDI	R23,0
    0156 937A      ST	R23,-Y
    0157 936A      ST	R22,-Y
    0158 935A      ST	R21,-Y
    0159 934A      ST	R20,-Y
    015A 940E01DB  CALL	div32u
    015C 0118      MOVW	R2,R16
    015D 0129      MOVW	R4,R18
    015E E340      LDI	R20,0x30
    015F E050      LDI	R21,0
    0160 E060      LDI	R22,0
    0161 E070      LDI	R23,0
    0162 0E24      ADD	R2,R20
    0163 1E35      ADC	R3,R21
    0164 1E46      ADC	R4,R22
    0165 1E57      ADC	R5,R23
    0166 01F5      MOVW	R30,R10
    0167 8221      STD	Z+1,R2
(0104)    ss[2]=48+(hh%100)/10;
    0168 E644      LDI	R20,0x64
    0169 E050      LDI	R21,0
    016A E060      LDI	R22,0
    016B E070      LDI	R23,0
    016C 01FE      MOVW	R30,R28
    016D 8026      LDD	R2,Z+6
    016E 8037      LDD	R3,Z+7
    016F 8440      LDD	R4,Z+8
    0170 8451      LDD	R5,Z+9
    0171 937A      ST	R23,-Y
    0172 936A      ST	R22,-Y
    0173 935A      ST	R21,-Y
    0174 934A      ST	R20,-Y
    0175 0181      MOVW	R16,R2
    0176 0192      MOVW	R18,R4
    0177 940E01DD  CALL	mod32u
    0179 E04A      LDI	R20,0xA
    017A E050      LDI	R21,0
    017B E060      LDI	R22,0
    017C E070      LDI	R23,0
    017D 937A      ST	R23,-Y
    017E 936A      ST	R22,-Y
    017F 935A      ST	R21,-Y
    0180 934A      ST	R20,-Y
    0181 940E01DB  CALL	div32u
    0183 0118      MOVW	R2,R16
    0184 0129      MOVW	R4,R18
    0185 E340      LDI	R20,0x30
    0186 E050      LDI	R21,0
    0187 E060      LDI	R22,0
    0188 E070      LDI	R23,0
    0189 0E24      ADD	R2,R20
    018A 1E35      ADC	R3,R21
    018B 1E46      ADC	R4,R22
    018C 1E57      ADC	R5,R23
    018D 01F5      MOVW	R30,R10
    018E 8222      STD	Z+2,R2
(0105)    ss[3]=48+(hh%10);
    018F E04A      LDI	R20,0xA
    0190 E050      LDI	R21,0
    0191 E060      LDI	R22,0
    0192 E070      LDI	R23,0
    0193 01FE      MOVW	R30,R28
    0194 8026      LDD	R2,Z+6
    0195 8037      LDD	R3,Z+7
    0196 8440      LDD	R4,Z+8
    0197 8451      LDD	R5,Z+9
    0198 937A      ST	R23,-Y
    0199 936A      ST	R22,-Y
    019A 935A      ST	R21,-Y
    019B 934A      ST	R20,-Y
    019C 0181      MOVW	R16,R2
    019D 0192      MOVW	R18,R4
    019E 940E01DD  CALL	mod32u
    01A0 0118      MOVW	R2,R16
    01A1 0129      MOVW	R4,R18
    01A2 E340      LDI	R20,0x30
    01A3 E050      LDI	R21,0
    01A4 E060      LDI	R22,0
    01A5 E070      LDI	R23,0
    01A6 0E24      ADD	R2,R20
    01A7 1E35      ADC	R3,R21
    01A8 1E46      ADC	R4,R22
    01A9 1E57      ADC	R5,R23
    01AA 01F5      MOVW	R30,R10
    01AB 8223      STD	Z+3,R2
(0106) 
(0107)    return ss;	
    01AC 0185      MOVW	R16,R10
    01AD 940E024C  CALL	pop_gset3
    01AF 9624      ADIW	R28,4
    01B0 9508      RET
FILE: C:\AVR_TOOL\test\delay.c
(0001) /*--------------------------------------------------*/
(0002) /*             AVR-ARM开发网论坛                    */
(0003) /*           http://www.avrarm.com                  */
(0004) /*            AVR生成代码测试程序                   */
(0005) /*--------------------------------------------------*/
(0006) /*     程序由AVR辅助开发工具V2.1.1自动生成          */
(0007) /*     AVR系统的处理器为:   ATMega128               */
(0008) /*     AVR系统的晶振频率:   8.0000 Mhz             */
(0009) /*--------------------------------------------------*/
(0010) 
(0011) #include <iom128v.h>
(0012) #include "delay.h"
(0013) 
(0014) /*-----------------------------------------------------------------------
(0015) delay_us	   :1us延时函数
(0016) -----------------------------------------------------------------------*/
(0017) void delay_us(void)
(0018) {
(0019)    unsigned char t=2;
_delay_us:
  t                    --> R16
    01B1 E002      LDI	R16,2
(0020)    t--;
    01B2 950A      DEC	R16
    01B3 9508      RET
_delay_nus:
  t                    --> R20
    01B4 940E0257  CALL	push_gset1
    01B6 01A8      MOVW	R20,R16
(0021) }
(0022) 
(0023) /*-----------------------------------------------------------------------
(0024) delay_nus          :长延时函数
(0025) 
(0026) 输入参数: t        :延时时间 us
(0027) -----------------------------------------------------------------------*/
(0028) void delay_nus(unsigned int t)
(0029) {
    01B7 C001      RJMP	0x01B9
(0030)     while (t--)
(0031)        delay_us();
    01B8 DFF8      RCALL	_delay_us
    01B9 011A      MOVW	R2,R20
    01BA 5041      SUBI	R20,1
    01BB 4050      SBCI	R21,0
    01BC 2022      TST	R2
    01BD F7D1      BNE	0x01B8
    01BE 2033      TST	R3
    01BF F7C1      BNE	0x01B8
    01C0 940E025A  CALL	pop_gset1
    01C2 9508      RET
(0032) }
(0033) 
(0034) /*-----------------------------------------------------------------------
(0035) delay_ms	   :1ms延时函数
(0036) -----------------------------------------------------------------------*/
(0037) void delay_ms(void)
(0038) {
(0039)    delay_nus(1000);
_delay_ms:
    01C3 EE08      LDI	R16,0xE8
    01C4 E013      LDI	R17,3
    01C5 DFEE      RCALL	_delay_nus
    01C6 9508      RET
_delay_nms:
  t                    --> R20
    01C7 940E0257  CALL	push_gset1
    01C9 01A8      MOVW	R20,R16
(0040) }
(0041) 
(0042) /*-----------------------------------------------------------------------
(0043) delay_nms          :长延时函数
(0044) 
(0045) 输入参数: t        :延时时间 ms
(0046) -----------------------------------------------------------------------*/
(0047) void delay_nms(unsigned int t)
(0048) {
    01CA C001      RJMP	0x01CC
(0049)     while (t--)
(0050)        delay_ms();
FILE: <library>
    01CB DFF7      RCALL	_delay_ms
    01CC 011A      MOVW	R2,R20
    01CD 5041      SUBI	R20,1
    01CE 4050      SBCI	R21,0
    01CF 2022      TST	R2
    01D0 F7D1      BNE	0x01CB
    01D1 2033      TST	R3
    01D2 F7C1      BNE	0x01CB
    01D3 940E025A  CALL	pop_gset1
    01D5 9508      RET
push_arg4:
    01D6 933A      ST	R19,-Y
    01D7 932A      ST	R18,-Y
push_arg2:
    01D8 931A      ST	R17,-Y
    01D9 930A      ST	R16,-Y
    01DA 9508      RET
div32u:
    01DB 94E8      BCLR	6
    01DC C001      RJMP	0x01DE
mod32u:
    01DD 9468      BSET	6
    01DE D02F      RCALL	long_div_prolog
    01DF 24CC      CLR	R12
    01E0 C008      RJMP	0x01E9
div32s:
    01E1 94E8      BCLR	6
    01E2 C001      RJMP	0x01E4
mod32s:
    01E3 9468      BSET	6
    01E4 D029      RCALL	long_div_prolog
    01E5 FD37      SBRC	R19,7
    01E6 D053      RCALL	neg_R16_R19
    01E7 FDB7      SBRC	R27,7
    01E8 D05A      RCALL	neg_R24_R27
    01E9 2477      CLR	R7
    01EA 2488      CLR	R8
    01EB 2499      CLR	R9
    01EC 24AA      CLR	R10
    01ED 24BB      CLR	R11
    01EE D041      RCALL	tst_R16_R19
    01EF F0C1      BEQ	0x0208
    01F0 D044      RCALL	tst_R24_R27
    01F1 F0B1      BEQ	0x0208
    01F2 E2E8      LDI	R30,0x28
    01F3 0F00      LSL	R16
    01F4 1F11      ROL	R17
    01F5 1F22      ROL	R18
    01F6 1F33      ROL	R19
    01F7 1C77      ROL	R7
    01F8 1C88      ROL	R8
    01F9 1C99      ROL	R9
    01FA 1CAA      ROL	R10
    01FB 1CBB      ROL	R11
    01FC 1688      CP	R8,R24
    01FD 0699      CPC	R9,R25
    01FE 06AA      CPC	R10,R26
    01FF 06BB      CPC	R11,R27
    0200 F028      BCS	0x0206
    0201 1A88      SUB	R8,R24
    0202 0A99      SBC	R9,R25
    0203 0AAA      SBC	R10,R26
    0204 0ABB      SBC	R11,R27
    0205 9503      INC	R16
    0206 95EA      DEC	R30
    0207 F759      BNE	0x01F3
    0208 F426      BRTC	0x020D
    0209 2D08      MOV	R16,R8
    020A 2D19      MOV	R17,R9
    020B 2D2A      MOV	R18,R10
    020C 2D3B      MOV	R19,R11
    020D C013      RJMP	long_div_epilog
long_div_prolog:
    020E 927A      ST	R7,-Y
    020F 928A      ST	R8,-Y
    0210 929A      ST	R9,-Y
    0211 92AA      ST	R10,-Y
    0212 92BA      ST	R11,-Y
    0213 92CA      ST	R12,-Y
    0214 93EA      ST	R30,-Y
    0215 938A      ST	R24,-Y
    0216 939A      ST	R25,-Y
    0217 93AA      ST	R26,-Y
    0218 93BA      ST	R27,-Y
    0219 858B      LDD	R24,Y+11
    021A 859C      LDD	R25,Y+12
    021B 85AD      LDD	R26,Y+13
    021C 85BE      LDD	R27,Y+14
    021D 2EC3      MOV	R12,R19
    021E F00E      BRTS	0x0220
    021F 26CB      EOR	R12,R27
    0220 9508      RET
long_div_epilog:
    0221 FCC7      SBRC	R12,7
    0222 D017      RCALL	neg_R16_R19
    0223 91B9      LD	R27,Y+
    0224 91A9      LD	R26,Y+
    0225 9199      LD	R25,Y+
    0226 9189      LD	R24,Y+
    0227 91E9      LD	R30,Y+
    0228 90C9      LD	R12,Y+
    0229 90B9      LD	R11,Y+
    022A 90A9      LD	R10,Y+
    022B 9099      LD	R9,Y+
    022C 9089      LD	R8,Y+
    022D 9079      LD	R7,Y+
    022E 9624      ADIW	R28,4
    022F 9508      RET
tst_R16_R19:
    0230 2FE0      MOV	R30,R16
    0231 2BE1      OR	R30,R17
    0232 2BE2      OR	R30,R18
    0233 2BE3      OR	R30,R19
    0234 9508      RET
tst_R24_R27:
    0235 2FE8      MOV	R30,R24
    0236 2BE9      OR	R30,R25
    0237 2BEA      OR	R30,R26
    0238 2BEB      OR	R30,R27
    0239 9508      RET
neg_R16_R19:
    023A 9500      COM	R16
    023B 9510      COM	R17
    023C 9520      COM	R18
    023D 9530      COM	R19
    023E 5F0F      SUBI	R16,0xFF
    023F 4F1F      SBCI	R17,0xFF
    0240 4F2F      SBCI	R18,0xFF
    0241 4F3F      SBCI	R19,0xFF
    0242 9508      RET
neg_R24_R27:
    0243 9580      COM	R24
    0244 9590      COM	R25
    0245 95A0      COM	R26
    0246 95B0      COM	R27
    0247 5F8F      SUBI	R24,0xFF
    0248 4F9F      SBCI	R25,0xFF
    0249 4FAF      SBCI	R26,0xFF
    024A 4FBF      SBCI	R27,0xFF
    024B 9508      RET
pop_gset3:
    024C E0E4      LDI	R30,4
    024D 940C025B  JMP	pop
push_gset5:
    024F 92FA      ST	R15,-Y
    0250 92EA      ST	R14,-Y
push_gset4:
    0251 92DA      ST	R13,-Y
    0252 92CA      ST	R12,-Y
push_gset3:
    0253 92BA      ST	R11,-Y
    0254 92AA      ST	R10,-Y
push_gset2:
    0255 937A      ST	R23,-Y
    0256 936A      ST	R22,-Y
push_gset1:
    0257 935A      ST	R21,-Y
    0258 934A      ST	R20,-Y
    0259 9508      RET
pop_gset1:
    025A E0E1      LDI	R30,1
pop:
    025B 9149      LD	R20,Y+
    025C 9159      LD	R21,Y+
    025D FDE0      SBRC	R30,0
    025E 9508      RET
    025F 9169      LD	R22,Y+
    0260 9179      LD	R23,Y+
    0261 FDE1      SBRC	R30,1
    0262 9508      RET
    0263 90A9      LD	R10,Y+
    0264 90B9      LD	R11,Y+
    0265 FDE2      SBRC	R30,2
    0266 9508      RET
    0267 90C9      LD	R12,Y+
    0268 90D9      LD	R13,Y+
    0269 FDE3      SBRC	R30,3
    026A 9508      RET
    026B 90E9      LD	R14,Y+
    026C 90F9      LD	R15,Y+
    026D 9508      RET

⌨️ 快捷键说明

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