矩阵键盘显设计报告_第1页
矩阵键盘显设计报告_第2页
矩阵键盘显设计报告_第3页
矩阵键盘显设计报告_第4页
矩阵键盘显设计报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 摘要在日常生活中,我们经常要用到键盘来实现对电子装置的控制。小到手表手机,中到电视电脑,大到各种复杂仪器,都需要通过各种按键来实现各种操作。本次课程设计以按键控制显示为主题,以MSP430G2553单片机及其接口芯片为核心构造一个键盘控制显示系统。单片机最大的特点是能单独实现电路控制所要求的智能化控制功能。单片机控制系统能够取代以前利用复杂电子线路和数字电路构成的控制系统,可以通过软件来实现。数码管4*4矩阵键盘按键号是按下任意键时,数码管都会显示其按键序号,通过MSP430G2553单片机的程序处理,扫描程序首先判断按键发生在哪一列,然后根据所在的行附加不同的值,从而得到按键的序号。关键词

2、: 单片机MSP430G2553 数码管 键盘显示 Abstract In daily life, we often want to use the keyboard to realize the control of electronic devices. Small to watch phone, to TV in computer, big to all kinds of complex instruments, all need through all kinds of pressing buttons all kinds of operation. This course desig

3、n buttons to control and display as the theme, MSP430G2553 single-chip microcomputer and its interface chip as the core structure a keyboard control and display system. The biggest characteristics is a single chip microcomputer control realization circuit can alone for the intelligent control functi

4、on. Single-chip microcomputer control system can be replaced by complex before electronic circuits and digital circuit consists of the control system, by software to realize. Digital tube 4 * 4 matrix keyboard key number is press any key, digital tube will show the buttons, serial Numbers, through t

5、he MSP430G2553 microcontroller procedures, scanning program first judge where a list of key happen, then according to the line where additional different values, which get buttons serial number.Keywords: SCM MSP430G2553 digital tube keyboard display 目录1 系统方案分析31.1键盘的选用31.2单片机的选用31.3显示器的选用41.4辅助功能的论证

6、与选用42系统理论分析与计算52.1单片机主机系统电路分析52.2复位电路分析52.3矩阵式键盘电路分析52.4译码显示电路分析63.电路与程序设计63.1电路的设计63.2程序设计84 测试方案与测试结果94.1测试方案94.2 测试的结果和分析94.3 实验总结95 参考文献9附录一9附录二11附录三111 系统方案分析本实验是基于msp430g2553的矩阵键盘显示,以msp430g2开发板为中枢系统,4*4矩阵键盘输入,LED共阴极数码管为显示输出。基本要求:当依顺序按下键盘的每个按键时,数码管从0依次跳至F。系统方案图见图1-1。.键盘输入模块单片机模块辅助功能模块译码与显示模块 图

7、1-1 系统方案图本键盘显示系统主要由以下几个功能模块构成:(各模块原理图见附录一)1.键盘输入模块2.单片机模块3.辅助功能模块(锁存器)4译码与显示模块1.1键盘的选用方案一:独立式键盘,每个按键占一条I/O线,当按键数量较多时,I/O口利用率不高,但程序编制简单。适用于所选按键较少的场合。方案二:矩阵式键盘,电路连接和软件编程较复杂,但提高了I/O口利用率。适用于I/O少但需要使用大量按键的场合。综上所述:由于本系统采用MSP430G2553单片机,其I/O口很少,且需按键较多,故选用方案二。1.2单片机的选用方案一:STC89C52单片机,市面上使用非常普遍的一种单片机,人们对它非常的

8、熟悉,价格较便宜,4组I/O接口,但对于较复杂的程序指令处理速度相对430G2553单片机较慢。方案二:MSP430G2553单片机,由TI公司生产的一款超低功耗单片机,由于引进了 Flash 型程序存储器和 JTAG 技术,不仅使开发工具变得简便,编写指令只有27条,给用户编程带来很大的方便,而且价格也相对低廉,性价比较高,非常适用于本系统。综上所述:由于本实验需要较快的键盘扫描速度,而MSP430G2553单片机的扫描速度比STC89C52的快,更符合实验要求,故选用方案二。1.3显示器的选用方案一:LCD液晶显示器,主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。液晶体

9、积小,功耗低,显示操作简单,显示功能强大,但是,它有一个致命的弱点,其使用的温度范围很窄,通常液晶正常工作温度范围为0度+55度,存储温度范围为20度+60度,即使是宽温级液晶,其正常工作温度是20度+70度,存储温度是30度+80度,考虑到本系统的温度适用环境,和其显示成本,其性价比较低。方案二:LED数码管发光二极管单元连接方式分为共阳极数码管和共阴极数码管。其内部结构简单,使用环境温度范围较宽,编程显示较容易实现,适用于简单的数字和字符显示的要求,由于本系统对显示要求不高,因此采用LED数码管显示。综上所述:由于LED数码管容易操作又容易控制,更符合本实验的要求,比起LED液晶显示器有更

10、高的性价比。故选方案二。1.4辅助功能的论证与选用1.4.1 锁存器功能的论证与选用: 在LED和数码管显示方面,要维持一个数据的显示,往往要持续的快速的刷新。 锁存器的使用可以大大的缓解处理器在这方面的压力。当处理器把数据传输到锁存器并将其锁存后,锁存器的输出引脚便会一直保持数据状态直到下一次锁存新的数据为止。这样在数码管的显示内容不变之前,处理器的处理时间和I/O引脚便可以释放。可以看出,处理器处理的时间仅限于显示内容发生变化的时候,这在整个显示时间上只是非常少的一个部分。而处理器在处理完后可以有更多的时间来执行其他的任务。这就是锁存器在LED和数码管显示方面的作用:节省了宝贵的MCU时间

11、。本实验选用74HC573。1.4.2译码器7448功能的论证与选用: 7段显示译码器7448是输出高电平有效的译码器,除了实现7段译码器基本功能的输入和输出外,还引用了灯测试端和动态零输入端,以及既有输入功能和输出功能消隐输入/动态灭零输出端。若引用7448译码器芯片,则MSP430G2单片机的P2端口只需输出四位,由译码器对输入的四位进行二进制译码,可以使数码管显示相应的数字。从而使编程将会更加简单,电路也更加简洁。但出于芯片的短缺,未能选用。2系统理论分析与计算 本次试验是以MSP430G2单片机的P1端口的高四位为输入,低四位为输出接矩阵4*4键盘,然后P2端口的八位输出接74HC57

12、3 芯片的八位输入,其中,74HC573芯片具有延时作用,其输出接LED数码管的输入,其原理图见附录一。 2.1单片机主机系统电路分析 MSP430G2553单片机是430单片机一个成员,其主要特点是超低功耗,有五种省电模式,6us内从待机模式唤醒。而且16位RISC结构的CPU通过总线连接到存储器和外围模块,可提供三种时钟信号:ACLK、MCLK、SMCLK。它拥有64KB寻址空间,包括ROM、RAM、Flash,有多个I/O口和7种寻址模式,具有多达16个中断源(如定时器.串行口,P1,P2,WDT等),多级优先级,可以实现中断嵌套。MSP430G2553内部自带可编程Flash存储器的低

13、电压,高性能COMS十六位微处理器,与MSP430G2553单片机的指令和输出管脚相兼容。由于将多功能十六位CPU和闪速存储器结合在单个芯片中,因此这种单片机系统具有结构简单,价格低廉,效率高的微控制系统,省去了外面的ROM,RAM和接口器件,减少了硬件的开销,节省了成本,提高了系统的性价比。2.2复位电路分析为了初始化单片机内部的某些特殊功能寄存器,必须利用复位电路,复位后可以使CPU及系统的各部件处于初始状态,并从初始状态开始工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期以上的低电平,即可以起系统复位,但RST引脚上出现持续低电平,单片机就处于循环

14、复位状态,复位后系统将输入/输出(I/O)端口寄存器置为FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清零,内部的RAM的状态不受置位的影响,在系统上位时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位形式。其原理图见附录一。2.3矩阵式键盘电路分析MSP430G2553单片机的并行接口P1接4*4矩阵键盘,以P1.41.7作输入线,以P1.01.3作输出线;P2口输出按键信息,在数码管上显示每个按键的“0F”序号。矩阵键盘实际电路连接见附录。当无按键闭合时,P1.01.3 与P1.41.7之间开路。当有按键闭合时,相连的两条I

15、/O口线之间短路。判断有无按键按下的方法是:(1)置列线P1.41.7为输入状态,从行线P1.01.3输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合。(2)行线轮流输出低电平,从列线P1.41.7读入数据,肉有某一列为低电平,则对应行列线上有按键按下。综合(1)(2)两步的结果,可确定按键编号。2.4译码显示电路分析本系统输出结果选用4个LED显示。本系统采用8段共阴极型LED,其原理图见图1-2。 图1-2 译码显示电路原理图数码馆内部有8个发光二极管,公共端由8个发光二级管的阴极并接而成,正常先试试公共端接低电平,各发光二级管是否点亮取决于adp各引脚上是否高电平。由于本

16、显示电路功能简单,为是编程简单,采用直接输出模式,即把锁存器的B0B7接口用8芯排连线到数码管显示模块区域中的adp端口上,要求a对应B0,b对应B1,dp对应B7。3. 电路与程序设计4. 3.1电路的设计:经上述的分析,决定该系统采用的最终方案如下:1.输入模块:4*4矩阵键盘2.单片机模块:MSP430G2开发板3.辅助功能模块:74HC573锁存器4.译码与显示模块:4个LED数码3.1.1系统总体框图: 本次试验是以MSP430G2单片机的P1端口的高四位为输入,低四位为输出接矩阵4*4键盘,然后P2端口的八位输出接74HC573 芯片的八位输入,其中,74HC573芯片具有延时作用

17、,其输出接LED数码管的输入,其原理图见图1-3。矩阵式键盘电路MSP430G2开发板锁存器74HC573 LED数码管 图1-3 系统总体框图 3.1.2系统电路图:见图1-4 图1-4 系统电路图3.2程序设计系统采用C语言编程实现各项功能。C语言本身带有各种库函数,运算能力较强,而本系统的软件中算数运算比较多,利用C语言编程可以体现出一定优势。程序是在Window7环境下采用IAR软件编写的,可实现对键盘的精确控制。程序流程图:见图1-5 图1-5 程序流程图4 测试方案与测试结果 4.1测试方案:1、硬件测试:分别对每个模块做相应的测试。2、软件仿真测试:使用Altium Design

18、er软件进行仿真。3、硬件软件联调:对4*4矩阵键盘的测试是在一个自制的符合设计任务要求的场地中测试的,逐步按要求进行测试。4.2 测试的过程和分析: 运行单片机控制数码管显示系统,循序按下16个复位开关可以在数码管上显示0F 字符,为了检测本系统的灵活性,乱序按下复位开关,例如:按下1号键显示1,按下6号键显示6,按下16号键显示F。同样可以对应按键位置在数码管上显示相应的字符,在测试过程中出现过按键不灵的情况,分析程序,查出是键盘扫描程序中的延时不够,加长延时后,键盘灵活性提升,系统性能达到要求。4.3 实验总结: 此次4*4矩阵键盘和数码管显示系统是以msp430g2553单片机为控制器

19、核心,采用16个按钮开关矩阵式(4*4)排列和连接,来作为系统输入扫描电路来控制,并通过共阴极数码管实现键盘输入键位的显示。 首先,采用msp430g2553单片机向其P1口的低四位(P1.0P1.3)输出二进制数1110,然后检测P1口的高四位(P1.4P1.7)哪一位有低电位,来实现键值“14”的检测扫描。按照此方法我们可以实现其他键值的检测与扫描。此处突出了矩阵式键盘的接口少按键多的优点,但编程相对复杂。其次,通过msp430g2553单片机判断的键值经过处理得到相应的数码管字符显示段码,向数码管输出键码,显示出相应字符。数码管的易操作和显示的高亮度性提升了本系统的稳定性。最后,通过软件

20、的理论性检测和实际检测,本实验最终获得成功。在调试和改进的过程中,不断完善本系统的稳定性,使得实验更符合要求。以上三方面的优点是该设计方案得以取得良好的实验结果的有力保障。同时,该设计方案也存在不足和有待完善之处。如矩阵式键盘的检测和扫描虽减少了I/O接口,但在程序修改上比较麻烦和不便。5 参考文献【1】郭天祥 430单片机C语言教程 北京 电子工业出版社 2011年 【2】李智奇 MSP430系列超低功耗单片机原理与系统设计 第二版 西安电子科技大学出版社 北京 2009年附录一:各模块的子原理图如下: 图1 4*4矩阵键盘原理图 图2 单片机接口原理图 图3 锁存器功能模块 图4 数码管显

21、示原理图附录二:#include <msp430g2553.h>/引用头文件#define uchar unsigned char#define uint unsigned intuchar key ;uchar keybuf;const uchar seg=0x3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X71;void Init_Port(void) /将P1口所有的管脚在初始化的时候设置为输入方式 P1DIR = 0; /将P1口所有的管脚设置为一般I/O口 P1SEL =

22、 0; P2DIR = 0XFF; P2SEL = BIT6; P2SEL = BIT7; P1DIR |= BIT0; P1DIR |= BIT1; P1DIR |= BIT2; P1DIR |= BIT3; /先输出低电平 P1OUT = 0x00; P2OUT = 0x00; _EINT();/判断有无键按下uchar P1key()uchar key;key=(P1IN&0xf0);return(key);/延时程序;void delay(uint n) uint i; for(;n>0;n-) for(i=800;i>0;i-); /扫描识别键码uchar key

23、code() uchar key1 = 0x00,key2 = 0x00; P1DIR = 0x0f; P1OUT = 0xf0; delay(10); key1 = P1IN; if(key1&0xf0)!= 0xf0) delay(50);/延时 key1 = P1IN; if(key1&0xf0)!= 0xf0) P1OUT = 0x0e; delay(10); key1 = P1IN; if(key1&0xf0)= 0xe0) delay(10);/延时; key2 = 12; if(key1&0xf0)= 0xd0) delay(10);/延时 key

24、2 = 8; if(key1&0xf0)= 0xb0) delay(10);/延时 key2 = 4; if(key1&0xf0)= 0x70) delay(10);/延时 key2 = 0; P1OUT = 0x0d; delay(10); key1 = P1IN; if(key1&0xf0)= 0xe0) delay(10);/延时; key2 = 13; if(key1&0xf0)= 0xd0) delay(10);/延时 key2 = 9; if(key1&0xf0)= 0xb0) delay(10);/延时 key2 = 5; if(key1&

25、amp;0xf0)= 0x70) delay(10);/延时 key2 = 1; P1OUT = 0x0b; delay(10); key1 = P1IN; if(key1&0xf0)= 0xe0) delay(10);/延时; key2 = 14; if(key1&0xf0)= 0xd0) delay(10);/延时 key2 = 10; if(key1&0xf0)= 0xb0) delay(10);/延时 key2 = 6; if(key1&0xf0)= 0x70) delay(10);/延时 key2 = 2; P1OUT = 0x07; delay(10); key1 = P1IN; if(key1&0xf0)= 0xe0) delay(10);/延时; key2 = 15; if(key1&0xf0)= 0xd0) delay(10);/延时 key2 = 11; if(key1&0xf0)= 0xb0) delay(10);/延时 key2 = 7; if(key1&0xf0)= 0x70) delay(10);/延时 key2 = 3; return

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论