AVR单片机输入输出IO端口使用.docx
AVR单片机输入输出IO端口使用以ATmega16单片机为例,共有32个通用I/O口,分为4个端口PA,PB,PC,PD,每个端口都包含8个I/O口,如图所示,每个端口对应一个8位的二进制,对应的i/o管脚顺序由高到低排列。 每个I/O口都可以单独设为输入或输出,如上图中PA口的8个I/O口全部设为输出,控制8个发光二极管的亮灭。i/o口除作为输入输出口外,还有第二功能,如PA口也作为AD转换的输入口。 每个端口都具有输入,输出,方向控制三个寄存器: 以PA口为例,其他端口相同,方向寄存器DDRA,对应8个的I/O口,1设为输出,0设为输入。 输出寄存器PORTA,对应的I/O口,1输出高电平,0输出低电平 输入寄存器PINA , 若对应的I/O口为高电平,相应的位置1,低电平置0 例如:PA口全部设为输出,DDRA=0xFF,并且全部输出低电平,PORTA=0x00;将点亮上图中的全部发光二极管。 将PB口的第0位设为输入,其余位设为输出,DDRB=0xFE; if (PINB&0x01)=1) /判断PB口的第0位的输入状态,是0还是1. PORTA=0x00; /如果PB口的第0位等于1,即PA口的第0位输入高电平,那么PA口全部输出低电平 else PORTA=0xFF;/如果PB口的第0位等于0,即PA口的第0位输入低电平,那么PA口全部输出高电平 小企鹅diy科学探究学习网 更多相关文章转到: 文章分类下的单片机