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

📄 bus_1.lst

📁 AVR单片机ATMEGA128实习之—外部总线访问(附带Proteus仿真例子)
💻 LST
字号:
__start:
__text_start:
    0046 EFCF      LDI	R28,0xFF
    0047 E1D0      LDI	R29,0x10
    0048 BFCD      OUT	P3D,R28
    0049 BFDE      OUT	P3E,R29
    004A 51C0      SUBI	R28,0x10
    004B 40D0      SBCI	R29,0
    004C EA0A      LDI	R16,0xAA
    004D 8308      STD	R16,0+Y
    004E 2400      CLR	R0
    004F E0E0      LDI	R30,0
    0050 E0F1      LDI	R31,1
    0051 E011      LDI	R17,1
    0052 30E0      CPI	R30,0
    0053 07F1      CPC	R31,R17
    0054 F011      BEQ	0x0057
    0055 9201      ST	R0,Z+
    0056 CFFB      RJMP	0x0052
    0057 8300      STD	R16,0+Z
    0058 E8EC      LDI	R30,0x8C
    0059 E0F0      LDI	R31,0
    005A E0A0      LDI	R26,0
    005B E0B1      LDI	R27,1
    005C E010      LDI	R17,0
    005D 38EC      CPI	R30,0x8C
    005E 07F1      CPC	R31,R17
    005F F021      BEQ	0x0064
    0060 95C8      LPM
    0061 9631      ADIW	R30,1
    0062 920D      ST	R0,X+
    0063 CFF9      RJMP	0x005D
    0064 940E0067  CALL	_main
_exit:
    0066 CFFF      RJMP	_exit
FILE: J:\odds\MYDESI~1\AVRPRA~1\MultiBUS\bus.c
(0001) #include <iom128.h>
(0002) #include <macros.h>
(0003) 
(0004) //#define  AA		   0x0e00
(0005) #define  control_word   (*(volatile unsigned char *)0x7f03)  
(0006) #define  A_data   (*(volatile unsigned char *)0x7f00)
(0007) #define  B_data   (*(volatile unsigned char *)0x7f01)
(0008) 
(0009) //extern unsigned char A_data;  //,control_word;
(0010) 
(0011) //#define		Data_Length		5
(0012) 
(0013) //#pragma interrupt_handler CAN_INT:2			//CAN中断
(0014) //#pragma interrupt_handler Timer0_INT:17		//定时器中断
(0015) //unsigned char   CAN_Rx_buffer[Data_Length-1];
(0016) //unsigned char	CAN_Tx_buffer[Data_Length-1];
(0017) 
(0018) 
(0019) 
(0020) 
(0021) void main(void)
(0022) {
(0023)  	 unsigned char p=0 ;
_main:
  p                    --> R16
  i                    --> R18
    0067 2700      CLR	R16
(0024) 	 unsigned char i;
(0025) 	 
(0026) 	 MCUCR = 0x80;
    0068 E880      LDI	R24,0x80
    0069 BF85      OUT	P35,R24
(0027) 	 //control_word = 0x80;
(0028) 	 DDRF = 0xff;
    006A EF8F      LDI	R24,0xFF
    006B 93800061  STS	0x61,R24
(0029) 	 //p = &A_data;
(0030) 	 //*p = 0xaa;
(0031) 	 
(0032) 	 
(0033) 	 //B_data = 0xAA;
(0034) 	 
(0035) 	 control_word = 0x82;
    006D E882      LDI	R24,0x82
    006E 93807F03  STS	0x7F03,R24
(0036) 	 //A_data = 0xAA;
(0037) 	 
(0038) 	 for(i=0;i<100;i++)
    0070 2722      CLR	R18
    0071 C001      RJMP	0x0073
    0072 9523      INC	R18
    0073 3624      CPI	R18,0x64
    0074 F3E8      BCS	0x0072
(0039) 	 {
(0040) 	 }
(0041) 	 
(0042) 	 p = B_data;
    0075 91007F01  LDS	R16,0x7F01
(0043) 	 
(0044) 	 PORTF = p;
    0077 93000062  STS	0x62,R16
(0045) 	 //B_data = 0xAA;
(0046) 	 for(;;)
FILE: <library>
    0079 CFFF      RJMP	0x0079
    007A 9508      RET

⌨️ 快捷键说明

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