LED数码管显示电子钟设计

2020-07-27 10:58

《单片机原理及应用》

课程设计说明书

题系

(

目 )

LED数码管显示电子钟设计

专业(班级) 姓学指起

名 号

导止

教日

师 期

1

课程设计任务书

系(部): 专业:

课题名称 LED数码管显示电子钟设计 1、课题内容:设计一种基于 AT89S52 单片机的数码管显示电子时钟,要 求如下: (1)、能正确显示时间,时钟由八位数码管显示,显示格式为:XX小时--XX分--XX秒。 (2)、时间能够由按键调整,误差小于1S。 (3)、 闹钟功能: 时间运行到与闹钟设定时间时, 闹钟响 (持续响3设计秒) 要求 (4)、报时功能:时间运行到正点时间时,闹钟响,几点钟就响几声(每 声持续响2秒,每两声之间时间间隔1秒)。 (5)、通过按键切换,可以显示当前日期,显示格式为:XX 年?XX 月 ?XX日,5秒钟后自动返回时间显示模式。 2、要求: 完成该系统的硬件和软件的设计,在 Proteus 软件上仿真通过,并提 交一篇课程设计说明书。 设计工作量 1、汇编或C51语言程序设计; 2、程序调试; 3、在Proteus上进行仿真成功; 4、提交一份完整的课程设计说明书,包括设计原理、程序设计、程序 分析、仿真分析、调试过程,参考文献、设计总结等。 起止日期 第一天 工作计划 第二天 第三天~第六天 第六天~第八天 第九天~第十天 年 月 日 工作内容 课题介绍,答疑,收集材料,C51介绍 设计方案论证,练习编写C51程序 程序设计 程序调试、仿真 系统测试并编写设计说明书 年 月 日 教研室 意见 系(部)主 管领导意见 2

目录

目录 ............................................................................................................................................................................3 一、 摘要 ..................................................................................................................................................................4 二、 设计内容 ..........................................................................................................................................................4

2.1、任务要求 ...................................................................................................................................................4 2.2、设计程序方案 ...........................................................................................................................................4 2.3 设计电路仿真图 .........................................................................................................................................6 三、 心得体会 ..........................................................................................................................................................9 四、 参考文献 ..........................................................................................................................................................9

3

一、摘要

单片机全称为单片机微型计算机(Single Chip Microsoftcomputer)。从应用领域来看,单片机主要用来控制,所以又称为微控制器(Microcontroller Unit)或嵌入式控制器。单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机。

单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。

二、设计内容

2.1、任务要求

本次设计时钟电路,使用了ATC89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的年、月、日、时、分、秒,还有设定闹钟,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、LED显示即可满足设计要求。

2.2、设计程序方案

设计程序思路:

1.实现8位数码管动态扫描显示

void Display_1Code(unsigned char pos,unsigned char code1);

void Display_2Num(unsigned char pos,unsigned char num,unsigned char point); 数码管动态扫描就是: 段显 位选 延时显示 消影

因为我们用的是共阳数码管,而段码表用的共阴的,所以对code1取反

4

共阳数码管高电平点亮,所以P2移位后不用取反,从高位开始是第1个数码管 掩饰显示1ms,P2给全0全部熄灭,消影作用。 2.时间显示

采用实时时钟芯片DS1302,读芯片的datasheet,根据时序等说明编写驱动程序。 1)初始化

void DS1302_Init(void) 2)底层基本读写函数

void DS1302_WriteByte(unsigned char byte) unsigned char DS1302_ReadByte(void) 3)对芯片寄存器的读写函数

void DS1302_WriteData(unsigned char addr,unsigned char mdata) unsigned char DS1302_ReadData(unsigned char addr) 4)修改时间函数

void DS1302_RWriteData(unsigned char addr,unsigned char mdata) 这些函数的实现就看dagasheet了,主要是时序 a.时钟上升沿写入数据 b.时钟下降沿读出数据

c.秒寄存器最高位为1关闭时钟,为0则开启时钟 5)显示时间和日期 void Display_Time(void)

显示时分秒,0x40为显示横,如12-30-00 void Display_Date(void)

显示日期,如20131230,中间没有横杆,但是在年月日上有小数点,通过 Display_2Num最后一个参数控制

void Display(void)根据dis_mode变量选择当前显示的是时间还是日期还是闹钟。 GetDateTime读取时间并与闹钟时间做比较,检测是否到达闹钟时间。 6)扫描方式

动态扫描,定时器0控制扫描周期,10ms扫描一次 void Timer0_OVF(void) interrupt 1 { }

3.按键调时 void KeyScanf(void)

flag_alarm_mode是闹铃模式则按键退出闹铃并返回,一键关闭闹钟

然后对setting_item变量自加,依次表示设置秒、分、时、天、月等等,设置项对应的小数点位点亮。 加键一样的过程,根据setting_item的值加不同的量:秒、分、时。 记住改变时间后要修改DS1302芯片的寄存器才能真正修改时间。

5

TH0 = (65536-10000)/256; TL0 = (65536-10000)%6;


LED数码管显示电子钟设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:服饰的色彩搭配色彩的象征意义

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: