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

📄 main.lis

📁 avr单片机与flash存储器通信程序,调试通过,希望对大家有所帮助.
💻 LIS
📖 第 1 页 / 共 3 页
字号:
                        .module main.c
                        .area lit(rom, con, rel)
 0000           _Tab::
 0000 21F9              .byte 33,249
 0002 1351              .byte 19,'Q
 0004 C945              .byte 201,'E
 0006 05F1              .byte 5,241
 0008 0141              .byte 1,'A
 000A 810D              .byte 129,13
 000C 2719              .byte 39,25
 000E 0787              .byte 7,135
 0010                   .dbfile C:\ATMega8515\测试程序/ForATmega8515.h
 0010                   .dbsym e Tab _Tab A[16:16]kc
                        .area data(ram, con, rel)
 0000                   .dbfile C:\ATMega8515\测试程序/ForATmega8515.h
 0000           _leddata::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile C:\ATMega8515\测试程序/ForATmega8515.h
 0001                   .dbfile C:\ATMega8515\测试程序\main.c
 0001                   .dbsym e leddata _leddata c
 0001           _left::
 0001                   .blkb 1
                        .area idata
 0001 00                .byte 0
                        .area data(ram, con, rel)
 0002                   .dbfile C:\ATMega8515\测试程序\main.c
 0002                   .dbsym e left _left c
 0002           _right::
 0002                   .blkb 1
                        .area idata
 0002 00                .byte 0
                        .area data(ram, con, rel)
 0003                   .dbfile C:\ATMega8515\测试程序\main.c
 0003                   .dbsym e right _right c
 0003           _lcdindex::
 0003                   .blkb 1
                        .area idata
 0003 00                .byte 0
                        .area data(ram, con, rel)
 0004                   .dbfile C:\ATMega8515\测试程序\main.c
 0004                   .dbsym e lcdindex _lcdindex c
 0004           _ledflag::
 0004                   .blkb 1
                        .area idata
 0004 00                .byte 0
                        .area data(ram, con, rel)
 0005                   .dbfile C:\ATMega8515\测试程序\main.c
 0005                   .dbsym e ledflag _ledflag c
 0005           _shuflag::
 0005                   .blkb 1
                        .area idata
 0005 00                .byte 0
                        .area data(ram, con, rel)
 0006                   .dbfile C:\ATMega8515\测试程序\main.c
 0006                   .dbsym e shuflag _shuflag c
 0006           _lcdflag::
 0006                   .blkb 1
                        .area idata
 0006 00                .byte 0
                        .area data(ram, con, rel)
 0007                   .dbfile C:\ATMega8515\测试程序\main.c
 0007                   .dbsym e lcdflag _lcdflag c
 0007           _index::
 0007                   .blkb 1
                        .area idata
 0007 00                .byte 0
                        .area data(ram, con, rel)
 0008                   .dbfile C:\ATMega8515\测试程序\main.c
 0008                   .dbsym e index _index c
                        .area lit(rom, con, rel)
 0010           _str::
 0010 30313233343536373839414243444546  .byte 48,49,50,51,52,53,54,55,56,57,'A,'B,'C,'D,'E,'F
 0020 00                .byte 0
 0021                   .dbsym e str _str A[17:17]kc
 0021           _line::
 0021 0002              .byte 0,2
 0023 0406              .byte 4,6
 0025 080A              .byte 8,10
 0027 0C0E              .byte 12,14
 0029 0002              .byte 0,2
 002B 0406              .byte 4,6
 002D 080A              .byte 8,10
 002F 0C0E              .byte 12,14
 0031                   .dbsym e line _line A[16:16]kc
 0031           _pic1::
 0031 1818              .byte 24,24
 0033 99DB              .byte 153,219
 0035 7E3C              .byte 126,60
 0037 1800              .byte 24,0
 0039                   .dbsym e pic1 _pic1 A[8:8]kc
                        .area text(rom, con, rel)
 0000                   .dbfile C:\ATMega8515\测试程序\main.c
 0000                   .dbfunc e main _main fV
                        .even
 0000           _main::
 0000                   .dbline -1
 0000                   .dbline 41
 0000           ; #include <iom8515v.h>
 0000           ; #include <macros.h>
 0000           ; #include <stdio.h>
 0000           ; #include"ForATmega8515.h"
 0000           ; 
 0000           ; #define SomeNop   NOP();NOP();NOP();NOP();NOP();NOP();\
 0000           ;                                 NOP();NOP();NOP();NOP();NOP();NOP();\
 0000           ;                                 NOP();NOP();NOP();NOP();NOP();NOP();
 0000           ; 
 0000           ; #define       C0                      0x04
 0000           ; #define       C1                      0x08    
 0000           ; #define       C2                      0x10
 0000           ; #define       R0                      0x40
 0000           ; #define       R1                      0x80 
 0000           ; ///////////////////////////////
 0000           ; uchar leddata=0;
 0000           ; uchar left=0;
 0000           ; uchar right=0;
 0000           ; uchar lcdindex=0;
 0000           ; unsigned char ledflag=0;
 0000           ; unsigned char shuflag=0;
 0000           ; unsigned char lcdflag=0;
 0000           ; uchar index=0;
 0000           ; uchar key,temp;
 0000           ; uchar const str[]={"0123456789ABCDEF"};
 0000           ; uchar const line[]={0,2,4,6,8,10,12,14,
 0000           ;                                       0,2,4,6,8,10,12,14};//关
 0000           ; uchar const pic1[]={0x18,0x18,0x99,0xDB,0x7E,0x3C,0x18,0x00};
 0000           ; ///////////////////////////////
 0000           ; void delay(uint ticks);
 0000           ; void display();
 0000           ; /////////LCD///////////
 0000           ; void writedata(uchar lcddata);
 0000           ; void writecom(uchar lcddata);
 0000           ; void writeline(uchar x,uchar const *pt);
 0000           ; void initlcd();
 0000           ; //////////////////////////////
 0000           ; uchar GetKey(void);
 0000           ; /////////////////////////////
 0000           ; void main()
 0000           ; {
 0000                   .dbline 42
 0000           ;  init_devices();
 0000 00D0              rcall _init_devices
 0002                   .dbline 43
 0002           ;  initlcd();
 0002 23D1              rcall _initlcd
 0004                   .dbline 44
 0004           ;  printf("-----------Test For ATMega8515--------------\n");
 0004 00E0              ldi R16,<L2
 0006 10E0              ldi R17,>L2
 0008 00D0              rcall _printf
 000A 87C0              rjmp L4
 000C           L3:
 000C                   .dbline 46
 000C           ;  while(1)
 000C           ;  {
 000C                   .dbline 47
 000C           ;   display();
 000C 96D0              rcall _display
 000E                   .dbline 48
 000E 20900400          lds R2,_ledflag
 0012 2220              tst R2
 0014 A9F0              breq L6
 0016                   .dbline 48
 0016                   .dbline 48
 0016 80910000          lds R24,_leddata
 001A 8F5F              subi R24,255    ; addi 1
 001C 80930000          sts _leddata,R24
 0020                   .dbline 48
 0020 2224              clr R2
 0022 20920400          sts _ledflag,R2
 0026                   .dbline 48
 0026 20900700          lds R2,_index
 002A 3324              clr R3
 002C 822D              mov R24,R2
 002E 8F5F              subi R24,255    ; addi 1
 0030 80930700          sts _index,R24
 0034 822D              mov R24,R2
 0036 8730              cpi R24,7
 0038 19F4              brne L8
 003A                   .dbline 48
 003A 2224              clr R2
 003C 20920700          sts _index,R2
 0040           L8:
 0040                   .dbline 48
 0040           ;   if(ledflag){leddata++;ledflag=0;  if(index++==7)index=0;}
 0040           L6:
 0040                   .dbline 49
 0040 20900500          lds R2,_shuflag
 0044 2220              tst R2
 0046 81F0              breq L10
 0048                   .dbline 49
 0048                   .dbline 49
 0048 20900100          lds R2,_left
 004C 3324              clr R3
 004E 822D              mov R24,R2
 0050 8F5F              subi R24,255    ; addi 1
 0052 80930100          sts _left,R24
 0056 822D              mov R24,R2
 0058 8930              cpi R24,9
 005A 19F4              brne L12
 005C                   .dbline 49
 005C 2224              clr R2
 005E 20920100          sts _left,R2
 0062           L12:
 0062                   .dbline 49
 0062           ;   if(shuflag){if(left++==9)left=0;shuflag=0;}
 0062 2224              clr R2
 0064 20920500          sts _shuflag,R2
 0068                   .dbline 49
 0068           L10:
 0068                   .dbline 50
 0068 20900600          lds R2,_lcdflag
 006C 2220              tst R2
 006E A9F0              breq L14
 0070                   .dbline 50
 0070                   .dbline 50
 0070 20900300          lds R2,_lcdindex
 0074 3324              clr R3
 0076 822D              mov R24,R2
 0078 8F5F              subi R24,255    ; addi 1
 007A 80930300          sts _lcdindex,R24
 007E 822D              mov R24,R2
 0080 8031              cpi R24,16
 0082 19F4              brne L16
 0084                   .dbline 50
 0084 2224              clr R2
 0086 20920300          sts _lcdindex,R2
 008A           L16:
 008A                   .dbline 50
 008A           ;   if(lcdflag){if(lcdindex++==16)lcdindex=0;writeline(lcdindex,str);lcdflag=0;}
 008A 20E0              ldi R18,<_str
 008C 30E0              ldi R19,>_str
 008E 00910300          lds R16,_lcdindex
 0092 C8D0              rcall _writeline
 0094                   .dbline 50
 0094 2224              clr R2
 0096 20920600          sts _lcdflag,R2
 009A                   .dbline 50
 009A           L14:
 009A                   .dbline 51
 009A           ;   if(lcdindex==16)PORTD&=~BEEL;
 009A 80910300          lds R24,_lcdindex
 009E 8031              cpi R24,16
 00A0 11F4              brne L18
 00A2                   .dbline 51
 00A2 9598              cbi 0x12,5
 00A4 01C0              rjmp L19
 00A6           L18:
 00A6                   .dbline 52
 00A6           ;   else PORTD|=BEEL;
 00A6 959A              sbi 0x12,5
 00A8           L19:
 00A8                   .dbline 54
 00A8           ; ///////////////////////////////////
 00A8           ;   temp=GetKey();
 00A8 DDD0              rcall _GetKey
 00AA 00930000          sts _temp,R16
 00AE                   .dbline 55
 00AE           ;   key=temp;
 00AE 202E              mov R2,R16
 00B0 20920100          sts _key,R2
 00B4                   .dbline 56
 00B4           ;   if((key&0x10)!=0)
 00B4 04FF              sbrs R16,4
 00B6 16C0              rjmp L20
 00B8                   .dbline 57
 00B8           ;   {
 00B8                   .dbline 58
 00B8           ;         if((temp&0x01)==0)right=1;
 00B8 00FD              sbrc R16,0
 00BA 04C0              rjmp L22
 00BC                   .dbline 58
 00BC 81E0              ldi R24,1
 00BE 80930200          sts _right,R24
 00C2 2BC0              rjmp L21
 00C4           L22:
 00C4                   .dbline 59
 00C4           ;         else if((temp&0x02)==0)right=3;
 00C4 20900000          lds R2,_temp
 00C8 21FC              sbrc R2,1
 00CA 04C0              rjmp L24
 00CC                   .dbline 59
 00CC 83E0              ldi R24,3
 00CE 80930200          sts _right,R24
 00D2 23C0              rjmp L21
 00D4           L24:
 00D4                   .dbline 60
 00D4           ;         else if((temp&0x04)==0)right=5;
 00D4 20900000          lds R2,_temp
 00D8 22FC              sbrc R2,2
 00DA 1FC0              rjmp L21
 00DC                   .dbline 60
 00DC 85E0              ldi R24,5
 00DE 80930200          sts _right,R24
 00E2                   .dbline 61
 00E2           ;   }
 00E2 1BC0              rjmp L21
 00E4           L20:
 00E4                   .dbline 62

⌨️ 快捷键说明

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