Dreaml2012 发表于 2012-8-7 20:36:24

对AVR单片机编译后有些编译不是很理解,求解?

下面是 .lst的一部分,觉得红色和相对应的 .h 文件中的不理解
(0005) #include <iom64v.h>
(0006) #include <macros.h>
(0007)
(0008) void port_init(void)
(0009) {
(0010)PORTA = 0x03;
_port_init:
00069 E083      LDI      R24,3
0006A BB8B      OUT      0x1B,R24
(0011)DDRA= 0x00;
   0006B 2422      CLR      R2
   0006C BA2A      OUT      0x1A,R2
(0012)PORTB = 0x00;
   0006D BA28      OUT      0x18,R2
(0013)DDRB= 0x00;
   0006E BA27      OUT      0x17,R2
(0014)PORTC = 0x00; //m103 output only
   0006F BA25      OUT      0x15,R2
(0015)DDRC= 0x00;
   00070 BA24      OUT      0x14,R2
(0016)PORTD = 0x00;
   00071 BA22      OUT      0x12,R2
(0017)DDRD= 0x00;
   00072 BA21      OUT      0x11,R2
   00073 9508      RET
(0018) }


以下是 .h 中的一部分,红色部分和上面红色部分不理解
/* Port A */
#define PINA      (*(volatile unsigned char *)0x39)
#define DDRA      (*(volatile unsigned char *)0x3A)
#define PORTA      (*(volatile unsigned char *)0x3B)

eblc1388 发表于 2012-8-7 20:55:49

有空时可看一看资料文档。

Dreaml2012 发表于 2012-8-7 21:08:23

eblc1388 发表于 2012-8-7 20:55 static/image/common/back.gif
有空时可看一看资料文档。

谢谢!{:smile:}
页: [1]
查看完整版本: 对AVR单片机编译后有些编译不是很理解,求解?