单片机数码管显示系统课程设计_第1页
单片机数码管显示系统课程设计_第2页
单片机数码管显示系统课程设计_第3页
单片机数码管显示系统课程设计_第4页
单片机数码管显示系统课程设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

数码管显示与键盘扫描系统摘要:现如今已经跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。这种计算机的最小系统只用了一片集成电路,就可进行简单运算和控制。因为它体积小,通常都是放置在一个机械装置的内部。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。数码管显示与键盘扫描系统是单片机系统中十分典型的应用,可将4X4键盘的按键对应显示在数码管上。关键词:单片机关键词:单片机数码管一、绪论研究意义用单片机驱动LED数码管有很多方法,按显示方式可分静态显示和动态(扫描)显示;按译码方式可分硬件译码和软件译码。静态显示数据稳定,占用很少的CPU时间。动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。LED数码管的外围电路一般需要一个限流电阻和加大驱动电流的品体管。LED数码管是由发光二级管显示字段组成的显示器,有“8”字段和“米”字段之分,这种显示器有共阳极和共阴极两种。实际上不用驱动电路即可达到正常亮度,为了可靠性设计可采用品体管构成驱动电路。设计目的在单片机的产品设计中,人机界面是非常重要的部分,而且随着系统的日益复杂,以及人们对产品的人机交互能力的要求不断提升,常握单片机系统中的人机界面基础设计能力成为了学习单片机的基础课程,而4X4键盘的操作和LED数码管的动态显示是人机界面设计的基础内容,掌握这些基础设计能力,加深对人机界面的认识,同时提高人机界面系统设计能力。研究范围及技术要求半导体数码管,4X4键盘。做此实验用51板,因为51板提供了相应的LED模组,LED显示器是单片机应用中常用的输出器件,4X4键盘的扩展显示也是在MCS-51上进行实验。给4X4键盘的每个键定义一个功能,其中把定义为0~9的键盘称为数字键,把定义成DEL的键称为删除键,把定义成ENT的键成为确认键,其他键称为保留键。如果是数字键按下,把代表数字显示在数码管上:按键按下时,6位数码管靠右边显示该键的代表数字;继续按键时,已经显示在数码管上的数字左移一位,按键代表的数字显示在最右边的数码管上。发展及指导思想单片机在开发过程中,常常会因为资源不足而不得不大量扩展接口芯片以满足应用系统的需要。国外主要采用串行接口的键盘显示专用芯片,如BC7280/81、HD7279、CH451等。这类芯片占用CPU的资源少,传输速度较快,外围器件要求也较少,在中小系统中都可得到广泛的应用。指导思想主要是用串行接口使得键盘的扩展在LED上显示。二、方案论述数码管工作原理数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字0〜9,字符A〜F、H、L、P、R、U、Y等符号及小数点“.”。数码管又分为共阴极和共阳极两种类型。共阳极数码管中8个发光二极管的阳极(二极管正端)连接一起,即为共阳极接法,简称共阳数码管。通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输入端为低电平时,该端所连接的字段导通并点亮。根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。共阴极数码管中8个发光二极管的阴极(二极管负端)连接在一起,即为共阴极接法,简称共阴数码管。通常,共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,该端所连接的字符导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。同样,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。

1LI115心世真T6WMiHiIW"F?!*0些』倾如丹建1LI115心世真T6WMiHiIW"F?!*0些』倾如丹建X!g?i?Ji0哼网F31网PgJiWm丽彤砸阳.丝单片机数码管显示控制程序设计仿真图4X4行列式键盘的工作原理行列式键盘的工作方式是先用列线发送扫描字,然后读取行线的状态,查看是否有按键按下。键盘部分提供一种扫描的工作方式,可以和具有64个按键的矩阵键盘相连接,能对键盘不断扫描、自动消抖、自动识别按下的键,并给出编码,能对双键或n个键同时按下的情况实行保护。在显示部分,它可以为发光二极管、荧光管及其他显示器提供按扫描方式工作的显示接口,而且为显示器提供多路复用信号,可以显示多达16位的字符或数字。键盘中有无按键按下是由列线送入全扫描字、行线读入行线状态来判断的,其方法是将列线的所有I/O线均置成低电平,然后将行线电平状态读入累加器A中,如果有键按下,总会有一根行线被拉至低电平,从而使行输入不全为1。键盘中哪一个键按下可由列线逐列置低电平后,检查行输入状态来判断,其方法是依次给列线送低电平,然后检查所有行线状态,如果全为1,则所按下的键不在此列,如果不全为1,则所按下的键必在此列,而且是在与0电平线相交的交点上的那个键。C44X4键盘电路图图中C1~C4为4X4键盘的列扫描线,L1~L4为4X4键盘的行扫描线。先使行扫描线输出高电平,然后读取列扫描线的状态,得到与按键横向位置对应的4位列码;如果是有键被按下时,则对应的列扫描线必然会被读回高电平,如果是无键盘按下时,则读取的列码必定全是0(低电平)。这也就可以判断有无按键的按下了。软件流程图程序开始先对第一列进行扫描,如果没有按键,再对第二列、第三列、第四列分别进行扫描,如果没有返回到开始;如果第一列有按键,在分别对第一行、第二行、第三行、地四行,进行扫描,若有按键按下分别显示0、1、2、3;第二列、第三列、第四列类似第一列,分别对第一行、第二行、第三行、第四行进行扫描,有按键相应的显示出数值。流程图见附件1。4.电路硬件说明.键盘与单片机连接在“单片机系统”区域中,把单片机的P3.0-P3.7端口通过8联拨动拨码开关JP3连接到“4X4行列式键盘”区域中的M1-M4,N1-N4端口上。.单片机与LED连接在“单片机系统”区域中,把单片机的P0.0-P0.7端口连接到“静态数码显示模块”区域中的任何一个a-h端口上;要求:P0.0对应着a,P0.1对应着b,P0.7对应着h。5.程序设计内容.4X4矩阵键盘识别处理.按键的行列接法每个按键都有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。键盘的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么?还要消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接地;另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。程序#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbitBEEP=P3”7;ucharcodeDSY_CODE[]=(0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00};ucharPre_KeyNO=16,KeyNO=16;voidDelayMS(uintms)(uchart;while(ms--)(for(t=0;t<120;t++);}}voidKeys_Scan()(ucharTmp;P1=0x0f;DelayMS(1);Tmp=P10x0f;switch(Tmp)(case1:KeyNO=0;break;case2:KeyNO=1;break;case4:KeyNO=2;break;case8:KeyNO=3;break;default:KeyNO=16;}P1=0xf0;DelayMS(1);Tmp=P1>>4"0x0f;switch(Tmp)(case1:KeyNO+=0;break;case2:KeyNO+=4;break;case4:KeyNO+=8;break;case8:KeyNO+=12;}}voidBeep()(uchari;for(i=0;i<100;i++)(DelayMS(1);BEEP=~BEEP;}BEEP=1;}voidmain()(P0=0x00;while(1)(P1=0xf0;if(P1!=0xf0)Keys_Scan();if(Pre_KeyNO!=KeyNO)(P0=~DSY_CODE[KeyNO];Beep();Pre_KeyNO=KeyNO;}DelayMS(100);}}结果分析结果仿真图结论通过这次课程设计,Keilc51软件工作环境的熟悉以及掌握基本的操作,实现电路原理图的绘制及电路仿真的实现,我还认识到理论与实际相结合的重要性,理论知识再丰富,没有实际的操作经验是不行的,这样还可以锻炼我们的实际动手操作能力和独立思考能力。单片机知识在电子领域越来越重要了,在这次课程设计中我又了解了更多单片机的知识,从而也对单片机仿真软件产生了兴趣,学到了书上没有的东西,为以后工作又做了一层铺垫。在课程设计过程中遇到的一些问题,通过查询资料和结合平时学到的知识,当然还有和同学的讨论得到了解决。致谢经过这一个周的实训,单片机课程设计也已接近尾声,回顾这星期内和老师、同学们一起努力时的点点滴滴,不经感慨万千。在此我首先要感谢学校,是学校给我们提供了良好的硬件设施,让我们能顺利的完成实训。其次,我要感谢我的单片机老师一陈显明老师。陈老师无论在课程学习、设计上,还是在为人处事上,都给予我许多教诲,这些影响将使我终身受益。同时我还要感谢

温馨提示

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

评论

0/150

提交评论