在AVR中 PORTX 和PINX有什么差别啊 谢谢啊

2025-01-04 07:47:45
推荐回答(3个)
回答1:

1)DDRx=1时,I/O口处于输出方式,输出为PORTx的值(高低电平)
DDRx=0时,I/O口处于输入方式,此时PINx中的数据是外部引脚的实际电平,读数据是应该是读PINx,而不应该是PORTx,这要注意了!!!
2)当DDRx=0,处于输入方式时,PORTx配合PUD设置内部的上拉电阻的有效和无效!!!
DDRx=0,PORTx=1,PUD=0时上拉电阻有效,其他时候都无效!

回答2:

好像不是C/C++的编程题目吧

回答3:

每个I/O口配备三个8位寄存器,分别是方向控制寄存器DDRx,数据寄存器PORTx,输入引脚寄存器PINx,I/O口的工作方式和表现特征有这三个寄存器控制的.
1)DDRx=1时,I/O口处于输出方式,输出为PORTx的值(高低电平)
DDRx=0时,I/O口处于输入方式,此时PINx中的数据是外部引脚的实际电平,读数据是应该是读PINx,而不应该是PORTx,这要注意了!!!
2)当DDRx=0,处于输入方式时,PORTx配合PUD设置内部的上拉电阻的有效和无效!!!
DDRx=0,PORTx=1,PUD=0时上拉电阻有效,其他时候都无效!

但愿你能够明白!