按键阵列扫描及点阵显示器控制电路设计改版.docx
1
目录
第一章设计指标 2
1.1设计指标 2
1.2硬件环境 2
第二章系统概述 2
2.1设计思想 2
2.2可行性论证 4
2.3各功能的组成 4
2.4总体工作过程 5
第三章单元电路设计与分析 6
3.1各单元电路的选择 6
3.2设计及工作原理分析 7
第四章电路的组构与调试 16
4.1遇到的主要问题 16
4.2现象记录及原因分析 16
4.3解决措施及效果 16
4.4功能的测试方法、步骤、设备、记录的数据 16
第五章结束语 17
5.1对设计题目的结论性意见及进一步改进的意向说明 17
5.2总结设计的收获与体会 18
附图(电路总图) 18
参考文献 20
2
第一章、设计指标
1.1设计指标
设计一个按键阵列判断电路,采用发光二极管点阵显示器以12个显示符标识12个按键。当有健按下时,显示其标识符,并保持显示符直到新的按键作用。如果多个按键同时闭合,只响应最先作用的按键。
1.2硬件环境
设计对象的实现环境与采用的FPGA开发装置有关,本节以LP—2900为例,说明采用按键阵列扫描和点阵显示器控制电路的设计原理和实现方法。
LP—2900开发装置上有“0~9”、“*”、“#”共12个键构成的3行4列按键阵列以及8行8列64个点的点阵显示器。
FPGA通过端口RK1~RK3读取键阵列的行线状态X0~X2;通过3—8线译码器控制键阵列的列线Y0~Y3。74138的译码输入由FPGA端口DE3~DE1控制。
点阵显示器各行由FPGA的端口ROW1~ROW8控制,点阵显示器各列由FPGA端口C1~C8通过反相器控制,以满足电流驱动能力。
第二章、系统概述
2.1设计思想
1.按键扫描原理
数字电路中,按键的闭合和断开状态可以通过其控制的逻辑电平判断。
(1)按键状态判断
3
按键的闭合断开可以转换成代表0或1的二值逻辑的低电平和高电平,判断电路输出的电平即可了解按键的通、断状态。按键一般为机械开关,其触点的合、断有弹性抖动。为了保证按键动作一次,电路只判断到一次电平状态的改变,需要采用消抖动措施。采用基本RS触发器可以对电平信号整形,实现消抖。
(2)按键阵列判断
若需要判断的按键较多,为节省信号端口资源,一般将按键分成行、列两组连接成阵列形式。每个按键跨接在一条行线和一条列线间。当按键闭合时,行线与列线接通。每条行线都通过一个电阻上拉到+5V电位,当行线上的所有按键都未闭合时,行线一定为高电平。当某条列线为低电平是,根据各行线的电平可判断该列线上各键的状态。
(3)按键扫描判断
若以负脉冲扫描序列信号控制键阵列的列线,使各列线分时为低电平,同时顺序判断各行线电平,就能逐个确定各键状态。显然,每个按键的扫描时间是列线的低电平时间,而阵列的扫描周期是按键扫描时间乘以键数。所以,按键的闭合时间必须大于阵列扫描周期,否则闭合状态可能会被遗漏。比如,当阵列为16个键时,如果每个键的扫描时间是10ms,则键的闭合时间必须大于0.16s。按键的闭合时间因人的动作快慢而异,通常为零点几秒至一点几秒。
2.发光二极管点阵显示原理
点阵显示电路是由发光二极管组成的阵列。每一行发光二极管的阳极接在一
4
起,由行信号ROWi控制;每一列发光二极管的阴阳极接在一起,由列信号Cj驱动。
如果把发光二极管阵列的每一行看做一个8段共阳显示器,ROWi为阳极公共端,每一列Cj就是显示器的一个段,低电平有效。这样,8*8点阵显示电路与8位动态扫描共阳显示电路的结构完全相同,当行扫描信号为高电平时,列信号的低电平可以控制该行各列的发光管亮。比如,当ROW1为高电平时,若列信号C1~C8为,则ROW1行第一和最末的发光管灭,其他6个亮。同理,若把发光二极管阵列的每一列看做一个8段共阴显示器,Cj为阴极公共端,8*8点阵显示电路就与8位动态扫描共阴显示电路的结构相同。
由于LP—2900开发装置上点阵显示器的列信号通过反相器驱动,所以其FPGA的列控制逻辑为高电平有效,即当ROWi、Cj都为“1”时,第i行、第j列的发光二极管亮。
根据动态扫描显示控制的原理,如果采用一个计数器顺序产生8路行扫描信号RW1~RW8,同时根据各行发光二极管的显示要求同步控制列信号,当扫描计数频率足够高时,点