两位数码管显示设计-课程设计报告000
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计说明书
课程名称:通信电子线路课程设计
设计题目:两位数码管显示设计
院系:电子信息与电气工程学院
学生姓名:
学号:
专业班级:
指导教师:
年5 月20 日
课程设计任务书
两位数码管显示设计
摘要:两位数码管显示设计是基于AT89S52单片机的两位数码管显示系统,通过AT89S52进行控制,用C语言编写了两位数码管循环扫描动态显示的专用程序。数码管通过共阳极的三极管进行驱动。电源通过桥堆2W10和7805将通过变压的交流电压变为5V的直流电源。复位用电容与按键的并联来实现。时钟用12M的晶振来控制。通过单片机的片选信号控制数码管的灯管,使其依次点亮,由于人眼有视觉暂留的特性和数码管的余晖效应,而扫描频率足够高,因此人眼是感觉不出数码管的变化的。
关键词:AT89S52 晶振动态扫描显示共阳极数码管复位软件7805 桥堆2W10
目录
1.设计背景
1.1 单片机应用背景 (1)
1.2共阳极数码管的显示方法 (1)
1.3共阳极数码管的驱动设计 (1)
2.设计方案 (1)
2.1方案一:共阳极数码管静态显示 (1)
2.2方案二:共阳极数码管动态显示 (2)
2.3数码管静态与动态显示的优缺点比较 (3)
3.方案实施 (3)
3.1电源电路设计 (3)
3.2复位及震荡电路 (3)
3.3单片机接口 (4)
3.4软件设计 (4)
3.5调试仿真 (6)
3.6实物制作 (6)
4.结果与结论 (6)
4.1结果 (6)
4.2结论 (6)
5.收获与致谢 (7)
6.参考文献 (7)
7.附件 (7)
7.1元器件清单 (7)
7.2硬件原理图 (8)
7.3流程图 (8)
7.4实物拍照 (9)
1.设计背景
1.1单片机发展前景
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
1.2共阳极数码管的显示方法
LED数码管是单片机控制系统中最常见的显示器件之一,一般用来显示处理结果或输入输出信号的状态。数码管显示是一个系统工程中必不可少的人机交互环节,因此关于数码管的驱动也就是系统工程中的一个重要的环节。数码管的驱动分为动态驱动和静态驱动两种。所谓静态驱动,就是指无论多少位LED数码管,同时处于显示状态。动态显示驱动是指无论在任何时刻只有一个LED数码管处于显示状态,及单片机采用“扫描”方式控制各个数码管轮流显示。
1.3共阳极数码管的驱动设计
将数码管每个LED灯对应单片机的一个I/O口。通过单片机的P口来控制LED灯的亮和灭。I/O口之间互相独立,需要用I/O口直接控制LED。动态显示将数码管的每个引脚一对一连接在一起接单片机的数据,而将各个数码管的公共端单独送至单片机的I/O口进行片选。此外,在此基础上,用单片机与三极管来驱动数码管,从而实现数码管的动态显示。
2.设计方案
2.1方案一:共阳极数码管静态显示
数码管静态显示电路如图2—1所示:
图2—1 2.2方案二:共阳极数码管动态显示
数码管动态显示电路如图2—2所示:
图2—2
2.3数码管静态与动态显示的优缺点比较
静态显示方式简单不容易出错,如果电路设计合适,也能够用较少的线完成多个数码管的显示。但与动态显示相比,动态显示电路连接更简单,节省单片机I/O口,从而节省单片机的资源,如今已经有很多这样成熟的基于动态扫描的芯片。而且采用动态显示方式极大的节省单片机的资源,特别是在单片机的I/O数量比较紧张的情况下,更能体现采用动态显示的优越性。在现在的多数电子系统中,在用到数码管的场合下,多数采用动态扫描技术来显示。故采用动态显示较好些。
3.方案实施
3.1电源电路设计
当外接交流电源经过变压通过桥堆2W10和7805时,经C1、C2、C3、C4对电源进行滤波,实现交流电压变为5V的直流电源,从而直接给单片机提供正常的工作电压。电源电路如图3—1所示:
图3—1
3.2复位及震荡电路
复位用电容与按键的并联来实现,将它们并在一起,一端接高电平,另一端接地,从而实现高电平复位的功能。时钟用12M的晶振来组成振荡电路,来控制单片机对数
码管的动态扫描。
复位及振荡电路如图3—2所示:
图3—2
3.3单片机接口
单片机采用P2口的I/O来控制数码管的各个引脚。复位键接到引脚9上,数码管的位选通过三极管和电阻分别与单片机的引脚1和39相连,晶振与单片机的引脚18和19连接,高电平与40引脚连接供电,20引脚直接接地。
3.4软件设计
此程序采用C语言用十六进制算法编写了两位数码管循环扫描动态显示的专用程序。通过软件的控制使两位数码管能从00计数到99,再回到00,依次进行循环。若在计数期间有复位高电平出现时,便重新从00开始计数。并有电源开关控制让电路是否工作,且有指示灯只是电源是否正常。
程序如下:
#include
Unsigned char code table[ ]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80, 0x90};
unsigned char count;
unsigned char n;
/********************Delay function************************/
void delay2(unsigned int t)
{