当前位置:首页 > 单片机 > 单片机
[导读]引 言如今单片机技术发展迅速,单片机系统已被广泛地应用于国民经济的各个领域。很多单片机应用系统需要输入设备,典型的输入设备要数键盘了。目前使用的键盘主要有两类:按键式键盘和旋钮式键盘。手机按键、微机键盘

引 言

如今单片机技术发展迅速,单片机系统已被广泛地应用于国民经济的各个领域。很多单片机应用系统需要输入设备,典型的输入设备要数键盘了。目前使用的键盘主要有两类:按键式键盘和旋钮式键盘。手机按键、微机键盘都属于按键式键盘。本文介绍的是旋钮式键盘的实现方法。

1 旋钮式键盘结构及特性

61525-1型旋钮式键盘结构非常简单,外形只有4个引脚,如图1所示。

当按键按下时(称为确认,下同),键盘的引脚1和引脚3相通;松开确认时,键盘有两种稳定状态,特性如表1所列。

2 硬件电路及工作原理

硬件电路如图2所示。这里为了简化电路,直接将键盘的引脚接到AT89C52的I/O引脚上。电路中,RS是系统复位信号,P1.2用来控制软件清除外部中断1,并通过锁存器来实现。

此种键盘只有三种操作,即顺时针旋转、逆时针旋转和确认。电路加电后,用示波器分别观察键盘在旋转过程中PIN2、PIN4的波形,得到图3所示的波形。

此键盘的工作原理是,根据三种操作表现出来的不同特性来确定相应的应用。应用中,通过读取AT89C52的P1.0和P1.1两引脚的值就可以判断旋转的方向。键盘的确认可以产生外部中断1。

3 软件实现

3.1 抖动的消除

旋钮在旋转过程中,所产生的波形并不如图3那样光滑,在上升沿/下降沿位置会出现因抖动而产生的毛刺。程序实现过程中,只有多次读的状态相同才认定是稳定的,否则继续读,直到达到稳定状态。这样既可以防止电路毛刺引起的读键盘状态出错,也可以防止因毛刺存在而将一次旋转旋钮操作错误判断成多次旋转(即多次计数)。实现的流程如图4所示(流程图中P2_OK、P4_OK分别表示 P1.0、P1.1值)。

3.2 实现计数

由图3可以看出,顺时针转动时,PIN2先跳变;逆时针转动时,PIN4先跳变,且都有00、01、10、11四个稳定状态。顺时针转动时状态变化为00→10→11,或者11→01→00;逆时针转动时状态变化为00→01→11,或者11→10→00,且01、10的状态是暂时性的(称为中间状态)。所以,可以通过初始状态和中间状态的状态变化判断旋钮的旋转方向,实现流程如图5所示。

只要我们定义键盘顺时针旋转进行加1操作,逆时针旋转则减1操作,这样就可以实现计数了。源程序见本刊网络补充版(http://www.dpj.com.cn)。

3.3 实现编辑

在编辑过程中,键盘有三种操作:顺时针旋转、逆时针旋转和确认。其中顺时针旋转时,显示给定字符集中的下一个字符;逆时针旋转时,显示给定字符集中的上一个字符;确认键用来产生外部中断1,进入外部中断处理程序。本例中是对给定的字符集进行编辑,并指定最大可编辑长度,处理时在字符集的后面加了特定的特殊字符,以控制编辑过程的退出,且将字符集看作是一个循环结构,即第一个字符和所加的取消控制字符构成循环。

程序中有三种退出编辑命令的方法:一是选中取消键,二是选中确认键,三是输入的字符长度达到最大值。退出编辑命令是在外部中断服务程序中实现的。

实现编辑的流程如图6所示,外部中断服务程序流程如图7所示。

说明:在外部中断服务程序中,还要考虑换行显示和换屏显示的问题,在这里不作叙述。源程序略。

结 语

旋钮式键盘占用面积小,应用既方便又美观,实现起来也很方便。本文结合自己工作实践,对旋钮式键盘基于AT89C52的应用进行了阐述。实际应用中,利用旋钮式键盘的计数特性,还可以实现菜单的显示、选择控制等,本文没有一一叙述。对于键抖动问题,还可以采用硬件电路来消除,这里也不作叙述。
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭