(整理)较为全面的基于PROTEUS仿真51单片机动态数码管课程设计(WORD版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计

题目动态数码管显示

学院机电工程学院

专业班级电子信息工程12-1班

姓名

组员

指导教师张、王老师

2015 年 5 月30 日

课程设计量化评分标准

目录

一、概述 (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)

精品文档

一、概述

1. 单片机简介

如图1.1和图1.2分别为PDI P封装的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单片机。

2.Proteus简介

如图1.3为Proteus7.0的工作界面图

图1.3

Proteus软件是英国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端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的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口既输出段选又输出片选

相关文档
最新文档