
请教一个简单的有关 按键、数码管的单片机程序问题?
上面分别是数码管、锁存器、4个按键、一组IO口;IO口可配置输入输出,上拉电阻等数码管是共阴的,也就是说跟按键想接的IO那边得是低电平;要求是当4个数码管都正常工作时,也...
上面分别是数码管 、锁存器、4个按键、一组IO口;IO口可配置输入输出,上拉电阻等
数码管是共阴的,也就是说跟按键想接的IO那边得是低电平;
要求是当4个数码管都正常工作时,也能判断按键的电平。
我的理解是假设4个数码管都正常工作,那就是说与按键想接的那4口(下面锁存器锁存的4个口)得保持低电平,要通过程序去判断按键,
我的方法是:配置10口(也就是4个按键的另一端)为输入,然后让1,2,3,4分别输出高电平扫描按键,这样返回被按下的键。但这样就会影响到共阴数码管。(要求不能影响到共阴数码管)
大家帮忙看下,有什么其他方案。。 展开
数码管是共阴的,也就是说跟按键想接的IO那边得是低电平;
要求是当4个数码管都正常工作时,也能判断按键的电平。
我的理解是假设4个数码管都正常工作,那就是说与按键想接的那4口(下面锁存器锁存的4个口)得保持低电平,要通过程序去判断按键,
我的方法是:配置10口(也就是4个按键的另一端)为输入,然后让1,2,3,4分别输出高电平扫描按键,这样返回被按下的键。但这样就会影响到共阴数码管。(要求不能影响到共阴数码管)
大家帮忙看下,有什么其他方案。。 展开
1个回答
展开全部
1. 按键的公共端作为单片机的输入
2. 共阴的数码管,扫描一个数码位期间,公共端通过锁存器分别输出低,判断按键输入端是否为低,以确认具体是哪个按键按下,不影响显示,
3. 这个电路,如果同时按下两个以上的按键,将会影响显示,可加二极管隔离
2. 共阴的数码管,扫描一个数码位期间,公共端通过锁存器分别输出低,判断按键输入端是否为低,以确认具体是哪个按键按下,不影响显示,
3. 这个电路,如果同时按下两个以上的按键,将会影响显示,可加二极管隔离
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询