




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计(论文)学 号: 201200558 单片机课程设计题 目动态数码管显示学 院机电工程学院专业班级电子信息工程12-1班姓 名组 员指导教师张、王老师2015年5月30日课程设计量化评分标准指标最高分评分要素评分方案设计35方案选择合理,分析、设计正确,原理清楚,电路、程序流程图清晰,结构合理,程序简洁、正确。调试15过程清晰,调试方案设计合理,测试点选择适当,程序编写正确,调试步骤清楚。结果20电路及程序运行结果正确,达到预期效果。设计报告20报告结构严谨,逻辑严密,论述层次清晰,语言流畅,表达准确,重点突出,报告完全符合规范化要求,用计算机打印成文。工作态度10工作态度认真,按时完成设计任务。总 评 成 绩目 录一、概述1 1. 单片机简介1 2. proteus简介2 3. 设计任务与要求3二、硬件设计3 1. 单片机最小系统设计1 2. 数码管显示部分4 3. 数码管驱动部分5三、软件设计6 1. 仿真原理图6 2. 仿真参数设置6 3. 仿真结果7 4. 程序流程图8 5. 程序代码.9四、心得体会.11五、参考文献12- 12 -一、概述1. 单片机简介 如图1.1和图1.2分别为pdip封装的at89c52引脚图和实物图 图1.1 引脚图图1.2 实物图at89c52是一个低电压,高性能cmos8位单片机,片内含8k bytes的可反复擦写的flash只读程序存储器和256 bytes的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位中央处理器和flash存储单元,at89c52单片机在电子行业中有着广泛的应用。at89c52有40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,at89c52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的 flash存储器可有效地降低开发成本。at89c52有pdip、pqfp/tqfp及plcc等三种封装形式,以适应不同产品的需求。本课程设计中使用的是pdip封装的at89c52单片机。2proteus简介 如图1.3为proteus7.0的工作界面图 图1.3proteus软件是英国lab center electronics公司出版的eda工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它eda工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。proteus是世界上著名的eda工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到pcb设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、pcb设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、hc11、pic10/12/16/18/24/30/dspic33、avr、arm、8086和msp430等,2010年又增加了cortex和dsp系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持iar、keil和matlab等多种编译器。 在学习单片机的过程中proteus软件可以很好地代替开发板进行仿真实验,可以使学生比较灵活多样化的学习单片机。3动态数码管设计任务与要求课程设计功能:单片机采用定时器中断方法,制作一个简易时钟,要求用定时器实现精确定时,使用数码管动态显示,完成时钟的秒走时显示。本课程设计是利用两位共阴极数码管显示数字59,然后每隔1s顺序-1,减到00时,再循环从59-00.课程设计内容: 1.掌握数码管的接口方法;2.掌握数码管动态显示的原理;3.掌握数码管动态显示的方法;4.掌握单片机内部定时器的使用方法;5.数码管动态显示的原理可参阅课本。二、硬件设计1单片机最小系统设计 如图2.1所示 图2.1单片机的最小系统是指使单片机能运行程序、正常工作的最简单电路系统,是保证单片正常启动、开始工作的必须电路,缺一不可。单片机最小系统一般由单片机、程序存储器、时钟电路和复位电路组成,它是单片机开发板中的核心部分。 时钟电路:其核心部分是晶振,晶振的作用是为系统提供基本的时钟信号。简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。这里选用12mhz晶振,便于产生精确的us级时歇,方便定时操作。 复位电路:当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行(这里不加也可以)。2数码管显示部分 如图2.2所示 图2.2数码管有共阴极数码管和共阳极数码管两种(这里选用两位共阴极数码管),如图2.2(b)所示,根据数码管的驱动方式的不同,可以分为静态式和动态式两类,这里只介绍动态方式。 动态显示:将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极com增加位选通控制电路,位选通由各自独立的i/o线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通com端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的com端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的i/o端口,而且功耗更低。3数码管驱动部分这里使用74hc573来控制数码管的显示,如图2.3所示74hc573是拥有八路输出的透明锁存器, 输出为三态门,是一种高性能硅栅cmos器件。当锁存使能端le为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。它是数码管显示时通常是采用段选、片选共用同一组并口的驱动方式。驱动数码管需要两个信号,一个是段选信号,一个是片选信号。段选信号是固定的8个(对于普通7段数码管),而片选信号数量是与数码管位数相同的。对于8位数码管的动态扫描来说,片选信号要8根线,这样仅仅驱动数码管就占用了2组共16个io口,非常浪费使用573锁存器后,只占用8+2=10个io口,其中2个用于控制锁存器使能,另外8个输出信号。先关闭控制片选信号的573芯片的锁存功能,然后单片机输出片选信号,随后开启锁存,此时无论573的输入端如何变化,输出端都是不变的,也就是原来输入的信号被锁住了。然后,再关闭控制段选的573的锁存功能,输出段选信号,再锁存,这样就巧妙的实现了数据线的复用,让一组io口既输出段选又输出片选三、软件设计1仿真原理图如图3.1所示图3.1由51单片机p0口接上拉电阻通过锁存器74hc573控制共阴极数码管段选,p1口控制数码管位选,p21控制74hc573使能端。2仿真参数设置如下列表格3.2所示表3.2两位共阴极数码管动态扫描显示实验电路元器件及参数值元器件编号元器件名称元器件参数说明u1at89c52at89c52单片机u274hc573三态锁存器rp1排阻10k上拉排阻dsp共阴极共阴极红色显示c1/c2/c3电容30pf,30pf,10uf负载等r1电阻10k接地s按钮复位电路用3仿真结果如图3.3 图3.3经过多次试验,调试后现象正常,实现功能为:数码管从59秒开始-1,减到0后,重新开始从59循环-1.4程序流程图开始初始化定时器t0中断 进入中断n 1s时间到?y num- 分离num十位,个位,数码管动态扫描显示n num=-1? ynum=59 5程序代码#include#define uint unsigned int#define uchar unsigned charsbit le=p20;/定义使能端uchar num,shi,ge,t0;bit flag;uchar code table =0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;void display();void delay(uint z) /延时函数uint i,j;for(i=z;i0;i-)for(j=50;j0;j-);void main()num=60;tmod=0x01;th0=(65536-50000)/256;/定时器赋初值tl0=(65536-50000)%256;ea=1;et0=1;tr0=1;while(1)if(flag=1)flag=0;num-;if(num=-1) num=59;shi=num/10;ge=num%10;display(); void timer0() interrupt 1uchar t0;th0=(65536-50000)/256;/定时器重装初值tl0=(65536-50000)%256;t0+;if(t0=20)t0=0;flag=1;void display()/显示函数le=0;p0=tableshi;le=1;le=0;p1=0x7f;le=1;delay(10);p0=0x00; /消隐(至关重要,否则会显示乱码)le=0;p0=tablege;le=1;le=0;p1=0xbf;le=1;delay(10);p0=0x00; /消隐(至关重要,否则会显示乱码)四、心得体会通过这次课程设计,我真的学到了很多,接触到了平时难以接触或者常常忽视的东西。老师给定设计课题后,我就开始准备了,从搜集资料到画出动态数码管显示的proteus仿真图也不过一天时间,原以为一切都会顺利的进展,可是在我写了一个简短的调试程序验证仿真图能否正常进行是却发现由at89c52单片机p0控制的锁存器74hc573不起作用,怎么都无法驱动数码管的段选,虽然自己之前也接触过单片机,但是由于一直以现成的开发箱或开发版作为学习和练习用,只知道关心怎么编辑程序,却忽视了对硬件的求知,因此,怎么都找不到为什么p0口不能驱动74hc573,后来我终于查到是因为p0需要接上拉电阻才能有足够的电流驱动锁存器,这时才想起其实这一点老师上课时也讲过,而这次正好体现出了我的不足,未能将理论知识与实践及时准确的结合起来学习,相信在以后的学习中我一定会注意这一点的。在编辑好程序后,我在用proteus仿真之前用拥有相同性质和原理的开发箱检验过,结果正常,可是在我用proteus进行仿真时,发现延时较长数码管会一个一个数码管的显示,情况不正常;缩短延时时间后,数码管却显示的是乱码,围绕这个问题我调试了好几天原理图,程序都换过,可就是行不通,后来通过查阅资料才知道原来软件仿真与硬件试验是有一定差别的,这里一定要进行延时,消隐才可以,终于经过一个多星期的奋战顺利完成了本次课程设计。在此,我非常的感谢我的指导老师张少蔚老师和王淑娇老师,感谢她们在整个课程设计中给予我的无私帮助,同时也感谢其他老师和同学在使用proteus软件时给予的帮助,正是由于各位老师和同学的热心帮助,我才知道自己的不足,才知道怎么才能及时发现问题并更好的去解决问题,相信通过这次课程设计中,在今后的学习,我会更加注重理论知识与实践的结合,团队合作等。五、参考文献1 吴杰
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑工程劳务承包合同范本与解析
- 2025年耳鼻喉科临床诊断与治疗模拟考试卷答案及解析
- 建筑工程项目成本控制与结算实务
- 2025年重庆中烟工业有限责任公司招聘73人笔试参考题库附带答案详解
- 2025年康复护理评估与干预试题答案及解析
- 云计算服务管理规定
- 2025年滕州市属国有企业公开招聘106人笔试参考题库附带答案详解
- 初中体育七八九年级教案全集
- 2025年慢性病管理长期随访指导试卷答案及解析
- 仪容仪表:品位气质的完美呈现
- 2025司法协理员考试模拟题及答案
- 2025年北京市家庭居室装修工程施工合同
- 事业法人登记管理办法
- 承装修试许可证管理办法
- 2025楼宇平方效益评价规范
- 术后并发症护理
- 第9课《天上有颗“南仁东星”》课件 2025-2026学年统编版八年级语文上册
- 餐饮服务食品安全常规项目自查记录表
- 粪污清运服务管理制度
- 医疗机构动火管理制度
- 孵化基地制度管理制度
评论
0/150
提交评论