📄 main.lis
字号:
0128 21E0 ldi R18,1
012A 02E0 ldi R16,2
012C 0E940000 xcall _LCD_DisplayString
0130 .dbline 54
0130 ; put_string(value);
0130 8A01 movw R16,R20
0132 0E940000 xcall _put_string
0136 .dbline 55
0136 ; put_char(0x0d);
0136 0DE0 ldi R16,13
0138 10E0 ldi R17,0
013A 0E940000 xcall _put_char
013E .dbline 56
013E ; put_char(0x0a);
013E 0AE0 ldi R16,10
0140 10E0 ldi R17,0
0142 0E940000 xcall _put_char
0146 .dbline 57
0146 ; delay_nms(1000);
0146 08EE ldi R16,1000
0148 13E0 ldi R17,3
014A 0E940000 xcall _delay_nms
014E .dbline 58
014E ; if(RS_flag)
014E 20900000 lds R2,_RS_flag
0152 2220 tst R2
0154 49F0 breq L10
0156 X0:
0156 .dbline 59
0156 ; {
0156 .dbline 60
0156 ; LCD_DisplayString(2,10,RS);
0156 7983 std y+1,R23
0158 6883 std y+0,R22
015A 2AE0 ldi R18,10
015C 02E0 ldi R16,2
015E 0E940000 xcall _LCD_DisplayString
0162 .dbline 61
0162 ; RS_flag = 0;
0162 2224 clr R2
0164 20920000 sts _RS_flag,R2
0168 .dbline 62
0168 ; }
0168 L10:
0168 .dbline 63
0168 ; }
0168 L5:
0168 .dbline 40
0168 7ACF xjmp L4
016A X1:
016A .dbline -2
016A L1:
016A .dbline 0 ; func end
016A 2696 adiw R28,6
016C 0895 ret
016E .dbsym r test 10 pc
016E .dbsym r RS 22 pc
016E .dbsym l j 2 D
016E .dbsym r value 20 pc
016E .dbsym r count 10 I
016E .dbend
.area vector(rom, abs)
.org 44
002C 0C94B700 jmp _uart_rx_isr
.area text(rom, con, rel)
016E .dbfile E:\新建文件夹\ADDA_ICC\cfile\main.c
016E .dbfunc e uart_rx_isr _uart_rx_isr fV
.even
016E _uart_rx_isr::
016E 0A92 st -y,R0
0170 1A92 st -y,R1
0172 2A92 st -y,R2
0174 3A92 st -y,R3
0176 4A92 st -y,R4
0178 5A92 st -y,R5
017A 6A92 st -y,R6
017C 7A92 st -y,R7
017E 8A92 st -y,R8
0180 9A92 st -y,R9
0182 0A93 st -y,R16
0184 1A93 st -y,R17
0186 2A93 st -y,R18
0188 3A93 st -y,R19
018A 8A93 st -y,R24
018C 9A93 st -y,R25
018E AA93 st -y,R26
0190 BA93 st -y,R27
0192 EA93 st -y,R30
0194 FA93 st -y,R31
0196 0FB6 in R0,0x3f
0198 0A92 st -y,R0
019A .dbline -1
019A .dbline 70
019A ;
019A ; }
019A ; #pragma interrupt_handler uart_rx_isr:iv_USART_RXC
019A ; void uart_rx_isr(void)
019A ; /*#pragma vector = USART_RXC_vect
019A ; __interrupt void usart_isr( void )*/
019A ; {
019A .dbline 71
019A ; SREG &= !(1<<7);
019A 2224 clr R2
019C 2FBE out 0x3f,R2
019E .dbline 72
019E ; RS_flag = 1;
019E 81E0 ldi R24,1
01A0 80930000 sts _RS_flag,R24
01A4 .dbline 73
01A4 ; RSend++;
01A4 80910B00 lds R24,_RSend
01A8 8F5F subi R24,255 ; addi 1
01AA 80930B00 sts _RSend,R24
01AE .dbline 74
01AE ; RS_buf[RSend] = UDR;
01AE 80E0 ldi R24,<_RS_buf
01B0 90E0 ldi R25,>_RS_buf
01B2 E0910B00 lds R30,_RSend
01B6 FF27 clr R31
01B8 E80F add R30,R24
01BA F91F adc R31,R25
01BC 2CB0 in R2,0xc
01BE 2082 std z+0,R2
01C0 .dbline 75
01C0 ; put_char(RS_buf[RSend]);
01C0 E0910B00 lds R30,_RSend
01C4 FF27 clr R31
01C6 E80F add R30,R24
01C8 F91F adc R31,R25
01CA 0081 ldd R16,z+0
01CC 1127 clr R17
01CE 0E940000 xcall _put_char
01D2 .dbline 76
01D2 ; if(RSend>=10)
01D2 80910B00 lds R24,_RSend
01D6 8A30 cpi R24,10
01D8 18F0 brlo L13
01DA X2:
01DA .dbline 77
01DA ; {
01DA .dbline 78
01DA ; RSend = 0;
01DA 2224 clr R2
01DC 20920B00 sts _RSend,R2
01E0 .dbline 79
01E0 ; }
01E0 L13:
01E0 .dbline 80
01E0 ; SREG |= (1<<7);
01E0 7894 bset 7
01E2 .dbline -2
01E2 L12:
01E2 .dbline 0 ; func end
01E2 0990 ld R0,y+
01E4 0FBE out 0x3f,R0
01E6 F991 ld R31,y+
01E8 E991 ld R30,y+
01EA B991 ld R27,y+
01EC A991 ld R26,y+
01EE 9991 ld R25,y+
01F0 8991 ld R24,y+
01F2 3991 ld R19,y+
01F4 2991 ld R18,y+
01F6 1991 ld R17,y+
01F8 0991 ld R16,y+
01FA 9990 ld R9,y+
01FC 8990 ld R8,y+
01FE 7990 ld R7,y+
0200 6990 ld R6,y+
0202 5990 ld R5,y+
0204 4990 ld R4,y+
0206 3990 ld R3,y+
0208 2990 ld R2,y+
020A 1990 ld R1,y+
020C 0990 ld R0,y+
020E 1895 reti
0210 .dbend
.area bss(ram, con, rel)
0000 .dbfile E:\新建文件夹\ADDA_ICC\cfile\main.c
0000 _RS_flag::
0000 .blkb 1
0001 .dbsym e RS_flag _RS_flag c
0001 _RS_buf::
0001 .blkb 10
000B .dbsym e RS_buf _RS_buf A[10:10]c
000B _RSend::
000B .blkb 1
000C .dbsym e RSend _RSend c
.area lit(rom, con, rel)
0000 L9:
0000 0000C842 .word 0x0,0x42c8
0004 L8:
0004 00007A44 .word 0x0,0x447a
0008 L7:
0008 0000C841 .word 0x0,0x41c8
.area data(ram, con, rel)
0000 .dbfile E:\新建文件夹\ADDA_ICC\cfile\main.c
0000 L3:
0000 .blkb 8
.area idata
0000 302E303030205600 .byte 48,46,48,48,48,32,'V,0
.area data(ram, con, rel)
0008 .dbfile E:\新建文件夹\ADDA_ICC\cfile\main.c
0008 L2:
0008 .blkb 17
.area idata
0008 54686520566F6C746167652069733A20 .byte 'T,'h,'e,32,'V,'o,'l,'t,'a,'g,'e,32,'i,'s,58,32
0018 00 .byte 0
.area data(ram, con, rel)
0019 .dbfile E:\新建文件夹\ADDA_ICC\cfile\main.c
0019 ; }
0019 ;
0019 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -