按键阵列扫描及点阵显示器控制电路设计改版.docx
《按键阵列扫描及点阵显示器控制电路设计改版.docx》由会员分享,可在线阅读,更多相关《按键阵列扫描及点阵显示器控制电路设计改版.docx(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录第一章设计指标. 21.1设计指标21.2 硬件环境2第二章 系统概述 . 2 2.1设计思想. 22.2可行性论证. 4 2.3各功能的组成42.4总体工作过程5第三章 单元电路设计与分析63.1各单元电路的选择63.2设计及工作原理分析7第四章 电路的组构与调试. 16 4.1 遇到的主要问题. 164.2 现象记录及原因分析. 164.3 解决措施及效果 164.4 功能的测试方法、步骤、设备、记录的数据16第五章 结束语175.1对设计题目的结论性意见及进一步改进的意向说明. 175.2 总结设计的收获与体会. 18附图(电路总图)18参考文献20第一章、设计指标1.1设计指标设计
2、一个按键阵列判断电路,采用发光二极管点阵显示器以12个显示符标识12个按键。当有健按下时,显示其标识符,并保持显示符直到新的按键作用。如果多个按键同时闭合,只响应最先作用的按键。1.2硬件环境设计对象的实现环境与采用的FPGA开发装置有关,本节以LP2900为例,说明采用按键阵列扫描和点阵显示器控制电路的设计原理和实现方法。LP2900开发装置上有“09”、“*”、“#”共12个键构成的3行4列按键阵列以及8行8列64个点的点阵显示器。FPGA通过端口RK1RK3读取键阵列的行线状态X0X2;通过38线译码器控制键阵列的列线Y0Y3。74138的译码输入由FPGA端口DE3DE1控制。点阵显示
3、器各行由FPGA的端口ROW1ROW8控制,点阵显示器各列由FPGA端口C1C8通过反相器控制,以满足电流驱动能力。第二章、系统概述2.1 设计思想1.按键扫描原理数字电路中,按键的闭合和断开状态可以通过其控制的逻辑电平判断。(1)按键状态判断按键的闭合断开可以转换成代表0或1的二值逻辑的低电平和高电平,判断电路输出的电平即可了解按键的通、断状态。按键一般为机械开关,其触点的合、断有弹性抖动。为了保证按键动作一次,电路只判断到一次电平状态的改变,需要采用消抖动措施。采用基本RS触发器可以对电平信号整形,实现消抖。(2)按键阵列判断若需要判断的按键较多,为节省信号端口资源,一般将按键分成行、列两
4、组连接成阵列形式。每个按键跨接在一条行线和一条列线间。当按键闭合时,行线与列线接通。每条行线都通过一个电阻上拉到+5V电位,当行线上的所有按键都未闭合时,行线一定为高电平。当某条列线为低电平是,根据各行线的电平可判断该列线上各键的状态。(3)按键扫描判断若以负脉冲扫描序列信号控制键阵列的列线,使各列线分时为低电平,同时顺序判断各行线电平,就能逐个确定各键状态。显然,每个按键的扫描时间是列线的低电平时间,而阵列的扫描周期是按键扫描时间乘以键数。所以,按键的闭合时间必须大于阵列扫描周期,否则闭合状态可能会被遗漏。比如,当阵列为16个键时,如果每个键的扫描时间是10ms,则键的闭合时间必须大于0.1
5、6s。按键的闭合时间因人的动作快慢而异,通常为零点几秒至一点几秒。2.发光二极管点阵显示原理点阵显示电路是由发光二极管组成的阵列。每一行发光二极管的阳极接在一起,由行信号ROWi控制;每一列发光二极管的阴阳极接在一起,由列信号Cj驱动。如果把发光二极管阵列的每一行看做一个8段共阳显示器,ROWi为阳极公共端,每一列Cj就是显示器的一个段,低电平有效。这样,8*8点阵显示电路与8位动态扫描共阳显示电路的结构完全相同,当行扫描信号为高电平时,列信号的低电平可以控制该行各列的发光管亮。比如,当ROW1为高电平时,若列信号C1C8为“01111110”,则ROW1行第一和最末的发光管灭,其他6个亮。同
6、理,若把发光二极管阵列的每一列看做一个8段共阴显示器,Cj为阴极公共端,8*8点阵显示电路就与8位动态扫描共阴显示电路的结构相同。由于LP2900开发装置上点阵显示器的列信号通过反相器驱动,所以其FPGA的列控制逻辑为高电平有效,即当ROWi、Cj都为“1”时,第i行、第j列的发光二极管亮。根据动态扫描显示控制的原理,如果采用一个计数器顺序产生8路行扫描信号RW1RW8,同时根据各行发光二极管的显示要求同步控制列信号,当扫描计数频率足够高时,点阵显示的效果为一个稳定的字符。2.2可行性论证该设计方案在理论上是可行的。按键扫描部分由状态机A提供各个扫描信号,用ROM实现代码转换功能,发光二极管点
7、阵显示电路由3位二进制数控制行扫描信号,同时控制列显示码同步循环输出,即可显示预设的字符。2.3各功能的组成根据按键阵列的判断原理,可采用一个计数器产生按键编码信号。计数器的脉冲周期等于按键的扫描时间,计数器的模M大于等于被扫描的按键数N。本设计要求判断12个按键的阵列,所以可采用4位二进制计数器产生按键扫描码。计数器输出控制译码器产生列扫描信号Y0Y3,并控制数据选择器选择行线电平Xi。当被扫描的按键闭合时,选择器的输出信号控制寄存器保存计数器当前的键码状态,同时封锁计数器停止键扫描,以避免其他按键闭合时产生的影响。发光二极管点阵电路采用3位二进制计数器译码后扫描控制其行(列)信号ROWi(
8、Cj),同时控制列(行)显示码同步循环输出。所以,必须设计一个译码逻辑元件,根据寄存器保存的按键编码输出键符显示列(行)控制码。键符显示译码器可采用AHDL真值表方式、组合逻辑器件或只读存储器ROM来实现。2.4总体工作过程1.按键编码计数器A输出4位二进制码Q3Q0,每组码通过译码器A产生一列低电平有效的列信号,同时通过数据选择器选中一个行线信号判断连接该列、该行的按键状态。当数据选择器输出低电平时,表示被扫描键闭合。所以,计数器输出的二进制码与阵列中的按键一一对应。显然,按键的编码位序与计数器的输出控制有关。若计数器的高两位输出Q3、Q2控制选择信号B1和B0,低两位输出Q1、Q0控制译码
9、信号A1和A0,则计数器输出为“0001”时,Y0为低电平,选择输出X1的状态,扫描按键S2。因此,“0001”为S2的键码。2.键符显示码存储由于ROM的数据输出控制点阵的列信号C1C8,因此ROM中每个存储单元的数据就是一行列控制码,每位数据控制一列。一个显示符的8行控制需要8个单元的列码数据,12个不同的键符显示需要96个存储单元,这样显示译码存储器至少需要7位地址。如果ROM的高4位地址A6A3由键码Q3Q0控制,低3位地址A2A0由行扫描计数器B控制,每个显示符的8行列控制码被存放在以键码划分块的连续8个存储单元中。建立存储数据文件时要注意数据位序与点阵序列的关系以及存储单元低3位地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 按键 阵列 扫描 点阵 显示器 控制电路 设计 改版
限制150内