《单片机技术课程设计两位数码管显示设计报告.doc》由会员分享,可在线阅读,更多相关《单片机技术课程设计两位数码管显示设计报告.doc(18页珍藏版)》请在三一办公上搜索。
1、课 程 设 计 说 明 书课程名称: 单片机技术 设计题目: 两位数码管显示设计 院 系: 电子信息与电气工程学院 学生姓名: X X 学 号: xxxxxxxxxxxx 专业班级: XXXXXXXXXXXXX 指导教师: X X X 2012年 5月 18 日课 程 设 计 任 务 书设计题目两位数码管显示设计学生姓名鲍承毅所在院系电子信息与电气工程学院专业、年级、班09电子信息工程1班设计要求:使用两位数码管显示器,循环显示两位数00-99;要求具有电源开关和指示灯,有复位按键;数码管动态显示,即扫描方式,每一位每间隔一段时间扫描一次。字符的亮度及清晰度与每位点亮的停留时间和每位显示的时间
2、内轮换导通次数有关。 学生应完成的工作:本课题是基于AT89S52单片机的两位数码管显示系统,应用汇编语言编写两位数码管循环扫描动态显示的专用程序,可以通过查阅手册和文献资料来选择合适的元器件,设计合理的电路来实现符合要求的电路板事物。主要任务应包括:(1)原理图的设计与仿真。(2)学会对不同方案进行比较分析,并通过整体优点与缺点的比较,确定合理的方案。(3)硬件电路的焊接及调试。(4)用汇编语言进行软件的编写与调试。(5)撰写课程设计报告。(6)该生在此次课程设计中主要任务是完善电路原理图的设计和实物正常工作与软件的调试与修改。参考文献阅读:1张毅刚.单片机原理及应用(第二版).北京:高等教
3、育出版社,2010.5 2童诗白.模拟电子技术基础(第四版).北京:高等教育出版社,2006.53杜树春.单片机C语言和汇编语言混合编程实例详解.北京:北京航空航天大学出版社,2006.64林之琦.基于Proteus的单片机可视化软硬件仿真.北京:北京航空航天大学出版社,2006工作计划:2012年5月 7 日 年5 月9 日:原理图设计;2012年5月10日 年5月11日:程序的编写;2012年5月14日 年5月16日:硬件电路的焊接与软件的调试;2012年5月17日 年5月18日:撰写实习报告。任务下达日期:2012 年5月 7 日 任务完成日期:2012 年5月 18 日指导教师(签名)
4、: 学生(签名): 两位数码管显示设计摘 要:该系统是基于AT89S52单片机的两位数码管显示系统,该系统包括电源模块,复位电路模块,外部时钟电路模块、数码管显示模块构成。通过AT89S52进行控制,用汇编语言编写了两位数码管循环扫描动态显示的专用程序。数码管通过共阳极的三极管进行驱动。电源通过桥堆2W10和7805将通过变压的交流电压变为5V的直流电源。复位用电容与按键的并联来实现。时钟用12M的晶振来控制。通过单片机的片选信号控制数码管的灯管,使其依次点亮,由于人眼有视觉暂留的特性和数码管的余辉效应,而扫描频率足够高,因此人眼是感觉不出数码管的变化的关键词:AT89S52;动态扫描显示;共
5、阳极数码管 目录1.设计背景11.1单片机发展前景11.2共阳极数码管的显示方法11.3共阳极数码管的驱动设计12.设计方案12.1方案一:共阳极数码管静态显示22.2方案二:共阳极数码管动态显示22.3数码管静态与动态显示的优缺点比较33方案实施33.1硬件电路的实施33.2电源电路设计43.3复位及震荡电路53.4 数码管显示53.5单片机接口63.6软件设计63.7实物制作94.结果与结论94.1结果94.2结论95.收获与致谢106.参考文献107.附件107.1元器件清单107.2硬件原理图117.3实物图111.设计背景1.1单片机发展前景目前单片机渗透到我们生活的各个领域,几乎很
6、难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。1.2共阳极数码管的显示方法LED数码管是单片机控制系统中最常见的显示器件之一,一般用来显示处理结果或输入输出信号的状态。数码管显示是一个系统工程中必不可少的人机交互环节,因此关于数码管的驱动也就
7、是系统工程中的一个重要的环节。数码管的驱动分为动态驱动和静态驱动两种。所谓静态驱动,就是指无论多少位LED数码管,同时处于显示状态。动态显示驱动是指无论在任何时刻只有一个LED数码管处于显示状态,及单片机采用“扫描”方式控制各个数码管轮流显示。1.3共阳极数码管的驱动设计将数码管每个LED灯对应单片机的一个I/O口。通过单片机的P口来控制LED灯的亮和灭。I/O口之间互相独立,需要用I/O口直接控制LED。动态显示将数码管的每个引脚一对一连接在一起接单片机的数据,而将各个数码管的公共端单独送至单片机的I/O口进行片选。此外,在此基础上,用单片机与三极管来驱动数码管,从而实现数码管的动态显示。2
8、.设计方案2.1方案一:共阳极数码管静态显示 静态显示就是每一个数码管显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种办法单片机中CPU的开销小。能供给单独锁存的I/O接口电路很多,各数码管的公共极固定接有效电平,各数码管的字形控制端分别由各自的控制信号控制。LED显示亮度温度,容易调节,编程容易,工作时占用CPU时间短。但若直接用单片机输出各位数码管的字形信号时,占用单片机的I/O口线较多。一般仅适用于显示位数较少的应用场合。 图21 数码管静态显示电路 2.2
9、方案二:共阳极数码管动态显示 此次设计,用到的就是动态显示。其中P2.0和P2.1端口分别控制数码管的个位和十位的供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V通过驱动三极管给数码管相应的位供电,这时只要P3口送出数字的显示代码,数码管就能正常显示数字。数码管动态显示电路如图22所示: 22 共阳极数码管动态显示电路2.3数码管静态与动态显示的优缺点比较静态显示方式简单不容易出错,如果电路设计合适,也能够用较少的线完成多个数码管的显示。但与动态显示相比,动态显示电路连接更简单,节省单片机I/O口,从而节省单片机的资源,如今已经有很多这样成熟的基于动态扫描的芯片。而且采用动态显示
10、方式极大的节省单片机的资源,特别是在单片机的I/O数量比较紧张的情况下,更能体现采用动态显示的优越性。在现在的多数电子系统中,在用到数码管的场合下,多数采用动态扫描技术来显示。因此此次设计我们也采用了动态显示。3方案实施3.1硬件电路的实施1.硬件组成框图如图3-1: AT89S52 单片机稳 压 电 路两位数码管动态显示电路复 位 电 路时 钟 电 路 图31 硬件组成框图该电路的工作原理:AT89S52从稳压电路中获得稳定的+5V电压,接到VCC端,提供稳定的电压;P2口通过电阻接到显示电路的七段数码管的a b c d e f g 端口上,数码管的共阳极接到三极管的集电极上;P0.0、P0
11、.1口接三极管的基极作为位选; RST接复位电路,实现电路的复位;XTAL1、XTAL2接晶振电路;整个电路实现循环动态显示数字0099.3.2电源电路设计当外接交流电源经过变压通过桥堆2W10和 7805时,经C1、C2、C3、C4对电源进行滤波,实现交流电压变为5V的直流电源,从而直接给单片机提供正常的工作电压。电源电路如图32所示:图32 电源电路3.3复位及震荡电路复位用电容与按键的并联来实现,将它们并在一起,一端接高电平,另一端接地,从而实现高电平复位的功能。时钟用12M的晶振来组成振荡电路,来控制单片机对数码管的动态扫描。复位及振荡电路如图33所示: 复位电路 震荡电路图33复位及
12、振荡电路3.4 数码管显示图3-5 数码管显示电路如图3-5所示,两位数码管分别由两个PNP型三极管驱动,三极管的基极通过限流电阻接在单片机P0.0、P0.1,其中P0.0控制数码管的个位,P0.1控制数码管的十位。数码管各段除小数点段外其余七段(a-g)通过限流电阻接在单片机P2口(P2.0-P2.6),两位数码管显示由单片机内部程序控制相应接口为低电平,从而实现从0099动态循环显示。数码管上引脚9空闲。其余7个引脚对应七段显示数码管的各段。当引脚相应低电位时有效,由程序查表即可显示相应的数字。例如,当个位数码管显示5时,5在程序中查表对应的十六进制数为92H,对应二进制为10010010
13、B,其中P2.7、P2.4、P2.1为高电平,DP、e、b段熄灭,P2.6、P2.5、P2.3、P2.2、P2.0为低电平,g、f、d、c、a段点亮,则此时数码管上显示数字5。3.5单片机接口单片机采用P2口的I/O来控制数码管的各个引脚。复位键接到引脚9上,数码管的位选通过三极管和电阻分别与单片机的引脚1和39相连,晶振与单片机的引脚18和19连接,高电平与40引脚连接供电,20引脚直接接地。P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX);XTAL1是振荡器反相放大器和内部时钟发生电路的输入端。XTAL2是振荡器反
14、相放大器的输出端。3.6软件设计此程序采用汇编语言用十六进制算法编写了两位数码管循环扫描动态显示的专用程序。通过软件的控制使两位数码管能从00计数到99,再回到00,依次进行循环。若在计数期间有复位高电平出现时,便重新从00开始计数。并有电源开关控制让电路是否工作,且有指示灯只是电源是否正常。程序流程图如3-4所示:图3-4 程序流程图程序如下:BITS EQU 20H;数码管个位数存放内存位置TEN EQU 21H;数码管十位数存放内存位置TEMP EQU 22H;计数器值存放内存位置START: MOV TEMP,#0;初始化寄存器,从0开始STLOP: ACALL DISPLAY;调用显
15、示子程序 INC TEMP;计数器加1 MOV A,TEMP; CJNE A,#100,NEXT;判断计数器是否满100 MOV TEMP,#0;满100清零从新开始NEXT: LJMP STLOP;不满就循环执行DISPLAY: MOV A,TEMP;将TEMP中的十六进制数转换成十进制 MOV B,#10; DIV AB MOV TEN,A;十位在A MOV BITS,B;个位在B MOV DPTR,#NUMTAB;指定查表起始地址 MOV R0,#4; DPL1: MOV R1,#250; DPLOP: MOV A,BITS;取个位数 MOVC A,A+DPTR;查个位的7段数码管 MO
16、V P2,A;送出个位的7段代码 CLR P0.0;开个位显示 ACALL DELAY1ms;显示162ms SETB P0.0;关闭个位显示 MOV A,TEN;取十位显示 MOVC A,A+DPTR;查十位数的7段代码 MOV P2,A;送出十位的7段代码 CLR P0.1;开十位显示 ACALL DELAY1ms;显示162ms SETB P0.1;关闭十位显示 DJNZ R1,DPLOP;执行循环250次 DJNZ R0,DPL1;执行循环250*4=1000次 RETDELAY1ms: MOV R7,#80;延时162ms子程序(2+2*80=162ms,按照12MHZ计算) DJN
17、Z R7,$; RETNUMTAB:DB: 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H3.7实物制作由于没有进行仿真,在实物的焊接这一环节我们小组耽误了不少时间,对着原理图一点点的焊接,焊完之后,发现排版很乱,而且不能正常工作,向老师请求帮助后,拿电路板重新进行焊接,这次我们提前进行了排版,效果好了很多,第二次焊接由于粗心大意,又焊错了好几个地方,好在无伤大雅,修改后,总算是能正常工作了。此次我们重点考虑了晶体和电容与单片机的位置关系。为了减少寄生电容,更好的保证振荡器稳定可靠地工作,我们将晶体与电容尽可能的安装得与单片机芯片近些。使元器
18、件的布局好看了不少。4.结果与结论4.1结果经过对不同方案的分析、比较、取舍,然后进行原理图的设计,再经过电路板的焊接,软件的调试等环节的操作,最终实现了让数码管在单片机的控制下循环显示两位数00-99。过程是艰辛的,中间失败了好些次,经过数次的检测,修改,见到数码管正常工作时的喜悦之情是无以言表的。在正常的计数过程中,若按下复位键后,计数又重新从00开始。有时在刚接入电源时,数码管显示的不是00,这时需要按下复位键才能使其正常工作。最终现实的结果与预想的结果一致。4.2结论 此次课程设计,我们使用的是AT89S52的单片机,它是一种低功耗,高性能的CMOS8位微控制器,有40个引脚。通过单片
19、机的不同I/O端口与外设连接,能够控制外设的工作情况,从而实现不同的符合各种需求功能的电路板。而且LED数码管是单片机控制系统中最常见的显示器件之一,一般用来显示处理结果或输入输出信号的状态。不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。单片机的引脚与数码管引脚的连线是要一一对应的,不然,是达不到预期效果的。所以,在制作实物时,这一点是需要特别注意的。5.收获与致谢这次两位数码管显示设计的实习,加深了我对单片机的原理和工作过程的了解,以及系统地、全面地掌握单片机应用系统的基本设计方法、设计步骤和电路参数的计算方法。同时,这次实习增强了我的动手能力,也让我对以前所学的知识进行
20、了复习,更加熟练掌握了原理图的设计与仿真方法,了解硬件电路的焊接及调试过程应注意的问题,能用汇编语言进行软件的编写与调试。 在这次实习过程中,非常感谢XXX老师给予我的细心指导和帮助,还有我们小组的每一个成员,这次实习的成功离不开老师的指导和小组的每位成员的努力与付出,正是由于小组成员的共同努力,我们才能以最快速度,成功的完成此次的课程设计。所以真心的对大家表示感谢。6.参考文献1张毅刚.单片机原理及应用(第二版).北京:高等教育出版社,2010.52童诗白.模拟电子技术基础(第四版).北京:高等教育出版社,2006.53林之琦.基于Proteus的单片机可视化软硬件仿真.北京:北京航空航天大
21、学出版社,20067.附件7.1元器件清单 元器件清单如表71名称型号数量名称型号数量单片机AT89S521数码管SN430521晶振11.0592MHH1稳压电源DE78051三极管90152整流桥2W101电解电容1000UF2开关1指示灯红色1电阻2K1瓷片电容10421K233p268087.2硬件原理图原理图如图71所示: 图717.3实物图实物正面图如下所示:实物的反面图指导教师评语:课程设计报告成绩: ,占总成绩比例: 30% 课程设计其它环节成绩:环节名称: 考勤 ,成绩: ,占总成绩比例: 20% 环节名称: 综合 ,成绩: ,占总成绩比例: 50% 总 成 绩: 指导教师签字:年 月 日本次课程设计负责人意见:负责人签字:年 月 日