键盘电路与程序设计详解
1. 输入电压不确定性与解决方案
在实际情况中,我们无法确定输入端口的电压状态,它们可能会浮动到逻辑‘1’或逻辑‘0’。理想情况下,我们希望未连接的PIC输入端口浮动到逻辑‘0’,这样在四个输入端口中,我们就能仅检测到一个逻辑‘1’,因为通常只有一个按键被按下。在电子电路,尤其是微电子电路中,我们绝不能让输入端口处于浮动状态,因为根据墨菲定律,它们很可能会浮动到错误的逻辑电平。
为了解决这个问题,我们可以采用下拉电阻或上拉电阻的方法。
下拉电阻的使用
当PIC的输入端口未切换到有效电平(这里是高电平有效,即逻辑‘1’)时,我们需要将这些输入端口拉到相反的逻辑电平,也就是逻辑‘0’。具体做法是将电路改成如图7 - 7所示的布局。
在这种布局下,PIC的四个输入端口通过1kΩ电阻连接到地或0V。如果行上的开关状态如图7 - 7所示,那么连接到三个输入端口RB0、RB1和RB2的1kΩ电阻中没有电流流过,因为它们处于开路状态。这意味着这些电阻上没有电压降,所以这些输入端口的电压为5μV,即逻辑‘0’。而输入端口RB3的电压为5V,因为第1行的开关闭合,5V电压通过键盘上的‘1’键开关直接连接到输入端口RB3。
那么,为什么要在输入端口和地之间连接1kΩ电阻呢?这是为了限制流过键盘开关的电流。如果没有电阻,就相当于将5V电压直接短路到地,很可能会烧毁键盘。1kΩ电阻可以将电流限制在大约5mA。这种使用电阻将输入端口拉到低电平的方式称为使用下拉电阻。我们也可以使用更高阻值的电阻来进一步限制电流,例如100kΩ电阻可以将电流降低到大约50μA。
上拉电阻的使用
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



