关于单片机IO口输入输出复用问题
请问,用下图能否实现用IO口扫描按键是否被按下,再输出高电平点亮小灯。当按键不被按下时,IO口是否一直都是低电平(通过二极管到地),单片机低电平范围0-2V,望解答,谢谢...
请问,用下图能否实现用IO口扫描按键是否被按下,再输出高电平点亮小灯。当按键不被按下时,IO口是否一直都是低电平(通过二极管到地),单片机低电平范围0-2V,望解答,谢谢。
展开
4个回答
展开全部
个人理解:
如果你用51 P0口,这样是可以的。
解释:P0口没有内部上接电阻,你P0.0外接一个100K的上拉,1K改成5K,同时在LED上要串470电阻限流
这样,平时P0.0是高电平但上拉很弱(不足以让LED亮起来),按下键是低电平,可作正常IO的按键检测。
检测到动作后,让P0.0为高,这时它等同于直接到VCC,这时LED就正常亮了,即使这时按下键,也只是相当于在IO上又并了一个电阻,LED也正常亮。
。。。。实际情况呢?你来回答吧,哈哈。
如果你用51 P0口,这样是可以的。
解释:P0口没有内部上接电阻,你P0.0外接一个100K的上拉,1K改成5K,同时在LED上要串470电阻限流
这样,平时P0.0是高电平但上拉很弱(不足以让LED亮起来),按下键是低电平,可作正常IO的按键检测。
检测到动作后,让P0.0为高,这时它等同于直接到VCC,这时LED就正常亮了,即使这时按下键,也只是相当于在IO上又并了一个电阻,LED也正常亮。
。。。。实际情况呢?你来回答吧,哈哈。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要检测按钮开关状态,首先得把端口设置为输入模式,
(而作为状态输入,你总得提供高低电平两种状态以选择,显然这里不能提供高电平;)
在检测到按钮按下后,再把该端口设置为输出端,并输出高电平以点亮LED,但是你的电路中,不加个限流电阻在LED上,会把端口烧毁的;
(而作为状态输入,你总得提供高低电平两种状态以选择,显然这里不能提供高电平;)
在检测到按钮按下后,再把该端口设置为输出端,并输出高电平以点亮LED,但是你的电路中,不加个限流电阻在LED上,会把端口烧毁的;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个电路有问题,按键和电阻的位置最好交换一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询