PIC单片机驱动LCD段驱动器的设计

接口/总线/驱动

1143人已加入

描述

4×4小键盘的典型数字接口使用8个数字I/O引脚。但使用8个引脚作为数字I/O会占用可用于连接LCD的段驱动器引脚的数量。

通过使用2个数字I/O引脚和2个模拟输入引脚,可以向PIC单片机添加一个4×4小键盘,而无需牺牲它的任何LCD段驱动器引脚。

下图中显示了小键盘连接示意图。示例中使用的是PIC18F8490,但该技术可以用于任意LCDPIC MCU。

图中使用的两个数字I/O引脚是RBO和RB5,也可以使用任意两个其他的数字I/O引脚。所使用的两个模拟引脚是ANO和AN1。

数字接口

要读取小键盘,请遵循以下步骤:

1.首先,将RBO设计为输出高电平,将RB5设为输入(呈高阻抗)。

2.执行两次连续的A/D转换,先转换ANO.然后转换AN1。

3。将转换结果保存到它们各自的变量中:例如,RBO-ANO-Result和RBO-ANl-Result。

4.然后,将RB5设为输出高电平,将RBO设为输入(呈高阻抗)。

5.执行两次连续的A/D转换,先转换ANO,然后转换AN1。

6.将转换结果保存到它们各自的变量中:例如,RB5-ANO-Result和RB5-ANl-Result。

7.现在,共有4个变量,代表在4×4小键盘的每个象限的一次按键操作:

数字接口

8.最后,按照下表的相应栏检查每个值。如果它处于某个值的+/-10%范围内,则可以认为相应的键已被按下。

9.该循环应当大约每隔20ms重复一次。不要忘记执行按键弹出处理程序。例如,要求在以上步骤连续两次返回同一键值(之间有20 ms的延时)时,才将该键视为被按下。同样要求在至少两次返回未按下任何键时,才可以开始下一次按键操作。当同一象限内的几个键同时被按下时,可能会产生表3中显示的4种有效电平之外的电压。可以忽略这些电平,或者如果希望通过使用同时按键来使能某些功能,也可以添加针对这些电平的解码过程。

数字接口


责任编辑;zl

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分