单片机IO口作输入时--高低电平选择

假设用51单片机IO口作输入,检测某传感器输出信号:
(用C语言)
1、必须先将IO口置高,无论传感器是高电平有效还是低电平有效,直接检测IO口的是否出现传感器的输出电平就OK。
2、还是:
先置高,若传感器输出低电平有效,则直接检测IO口是否出现低电平;
先置高,若传感器输出高电平有效,则IO口需置低,然后检测是否出现高电平。

1、必须先将IO口置高,无论传感器是高电平有效还是低电平有效,直接检测IO口的是否出现传感器的输出电平就OK。追问

无上拉电阻和有上拉电阻的IO口是一样设置吗?还是说有不同?

追答

一样,都要先将IO口置高

追问

P0口无上拉电阻,先置高,成为高阻态,可以直接检测传感器输出电平,这可以理解。。但是其他有上拉电阻的IO口置高后就是一直是高电平,这里就不理解了

追答

P1,P2,P3是准双向口,内部有上拉,置高后才能作为输入用,置高其实是内部的弱上拉电阻拉高的,可以被外部拉为低电平。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答