关于51单片机IO口接按键的疑问

时间:2021-09-03 19:44:32
我刚开始学单片机,目前学到按键部分

我看到单片机的IO脚是直通按键的,而按键的另一端是直接接地的,没有其他东西。

假设给IO口赋高电平,也就是5V,那么按键按下的时候,不就是相当于与地短路了吗?单片机不怕烧吗?

可能短时间没事,如果长时间按下呢?

5 个解决方案

#1


没事 io口输出电流很小 都没有什么驱动能力  把正5v接io口当高电平也没事  只有大电流大电压通过单片机才会烧 

#2


如果单片机IO没有上拉的话,最好外接上拉电阻

否则,在没有按键的时候IO输入状态不确定

在输出状态下,单片机内部会有限流的。

#3


51单片机端口具有弱上拉功能,作为输入前,先要输出1。
如果按键没按下,读到的是高电平;按下后接地,读到的是低电平,表示有按键。
由于是弱上拉,即使持续将该端口对地短路,输出电流也小于1毫安(一般只有几百微安),不会烧端口。
但,端口直接接5伏电源不可行,因为如果输出0,5伏倒灌进去,电流很大,会烧管脚的。

#4


该回复于2012-04-19 12:47:59被版主删除

#5


非常感谢各位的回答!!我现在明白了很多

把答案总结起来就是,51单片机的高电平带载能力很小,低电平的带载能力较强

也怪不得那些LED都是共阳的了

#1


没事 io口输出电流很小 都没有什么驱动能力  把正5v接io口当高电平也没事  只有大电流大电压通过单片机才会烧 

#2


如果单片机IO没有上拉的话,最好外接上拉电阻

否则,在没有按键的时候IO输入状态不确定

在输出状态下,单片机内部会有限流的。

#3


51单片机端口具有弱上拉功能,作为输入前,先要输出1。
如果按键没按下,读到的是高电平;按下后接地,读到的是低电平,表示有按键。
由于是弱上拉,即使持续将该端口对地短路,输出电流也小于1毫安(一般只有几百微安),不会烧端口。
但,端口直接接5伏电源不可行,因为如果输出0,5伏倒灌进去,电流很大,会烧管脚的。

#4


该回复于2012-04-19 12:47:59被版主删除

#5


非常感谢各位的回答!!我现在明白了很多

把答案总结起来就是,51单片机的高电平带载能力很小,低电平的带载能力较强

也怪不得那些LED都是共阳的了