
ATmega16(L)
图23 。
通用数字I / O
(1)
PUD
Q
D
DDxn
Q
CLR
RESET
WDX
RDX
PXN
Q
D
PORTxn如何
Q
CLR
WPX
RESET
睡觉
RRX
同步
D
Q
D
Q
RPX
PINxn
L
Q
Q
CLK
I / O
PUD :
睡眠:
CLK
I / O
:
拉禁用
休眠控制
I / O时钟
WDX :
RDX :
WPX :
RRX :
的RPx :
写DDRX
读DDRX
写的PORTx
读PORTx寄存器
READ读PORTx PIN
注意:
1. WPX , WDX , RRX ,RPx和RDX是通用的同一个端口的所有引脚。 CLK
I / O
,睡眠,
和PUD则对所有的端口。
配置引脚
每个端口引脚都具有三个寄存器位:DDxn ,PORTxn和PINxn 。如图
Register
说明66页上的I / O端口“ ,
该DDxn位是在DDRX I / O地址进行访问时,
PORTxn如何位在读PORTx I / O地址,并于PINxn位在品克斯I / O地址。
在DDxn用来选择引脚的方向。如果DDxn为逻辑1 ,
PXN被配置为输出引脚。如果DDxn被写入逻辑0时,Pxn配置为输入
引脚。
若PORTxn为1时,引脚配置为输入引脚,上拉电阻
激活。要切换的上拉电阻断开, PORTxn如何已被写入逻辑0或销具有
被配置为输出管脚。各引脚为三态时,复位过程
中,即使没有时钟在运行。
若PORTxn为1时,该引脚被配置为输出引脚,该引脚被驱动
高( 1 ) 。若PORTxn为零点时,该引脚被配置为输出引脚,端口
引脚被拉低(零) 。
当三态之间切换电阻({DDxn , PORTxn如何} = 0b00的)和高输出电阻({DDxn , PORTxn如何}
= 0b11 ) ,一个中间状态,要么拉使电阻({DDxn , PORTxn如何} = 0B01 )或输出
低电阻({DDxn , PORTxn如何} = 0b10 )必须发生。通常情况下,使拉状态是完全可接受
能,因为高阻环境不在意是强高电平输出之间的差异
和一个上拉电阻。如果不是这种情况下,在SFIOR寄存器的PUD位可以被设置为禁用所有
引体向上中的所有端口。
数据总线
51
2466S–AVR–05/09