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

📄 main.lis

📁 avr icc开发的avr单片机与pc机vb通讯控制程序
💻 LIS
字号:
                        .module main.c
                        .area data(ram, con, rel)
 0000           _data::
 0000                   .blkb 2
                        .area idata
 0000 0000              .byte 0,0
                        .area data(ram, con, rel)
 0002                   .blkb 2
                        .area idata
 0002 0000              .byte 0,0
                        .area data(ram, con, rel)
 0004                   .dbfile D:\dai\AVR_USART/main.h
 0004                   .dbsym e data _data A[4:4]c
 0004           _CNT::
 0004                   .blkb 1
                        .area idata
 0004 00                .byte 0
                        .area data(ram, con, rel)
 0005                   .dbfile D:\dai\AVR_USART/main.h
 0005                   .dbsym e CNT _CNT c
 0005           _RsBytes::
 0005                   .blkb 2
                        .area idata
 0005 0000              .word 0
                        .area data(ram, con, rel)
 0007                   .dbfile D:\dai\AVR_USART/main.h
 0007                   .dbfile D:\dai\AVR_USART\main.c
 0007                   .dbsym e RsBytes _RsBytes I
 0007           _flag::
 0007                   .blkb 1
                        .area idata
 0007 00                .byte 0
                        .area data(ram, con, rel)
 0008                   .dbfile D:\dai\AVR_USART\main.c
 0008                   .dbsym e flag _flag c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\dai\AVR_USART\main.c
 0000                   .dbfunc e main _main fV
 0000           ;            msg -> R20,R21
                        .even
 0000           _main::
 0000 2297              sbiw R28,2
 0002                   .dbline -1
 0002                   .dbline 15
 0002           ; #define MAIN_C
 0002           ; #include "includes.h"
 0002           ; /***************************/
 0002           ; /*串口通信*/
 0002           ; /*晶振为4MHz*/
 0002           ; /*波特率为9600bps*/
 0002           ; /*发送采用查询方式,接收采用中断方式*/
 0002           ; /*当收到的字符达到所定义的长度时,则在LCD上显示收到的字符*/
 0002           ; /***************************/
 0002           ; #define BufSize 10
 0002           ; unsigned char RsBuf[BufSize];  //定义接收缓冲器
 0002           ; int RsBytes = 0;
 0002           ; unsigned char flag = 0;
 0002           ; void main(void)
 0002           ; {
 0002                   .dbline 16
 0002           ;     unsigned char *msg = "Usart Test!\n";    
 0002 40E0              ldi R20,<L2
 0004 50E0              ldi R21,>L2
 0006                   .dbline 17
 0006           ;     SREG |= (1<<7);  //使能全局中断
 0006 7894              bset 7
 0008                   .dbline 18
 0008           ;     UsartInit();
 0008 0E940000          xcall _UsartInit
 000C                   .dbline 19
 000C           ;     Init_LCD();
 000C 0E940000          xcall _Init_LCD
 0010                   .dbline 20
 0010           ;     SendNbyte(msg,12);
 0010 2CE0              ldi R18,12
 0012 8A01              movw R16,R20
 0014 0E940000          xcall _SendNbyte
 0018                   .dbline 21
 0018           ;     PutStr("Test Ok\n");   
 0018 00E0              ldi R16,<L3
 001A 10E0              ldi R17,>L3
 001C 0E940000          xcall _PutStr
 0020                   .dbline 22
 0020           ;     LCD_DisplayString(1,1,"Usart Test!");
 0020 80E0              ldi R24,<L4
 0022 90E0              ldi R25,>L4
 0024 9983              std y+1,R25
 0026 8883              std y+0,R24
 0028 21E0              ldi R18,1
 002A 01E0              ldi R16,1
 002C 0E940000          xcall _LCD_DisplayString
 0030                   .dbline 23
 0030           ;     delay_nms(2000);
 0030 00ED              ldi R16,2000
 0032 17E0              ldi R17,7
 0034 0E940000          xcall _delay_nms
 0038                   .dbline 24
 0038           ;     LCD_Clear();
 0038 0E940000          xcall _LCD_Clear
 003C                   .dbline 25
 003C           ;     LCD_DisplayString(1,1,"Recive is :");    
 003C 80E0              ldi R24,<L5
 003E 90E0              ldi R25,>L5
 0040 9983              std y+1,R25
 0042 8883              std y+0,R24
 0044 21E0              ldi R18,1
 0046 01E0              ldi R16,1
 0048 0E940000          xcall _LCD_DisplayString
 004C 1BC0              xjmp L7
 004E           L6:
 004E                   .dbline 27
 004E           ;     while(1)
 004E           ;     {PORTA =UDR-0x30 ;
 004E                   .dbline 27
 004E 8CB1              in R24,0xc
 0050 8053              subi R24,48
 0052 8BBB              out 0x1b,R24
 0054                   .dbline 28
 0054           ;           DDRA  = 0xff;
 0054 8FEF              ldi R24,255
 0056 8ABB              out 0x1a,R24
 0058                   .dbline 29
 0058           ;         if(flag)
 0058 20900700          lds R2,_flag
 005C 2220              tst R2
 005E 91F0              breq L9
 0060                   .dbline 30
 0060           ;         {
 0060                   .dbline 31
 0060           ;            PutStr(RsBuf);
 0060 00E0              ldi R16,<_RsBuf
 0062 10E0              ldi R17,>_RsBuf
 0064 0E940000          xcall _PutStr
 0068                   .dbline 33
 0068           ;                 
 0068           ;            LCD_DisplayString(2,1,RsBuf);           
 0068 80E0              ldi R24,<_RsBuf
 006A 90E0              ldi R25,>_RsBuf
 006C 9983              std y+1,R25
 006E 8883              std y+0,R24
 0070 21E0              ldi R18,1
 0072 02E0              ldi R16,2
 0074 0E940000          xcall _LCD_DisplayString
 0078                   .dbline 34
 0078           ;            PutChar('\n');
 0078 0AE0              ldi R16,10
 007A 0E940000          xcall _PutChar
 007E                   .dbline 35
 007E           ;            flag = 0;
 007E 2224              clr R2
 0080 20920700          sts _flag,R2
 0084                   .dbline 36
 0084           ;         }
 0084           L9:
 0084                   .dbline 37
 0084           L7:
 0084                   .dbline 26
 0084 E4CF              xjmp L6
 0086           X0:
 0086                   .dbline -2
 0086           L1:
 0086 2296              adiw R28,2
 0088                   .dbline 0 ; func end
 0088 0895              ret
 008A                   .dbsym r msg 20 pc
 008A                   .dbend
                        .area vector(rom, abs)
                        .org 44
 002C 0C944500          jmp _uart0_rx_isr
                        .area text(rom, con, rel)
 008A                   .dbfile D:\dai\AVR_USART\main.c
 008A                   .dbfunc e uart0_rx_isr _uart0_rx_isr fV
                        .even
 008A           _uart0_rx_isr::
 008A 2A92              st -y,R2
 008C 3A92              st -y,R3
 008E 8A93              st -y,R24
 0090 9A93              st -y,R25
 0092 EA93              st -y,R30
 0094 FA93              st -y,R31
 0096 2FB6              in R2,0x3f
 0098 2A92              st -y,R2
 009A                   .dbline -1
 009A                   .dbline 46
 009A                   .dbline 48
 009A 80E0              ldi R24,<_RsBuf
 009C 90E0              ldi R25,>_RsBuf
 009E E0910500          lds R30,_RsBytes
 00A2 F0910600          lds R31,_RsBytes+1
 00A6 E80F              add R30,R24
 00A8 F91F              adc R31,R25
 00AA 2CB0              in R2,0xc
 00AC 2082              std z+0,R2
 00AE                   .dbline 49
 00AE 80910500          lds R24,_RsBytes
 00B2 90910600          lds R25,_RsBytes+1
 00B6 0196              adiw R24,1
 00B8 90930600          sts _RsBytes+1,R25
 00BC 80930500          sts _RsBytes,R24
 00C0                   .dbline 51
 00C0 8A30              cpi R24,10
 00C2 E0E0              ldi R30,0
 00C4 9E07              cpc R25,R30
 00C6 4CF0              brlt L12
 00C8                   .dbline 52
 00C8                   .dbline 53
 00C8 81E0              ldi R24,1
 00CA 80930700          sts _flag,R24
 00CE                   .dbline 54
 00CE 2224              clr R2
 00D0 3324              clr R3
 00D2 30920600          sts _RsBytes+1,R3
 00D6 20920500          sts _RsBytes,R2
 00DA                   .dbline 55
 00DA           L12:
 00DA                   .dbline -2
 00DA           L11:
 00DA 2990              ld R2,y+
 00DC 2FBE              out 0x3f,R2
 00DE F991              ld R31,y+
 00E0 E991              ld R30,y+
 00E2 9991              ld R25,y+
 00E4 8991              ld R24,y+
 00E6 3990              ld R3,y+
 00E8 2990              ld R2,y+
 00EA                   .dbline 0 ; func end
 00EA 1895              reti
 00EC                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile D:\dai\AVR_USART\main.c
 0000           _RsBuf::
 0000                   .blkb 10
 000A                   .dbsym e RsBuf _RsBuf A[10:10]c
 000A           _KeyDown::
 000A                   .blkb 1
 000B                   .dbfile D:\dai\AVR_USART/main.h
 000B                   .dbsym e KeyDown _KeyDown c
 000B           _KeyUp::
 000B                   .blkb 1
 000C                   .dbsym e KeyUp _KeyUp c
                        .area data(ram, con, rel)
 0008                   .dbfile D:\dai\AVR_USART/main.h
 0008           L5:
 0008                   .blkb 12
                        .area idata
 0008 526563697665206973203A00  .byte 'R,'e,'c,'i,'v,'e,32,'i,'s,32,58,0
                        .area data(ram, con, rel)
 0014                   .dbfile D:\dai\AVR_USART/main.h
 0014           L4:
 0014                   .blkb 12
                        .area idata
 0014 557361727420546573742100  .byte 'U,'s,'a,'r,'t,32,'T,'e,'s,'t,33,0
                        .area data(ram, con, rel)
 0020                   .dbfile D:\dai\AVR_USART/main.h
 0020           L3:
 0020                   .blkb 9
                        .area idata
 0020 54657374204F6B0A00        .byte 'T,'e,'s,'t,32,'O,'k,10,0
                        .area data(ram, con, rel)
 0029                   .dbfile D:\dai\AVR_USART/main.h
 0029           L2:
 0029                   .blkb 13
                        .area idata
 0029 55736172742054657374210A00        .byte 'U,'s,'a,'r,'t,32,'T,'e,'s,'t,33,10,0
                        .area data(ram, con, rel)
 0036                   .dbfile D:\dai\AVR_USART/main.h

⌨️ 快捷键说明

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