随着手机及其他便携手持装置的功能不断增加,设计的取舍平衡亦日趋精细。文本信息与网络浏览等流行功能都要求更多的数据输入,而这对于传统的双音多频 (DTMF) (0-9, #, *) 键盘会比较困难。使用这种键盘要求多端数据输入,输入效率低而且容易出错。 图 1 – QWERTY 键盘(摩托罗拉 A630) 使文本输入更为方便的一个方法是使用 QWERTY 键盘(见图 1)。这种键盘采用 40 个或更多按键,而 DTMF 手机通常采用 12 个。当然,多出的按键会使手机体积变大,用到的电子组件也更多。 然而,文本信息用户可能乐意以体积换取 QWERTY 键盘,因为文本输入大为 【元器件应用中的使用CPLD实现QWERTY键盘】是现代电子设备设计中针对文本输入需求增加的一种解决方案。随着手机和其他手持设备的功能日益丰富,传统的双音多频(DTMF)键盘已无法满足用户对高效数据输入的需求,尤其是对于频繁发送文本信息和浏览网页的用户。QWERTY键盘因其布局合理、输入效率高而受到青睐,但其多按键设计增加了硬件的复杂性和体积。 QWERTY键盘通常包含40个或更多按键,相比之下,DTMF键盘仅有12个按键。虽然QWERTY键盘的使用会使得设备体积增大,但由于其提高了文本输入的便捷性,许多用户愿意为此妥协。近年来,一些手机制造商已经开始推出带有QWERTY键盘的设备以迎合市场需求。 在实现QWERTY键盘的过程中,设计者面临的主要挑战是如何处理大量按键带来的输入信号。传统的处理方式是通过处理器或数字信号处理器(DSP)直接扫描行和列,但这种方法可能会占用过多的通用输入/输出(GPIO)资源,尤其在需要扩展到8行8列的QWERTY键盘时。 为了解决这个问题,文章提出使用Xilinx CoolRunner-II CPLD(复杂可编程逻辑器件)作为I/O扩展器。CPLD因其低功耗、小尺寸和低成本特性,成为了扩展GPIO的理想选择。通过CPLD,可以将键盘的行/列连接到处理器的有限GPIO端口,减少了对处理器GPIO的需求。例如,使用CPLD后,即使8x8的键盘也能只占用与4x4键盘相同的GPIO端口数量。 CPLD不仅可以扩展GPIO,还能执行键盘扫描和编码功能。它负责监测行扫描和列状态变化,当检测到按键按下时,CPLD会生成一个编码字并传送给处理器,告知处理器具体按下的按键。编码字通常使用几位二进制来代表不同的按键,比如6位编码字可以表示64个按键,减去一个代表无按键状态的值,实际可表示63个按键。 此外,CPLD还可以处理开关抖动问题,避免由于机械开关的瞬间不稳定导致的误触发。处理器仅需关注GPIO端口上的变化,不再需要执行复杂的扫描任务,从而减轻了处理器的负担并提高了系统效率。 总结来说,通过CPLD实现的QWERTY键盘方案,巧妙地解决了大型键盘与处理器GPIO资源限制之间的矛盾,降低了处理器的工作负载,提升了整体系统的性能和用户体验。这种设计在CoolRunner-II 32宏单元的CPLD上实现尤为合适,体现了CPLD在现代电子设计中的灵活性和实用性。
- 粉丝: 2
- 资源: 937
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助