EDN China > 设计实例 > 嵌入式系统 > MCU(单片机应用) > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

简单的4×4行列式键盘控制电路设计

/?? 2013年09月22日 ?? 收藏1
1.概述

键盘是一组按压式开关的集合,是微机系统不可缺少的输入设备,用于输入数据和命令。键盘的每一个按键都被赋予一个代码,称为键码。键盘系统的主要工作包括及时发现有键闭合,求闭合键的键码。根据这一过程的不同,键盘可以分为两种,即编码键盘和非编码键盘。编码键盘是通过一个编码电路来识别闭合键的键码,非编码键盘是通过软件来识别键码。由于非编码键盘的硬件电路简单,用户可以方便地增减键的数量,因此在单片机应用系统中,非编码键盘得到广泛的应用,有较好的应用价值。

2.设计原理

首先应该了解本次设计的基本要求和目的,再通过查找资料了解80C51单片机的工作原理、结构图,数码显示管的结构和工作原理。根据设计要求可以将单片机P3口接4×4键盘,P0口接数码显示管,根据扫描原理进行行扫描,用CJNE指令判断P3口的状态。采用软件延时去抖动,用MOVC A,A+DPTR取键值。

建立键值对应的显示码,通过查表指令实现键值的显示。由此画出设计流程图和利用汇编语言进行编程。最后利用Proteus画出电路图进行仿真。其系统原理框图如图1所示。

3.单元电路设计

3.1 显示电路

按显示方式分,用单片机驱动LED数码管的方法有静态显示和动态(扫描)显示两种。

静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后需要刷新,直到下一次显示内容需要更新时再传送新的数据,这种方法显示稳定,占用CPU时间少。本设计主要是用的动态显示,它的特点正好与静态显示相反,需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多,但动态显示所需硬件少,电路相对简单,能节省线路板空间。采用1位8段共阴极LED,P0口作为LED显示码输出端,因为只采用1位数码管,因此线选端直接接地。

如图2所示。

3.2 键盘电路

用AT89S51的并行口P3接4×4行列式键盘,以P3.0-P3.3作输出线,以P3.4-P3.7作输入线;在数码管上显示每个按键的“0-F”

序号。对应的按键的序号排列如图3所示。

3.3 电路仿真

采用Proteus仿真软件进行仿真,在仿真之前先按照预设值好的电路图进行连线,以及布局,最后确定线路已连接好,将汇编程序编译生成。hex文件,加载到51芯片中,再运行开始仿真,电路仿真效果图如图4所示。

4.结束语

本设计是以单片机为控制核心的键盘系统,对该系统的结构原理进行了相应的描述。通过对键盘的操作在数码管上显示相应的按键字符,具有使用方便、操作简单等特点。随着单片机的日益发展,它必将更多的电子系统设计中得到更多的应用,为电子设计增加更多精彩。


?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈