您的位置 首页 方案

PIC单片机用于LCD段驱动器的键盘接口

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

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种有用电平之外的电压。能够疏忽这些电平,或许假如期望经过运用一起按键来使能某些功用,也能够增加针对这些电平的解码进程。


声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/132272.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部