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

📄 int0test.lst

📁 AVRkaifashili.rar
💻 LST
字号:
__start:
__text_start:
    001A E5CF      LDI	R28,0x5F
    001B E0D2      LDI	R29,2
    001C BFCD      OUT	0x3D,R28
    001D BFDE      OUT	0x3E,R29
    001E 51C0      SUBI	R28,0x10
    001F 40D0      SBCI	R29,0
    0020 EA0A      LDI	R16,0xAA
    0021 8308      STD	Y+0,R16
    0022 2400      CLR	R0
    0023 E7E2      LDI	R30,0x72
    0024 E0F0      LDI	R31,0
    0025 E010      LDI	R17,0
    0026 37E2      CPI	R30,0x72
    0027 07F1      CPC	R31,R17
    0028 F011      BEQ	0x002B
    0029 9201      ST	R0,Z+
    002A CFFB      RJMP	0x0026
    002B 8300      STD	Z+0,R16
    002C E2E2      LDI	R30,0x22
    002D E0F0      LDI	R31,0
    002E E6A0      LDI	R26,0x60
    002F E0B0      LDI	R27,0
    0030 E010      LDI	R17,0
    0031 33E4      CPI	R30,0x34
    0032 07F1      CPC	R31,R17
    0033 F021      BEQ	0x0038
    0034 95C8      LPM
    0035 9631      ADIW	R30,1
    0036 920D      ST	R0,X+
    0037 CFF9      RJMP	0x0031
    0038 D030      RCALL	_main
_exit:
    0039 CFFF      RJMP	_exit
_DelayMs:
  j                    --> R20
  i                    --> R16
    003A D04C      RCALL	push_gset1
FILE: J:\AVRpractice\BOOK\INT0test\INT0test.c
(0001) #include<io8535v.h>
(0002) #define uchar unsigned char
(0003) #define uint  unsigned int
(0004) 
(0005) 
(0006) uchar Table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
(0007) uchar Data[4]={0,7,2,8};
(0008) uchar Data1[4]={1,1,1,1};
(0009) void DelayMs(uint i)  //0.25ms
(0010) {uchar j;
(0011)  for(;i!=0;i--)
    003B C007      RJMP	0x0043
(0012)   {for(j=250;j!=0;j--) {;}}
    003C EF4A      LDI	R20,0xFA
    003D C001      RJMP	0x003F
    003E 954A      DEC	R20
    003F 2344      TST	R20
    0040 F7E9      BNE	0x003E
    0041 5001      SUBI	R16,1
    0042 4010      SBCI	R17,0
    0043 3000      CPI	R16,0
    0044 0701      CPC	R16,R17
    0045 F7B1      BNE	0x003C
(0013) }
    0046 D043      RCALL	pop_gset1
    0047 9508      RET
_Display:
  sel                  --> R20
  i                    --> R22
  p                    --> R10
    0048 D058      RCALL	push_gset3
    0049 2EA0      MOV	R10,R16
    004A 2EB1      MOV	R11,R17
(0014) 
(0015) void Display(uchar *p) //间隔5ms显示
(0016) {uchar i,sel=0x01;
    004B E041      LDI	R20,1
(0017)  for(i=0;i<4;i++)
    004C 2766      CLR	R22
    004D C017      RJMP	0x0065
(0018)   {PORTA=sel;
    004E BB4B      OUT	0x1B,R20
(0019)    PORTC=0xff-Table[p[i]];
    004F 2FE6      MOV	R30,R22
    0050 27FF      CLR	R31
    0051 0DEA      ADD	R30,R10
    0052 1DFB      ADC	R31,R11
    0053 81E0      LDD	R30,Z+0
    0054 27FF      CLR	R31
    0055 E680      LDI	R24,0x60
    0056 E090      LDI	R25,0
    0057 0FE8      ADD	R30,R24
    0058 1FF9      ADC	R31,R25
    0059 8020      LDD	R2,Z+0
    005A 2433      CLR	R3
    005B EF8F      LDI	R24,0xFF
    005C E090      LDI	R25,0
    005D 1982      SUB	R24,R2
    005E 0993      SBC	R25,R3
    005F BB85      OUT	0x15,R24
(0020)    DelayMs(20);
    0060 E104      LDI	R16,0x14
    0061 E010      LDI	R17,0
    0062 DFD7      RCALL	_DelayMs
(0021)    sel=sel<<1;
    0063 0F44      LSL	R20
    0064 9563      INC	R22
    0065 3064      CPI	R22,4
    0066 F338      BCS	0x004E
(0022)   }
(0023) }
    0067 D01D      RCALL	pop_gset3
    0068 9508      RET
(0024) 
(0025) void main(void)
(0026) {uint i;
(0027)  DDRA=0xff;                    //设置A口为不带上拉输入;
_main:
  i                    --> Y+1
    0069 EF8F      LDI	R24,0xFF
    006A BB8A      OUT	0x1A,R24
(0028)  PORTA=0xff;
    006B BB8B      OUT	0x1B,R24
(0029)  DDRC=0xff;                    //设置C口为推挽1输出;
    006C BB84      OUT	0x14,R24
(0030)  PORTC=0xff;
    006D BB85      OUT	0x15,R24
(0031)  DDRD=0xff;                    //设置D口为上拉输入
    006E BB81      OUT	0x11,R24
(0032)  PORTD=0xff;
    006F BB82      OUT	0x12,R24
(0033)  PORTA=0xff;
    0070 BB8B      OUT	0x1B,R24
(0034)  PORTC=0x00;
    0071 2422      CLR	R2
    0072 BA25      OUT	0x15,R2
(0035)  //DelayMs(10000);
(0036)  MCUCR=0x00;//下降沿
    0073 BE25      OUT	0x35,R2
(0037)  GIMSK=0x40;//int0
    0074 E480      LDI	R24,0x40
    0075 BF8B      OUT	0x3B,R24
(0038)  GIFR=0xff;
    0076 EF8F      LDI	R24,0xFF
    0077 BF8A      OUT	0x3A,R24
(0039)  SREG=SREG|0x80;
    0078 9478      BSET	7
    0079 C003      RJMP	0x007D
(0040)  while(1){Display(Data1);}
    007A E60E      LDI	R16,0x6E
    007B E010      LDI	R17,0
    007C DFCB      RCALL	_Display
    007D CFFC      RJMP	0x007A
(0041)  /*{if((GIFR&0x40)==0x40)   {GIFR=0xff;Display(Data);}
(0042)   else 
(0043)   }*/
(0044) }
    007E 9508      RET
_int0:
    007F D024      RCALL	push_lset
(0045)  #pragma interrupt_handler int0:2
(0046)  void int0(void)
(0047)  {Display(Data);}
FILE: <library>
    0080 E60A      LDI	R16,0x6A
    0081 E010      LDI	R17,0
    0082 DFC5      RCALL	_Display
    0083 D037      RCALL	pop_lset
    0084 9518      RETI
pop_gset3:
    0085 E0E4      LDI	R30,4
    0086 C004      RJMP	pop
push_gset1:
    0087 935A      ST	R21,-Y
    0088 934A      ST	R20,-Y
    0089 9508      RET
pop_gset1:
    008A E0E1      LDI	R30,1
pop:
    008B 9149      LD	R20,Y+
    008C 9159      LD	R21,Y+
    008D FDE0      SBRC	R30,0
    008E 9508      RET
    008F 9169      LD	R22,Y+
    0090 9179      LD	R23,Y+
    0091 FDE1      SBRC	R30,1
    0092 9508      RET
    0093 90A9      LD	R10,Y+
    0094 90B9      LD	R11,Y+
    0095 FDE2      SBRC	R30,2
    0096 9508      RET
    0097 90C9      LD	R12,Y+
    0098 90D9      LD	R13,Y+
    0099 FDE3      SBRC	R30,3
    009A 9508      RET
    009B 90E9      LD	R14,Y+
    009C 90F9      LD	R15,Y+
    009D 9508      RET
push_gset2:
    009E 937A      ST	R23,-Y
    009F 936A      ST	R22,-Y
    00A0 CFE6      RJMP	push_gset1
push_gset3:
    00A1 92BA      ST	R11,-Y
    00A2 92AA      ST	R10,-Y
    00A3 CFFA      RJMP	push_gset2
push_lset:
    00A4 93FA      ST	R31,-Y
    00A5 93EA      ST	R30,-Y
    00A6 93BA      ST	R27,-Y
    00A7 93AA      ST	R26,-Y
    00A8 939A      ST	R25,-Y
    00A9 938A      ST	R24,-Y
    00AA 933A      ST	R19,-Y
    00AB 932A      ST	R18,-Y
    00AC 931A      ST	R17,-Y
    00AD 930A      ST	R16,-Y
    00AE 929A      ST	R9,-Y
    00AF 928A      ST	R8,-Y
    00B0 927A      ST	R7,-Y
    00B1 926A      ST	R6,-Y
    00B2 925A      ST	R5,-Y
    00B3 924A      ST	R4,-Y
    00B4 923A      ST	R3,-Y
    00B5 922A      ST	R2,-Y
    00B6 921A      ST	R1,-Y
    00B7 920A      ST	R0,-Y
    00B8 B60F      IN	R0,0x3F
    00B9 920A      ST	R0,-Y
    00BA 9508      RET
pop_lset:
    00BB 9009      LD	R0,Y+
    00BC BE0F      OUT	0x3F,R0
    00BD 9009      LD	R0,Y+
    00BE 9019      LD	R1,Y+
    00BF 9029      LD	R2,Y+
    00C0 9039      LD	R3,Y+
    00C1 9049      LD	R4,Y+
    00C2 9059      LD	R5,Y+
    00C3 9069      LD	R6,Y+
    00C4 9079      LD	R7,Y+
    00C5 9089      LD	R8,Y+
    00C6 9099      LD	R9,Y+
    00C7 9109      LD	R16,Y+
    00C8 9119      LD	R17,Y+
    00C9 9129      LD	R18,Y+
    00CA 9139      LD	R19,Y+
    00CB 9189      LD	R24,Y+
    00CC 9199      LD	R25,Y+
    00CD 91A9      LD	R26,Y+
    00CE 91B9      LD	R27,Y+
    00CF 91E9      LD	R30,Y+
    00D0 91F9      LD	R31,Y+
    00D1 9508      RET

⌨️ 快捷键说明

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