« 液位计经过反复的实践电流传感器一般把集成运放静态电压设置为低于2.5 V »

控制器单击时用户希望通过短时间击键只产生一个有效键值

    IP(Intellectual Property),即常说的知识产权。在PLD领域中,IP核是指将数字系统中常用但比较复杂的一些功能块设计成参数可调并以HDL源文件或加密网表形式存在的可供其他用户直接调用的软件模块。由于已经过严格的测试和优化,使用IP核可以显著减小设计和调试时间,提高开发效率,降低产品成本。本文以一款结构经参数化的全功能硬件扫描键盘控制器的开发为例,阐述IP核设计的一般方法与步骤。

  1 设计的意义与可行性

  键盘是计算机系统中最常用的人机交互输控制器入设备。控制器在嵌入式系统中,用R+L条口线实现R×L个按键的扫描键盘的应用最为广泛。控制器与线性键盘相比,扫描键盘中 I/O口线的利用效率有了较大的提高,控制器在一定程度上缓解了I/O引脚短缺的问题,但其传统实现方案的缺点是需要MPU的相应扫描控制程序来配合。为了响应输入,控制器系统实质上工作于一种循环查询模式,不但占用了较多的MPU处理时间,也增加了系统的功耗。在一些处理任务量大、对功耗又极为敏感的系统中,这是不能接受的。

  一方面,控制器通用键盘接口芯片(如8279、HD7279A)功耗较大,控制器使用灵活性差;另一方面,可编程逻辑器件在规模、速度和功耗等性能方面已远超出通用逻辑芯片。所以越来越多的大型数字系统采用CPLD/FPGA构建,且系统中可编程逻辑器件的硬件资源通常都有一定剩余,这使得在不增加成本的基础上,实现一款硬件扫描键盘控制器成为可能。在智能多芯电缆检测仪的研制过程中,一款这样的全功能硬件扫描键盘控制器便得以成功实现。下面详细介绍其工作原理和实现过程。

  2 工作原理及功能要求

  2.1 扫描键盘工作原理

  以4×4 扫描键盘为例,其中P0~P3为输出口,P4~P7为输入口。无按键按下时,输入口被上拉为高电平。输出口以一定频率循环输出 0111、1011、1101、1110。通过读输入口的状态,便可判断击键情况。如输出0111时,输入口的16种状态与击键的对应关系如表1所示。单列线的扫描频率(记为Fs)一般应界于50~400Hz之间。

       2.2 按键的去抖动问题

  控制器由于触点的弹性作用,机械按键在闭合和断开瞬间会产生抖动,实际电压波形。其中T1、T2、TS分别为前沿抖动时间、后沿抖动时间和按键稳定时间。T1、T2取决于触点的机械特性,一般为5~12ms;TS则主要取决于击键速度的快慢和按键按下时间的长短。统计研究表明,以正常速度击键时,T1、T2、TS之和一般不小于12ms。

  按键抖动引起的最大问题是一次击键被误识别为多次击键,因此应避免在抖动期T1、T2内对输入行线状态进行采样。去抖动电路的设计是硬件扫描键盘控制器设计中的关键之一。

  2.3 全功能键盘控制器的功能要求

  在键盘使用过程中,实际击键情况有两种:单击和连击。单击时用户希望通过短时间击键只产生一个有效键值;连击时用户长时间按下按键,希望持续快速产生多个有效键值。为方便使用,键盘设计应区分快速单击和持续连击:两者都用来快速产生多个键值,区别在于击键的动作和使用的场合。前者要求每次单击后释放按键,常用于参数小范围内的精调;而后者则要求按键长时间保持在按下状态,以实现参数大范围内的快速调节。

  除上述要求外,全功能扫描键盘控制器还要求能识别多键同击的情况。出于简化设计的目的,本设计仅考虑同列按键的多键同击问题。解决此问题的办法是使R×L扫描键盘(R为输入行线数,L为扫描列线数)可以识别的等效按键数从R×L增加到(以4×4为例,从16个增加为60个)。

  相关商机:

控制器T2取决于触点的机械特性

控制器由于触点的弹性作用

控制器就是对门禁控制器的功能进行实际的操作

控制器与任何其他的电池供电设备一样,电源管理是至关重要的

控制器所有模拟电路都嵌入在快闪 MCU 中,其完全由软件控制的,可以方便地进行操

控制器能够在不同的操作状态下快速切换

控制器低功率可实现更长的电池寿命;实现高性能的速度

要求控制器新的思维方式

控制器从开发的第一天起,利用嵌入式仿真,固件工程师就可以毫无阻碍地在实际生产系统中进行开发和故障调试

控制器不但降低了成本,避免了重复开发,而且还加速了开发进程

 

  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新留言

最近发表