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

📄 shanshuodeng.lst

📁 avr基础程序大全
💻 LST
字号:
Interrupt Vectors
    00000 940C 002A JMP	__text_start|__start

Program Code (text area)
__text_start|__start:
    0002A E5CF      LDI	R28,0x5F
    0002B E0D4      LDI	R29,4
    0002C BFCD      OUT	0x3D,R28
    0002D BFDE      OUT	0x3E,R29
    0002E 51CE      SUBI	R28,0x1E
    0002F 40D0      SBCI	R29,0
    00030 EA0A      LDI	R16,0xAA
    00031 8308      ST	Y,R16
    00032 2400      CLR	R0
    00033 E6E0      LDI	R30,0x60
    00034 E0F0      LDI	R31,0
    00035 E010      LDI	R17,0
    00036 36E0      CPI	R30,0x60
    00037 07F1      CPC	R31,R17
    00038 F011      BEQ	0x003B
    00039 9201      ST	Z+,R0
    0003A CFFB      RJMP	0x0036
    0003B 8300      ST	Z,R16
    0003C E5E4      LDI	R30,0x54
    0003D E0F0      LDI	R31,0
    0003E E6A0      LDI	R26,0x60
    0003F E0B0      LDI	R27,0
    00040 E010      LDI	R17,0
    00041 E000      LDI	R16,0
    00042 BF0B      OUT	0x3B,R16
    00043 35E4      CPI	R30,0x54
    00044 07F1      CPC	R31,R17
    00045 F021      BEQ	0x004A
    00046 95C8      LPM
    00047 9631      ADIW	R30,1
    00048 920D      ST	X+,R0
    00049 CFF9      RJMP	0x0043
    0004A 940E 0062 CALL	_main
_exit:
    0004C CFFF      RJMP	_exit
_delay:
  i                    --> R20
  j                    --> R22
  ms                   --> R16
    0004D 940E 0086 CALL	push_xgsetF000
FILE: F:\51&av配套光盘\51&avr配套程序\avr程序\2流水灯\ssd.c
(0001) 
(0002) #include <iom16v.h>
(0003) #include <macros.h>
(0004) #define  uchar unsigned char
(0005) #define  uint  unsigned int
(0006) void delay(uint ms)
(0007) {
(0008)     uint i,j;
(0009) 	for(i=0;i<ms;i++)
    0004F 2744      CLR	R20
    00050 2755      CLR	R21
    00051 C00B      RJMP	0x005D
(0010) 	   {
(0011) 	   for(j=0;j<1141;j++);
    00052 2766      CLR	R22
    00053 2777      CLR	R23
    00054 C002      RJMP	0x0057
    00055 5F6F      SUBI	R22,0xFF
    00056 4F7F      SBCI	R23,0xFF
    00057 3765      CPI	R22,0x75
    00058 E0E4      LDI	R30,4
    00059 077E      CPC	R23,R30
    0005A F3D0      BCS	0x0055
    0005B 5F4F      SUBI	R20,0xFF
    0005C 4F5F      SBCI	R21,0xFF
    0005D 1740      CP	R20,R16
    0005E 0751      CPC	R21,R17
    0005F F390      BCS	0x0052
    00060 940C 008B JMP	pop_xgsetF000
(0012)        }
(0013) }
(0014) void main()
(0015) {
(0016)    uchar k;
(0017)    DDRA|=BIT(2);
_main:
  k                    --> R20
    00062 9AD2      SBI	0x1A,2
(0018)    PORTA|=BIT(2);
    00063 9ADA      SBI	0x1B,2
(0019)    
(0020)    DDRA=0XFF;
    00064 EF8F      LDI	R24,0xFF
    00065 BB8A      OUT	0x1A,R24
(0021)    PORTA=0XFe;
    00066 EF8E      LDI	R24,0xFE
    00067 BB8B      OUT	0x1B,R24
    00068 C01B      RJMP	0x0084
(0022)    while(1)
(0023)    {
(0024)    for(k=0;k<8;k++)
    00069 2744      CLR	R20
    0006A C017      RJMP	0x0082
(0025)    { 
(0026)    PORTA&=~BIT(k);
    0006B E001      LDI	R16,1
    0006C 2F14      MOV	R17,R20
    0006D 940E 0090 CALL	lsl8
    0006F 2E20      MOV	R2,R16
    00070 9420      COM	R2
    00071 B23B      IN	R3,0x1B
    00072 2032      AND	R3,R2
    00073 BA3B      OUT	0x1B,R3
(0027)    delay(500);
    00074 EF04      LDI	R16,0xF4
    00075 E011      LDI	R17,1
    00076 DFD6      RCALL	_delay
(0028)    
(0029)    PORTA|=BIT(k);
    00077 E001      LDI	R16,1
    00078 2F14      MOV	R17,R20
    00079 940E 0090 CALL	lsl8
    0007B B22B      IN	R2,0x1B
    0007C 2A20      OR	R2,R16
    0007D BA2B      OUT	0x1B,R2
(0030)    delay(500);
FILE: <library>
    0007E EF04      LDI	R16,0xF4
    0007F E011      LDI	R17,1
    00080 DFCC      RCALL	_delay
    00081 9543      INC	R20
    00082 3048      CPI	R20,0x8
    00083 F338      BCS	0x006B
    00084 CFE4      RJMP	0x0069
    00085 9508      RET
push_xgsetF000:
    00086 937A      ST	-Y,R23
    00087 936A      ST	-Y,R22
    00088 935A      ST	-Y,R21
    00089 934A      ST	-Y,R20
    0008A 9508      RET
pop_xgsetF000:
    0008B 9149      LD	R20,Y+
    0008C 9159      LD	R21,Y+
    0008D 9169      LD	R22,Y+
    0008E 9179      LD	R23,Y+
    0008F 9508      RET
lsl8:
    00090 2311      TST	R17
    00091 F019      BEQ	0x0095
    00092 0F00      LSL	R16
    00093 951A      DEC	R17
    00094 CFFB      RJMP	lsl8
    00095 9508      RET

⌨️ 快捷键说明

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