数码管电子时钟

数码管电子时钟
数码管电子时钟

SOUTH CHINA UNIVERSITY OF TECHNOLOGY

单片机大作业

――电子日历时钟的制作

班级: 姓名:

学号:

编号:07

题目及功能要求

1. 制作一个电子日历时钟,使用汇编语言进行软件编程

实现功能2.

(1)显示北京时间并能校准

⑵时、分、秒之间以及年、月、日之间以小数点隔开

(3)显示公历日期并能校准,能够自动识别“闰年”以及“大月、小月

⑷运动秒表,能够后台计时,秒表精确到0.05S

(5) 闹钟功能,有闹钟开关,并能显示当前闹钟是否开启

(6) 整点报时提醒

硬件方案

1 . AT89S52最小系统

2. 显示电路采用动态扫描驱动电路,AT89S52的P0 口连接74LS244总线驱动器,输岀信号利

用三极管8550进行放大,通过P1 口对数码管进行段选扫描,AT89S52的P1.2?P1.7 口对数码管进行位选扫描

3. 两个按键开关,分别接AT89S52的两个外部中断引脚

4. AT89S52的P2.0 口输岀经三极管9012放大,驱动有源蜂鸣器发声

三、电路原理图

四、系统元件布局、布线图

? L A*

1

SOO

元器件清单五、

型号及标称值恢复现场数量AT89S52 1 HD74LS244 系统初始化 1 8550晶体管中断返回 6 9012晶体管 1

蜂鸣器(有源)丫整点?提示音 1

10uF电解电容 1

7段数码管(共阳) 6

电阻3KN 9

电阻200闹钟到?8 4.7K电阻 1

按钮开关N 3 12M晶振丫 1

瓷介电容30pF闹铃提示音 2

软件方案六、0中断提供,设置为最高优先级,定时器定时器“时钟”基准时间由.

中断20次即可实现一秒定时。

2. 由于使用较多数码管,显示模块使用动态扫描方式,定义全局变量,保存各个数位的BCD 码,通过查表,将字模送到P0 口进行输出;为了显示闹钟的状态,设置了另一字模数据表,在

显示前进行判断,若为闹钟开关设置状态则调用此字模数据表。

3. 按键中断的时候,在2个按键都没按下的状态,

2个中断引脚都为低电平,则一直调用中断

0的子程序,每次进入中断0子程序中便检测中断1的引脚是否为高电平,即检测开关KEY1是

否按下;相反,在按下KEY0时,进入中断1子程序,每次进入中断1子程序都检测中断0的引脚是否为高电平,为高电平则表示已按下。

4. 用寄存器R7来记录当前切换的功能,分别为,

0 —时间;1—日期;2-闹钟;3-闹钟开关;4-秒表。

5. 秒表的实现,采用基准时钟作为秒表时钟源,精度可以达到0.05s。

6. 闹钟的实现,在主程序中,循环判断闹钟设置的时分与当前时分是否相等,闹钟持续1分钟

7. 整点报时的实现,在主程序中,先判断当前时间的秒,若为0再判断分,再为0则使蜂鸣器嘀一声,循环判断。

七、程序框图

1.主程序

主程序

中断子程序定时器 2. 03

r

基于DS1302的数码管显示数字钟

单片机原理课程设计 课题名称:基于DS1302的数码管显示数字钟 专业班级:电子信息工程 学生学号: 学生姓名: 指导教师: 设计时间:2010年6月21日--2010年6月25日

目录 摘要........................................................................................................................................................................ 1 设计任务和要求............................................................................................................................................ 2 方案论证........................................................................................................................................................ 3 系统硬件设计................................................................................................................................................ 3.1 系统总原理图 ................................................................................................................................ 3.2 元器件清单...................................................................................................................................... 3.3 PCB板图....................................................................................................................................... 3.4 Proteus仿真图 ............................................................................................................................... 3.5 分电路图及原理说明................................................................................................................... 3.5.1 主控部分(单片机MCS-51).............................................................................. 3.5.2 计时部分(实时时钟芯片DS1302).................................................................. 3.5.3 显示部分(共阳极数码管)................................................................................ 3.5.4 调时部分(按键)................................................................................................ 4系统软件设计................................................................................................................................................ 4.1 程序流程图..................................................................................................................................... 4.2 程序源代码........................................................................................................................................ 5心得体会........................................................................................................................................................ 6参考文献........................................................................................................................................................ 7结束语............................................................................................................................................................

LED数码管显示电子钟设计

《单片机原理及应用》 课程设计说明书 题目LED数码管显示电子钟设计系(部) 专业(班级) 姓名 学号 指导教师 起止日期 课程设计任务书

系(部): 专业:

目录 一、摘要 单片机全称为单片机微型计算机(Single Chip Microsoftcomputer).从应用领域来看,单片机主要用来控制,所以又称为微控制器(Microcontroller Unit)或嵌入式控制器。单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机。 单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容

易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。 时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础.在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。 二、设计内容 2.1、任务要求 本次设计时钟电路,使用了A TC89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的年、月、日、时、分、秒,还有设定闹钟,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、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取反 共阳数码管高电平点亮,所以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)修改时间函数

单片机课程设计报告—LED显示电子钟

《单片机原理及其接口技术》 课程设计报告 课题LED显示的电子钟 姓名 学号 院系自动控制与机械工程学院 班级 指导教师

2012 年6 月 目录 一、课程设计目的 (3) 二、课程设计要求 (3) 三、设计内容 (4) 四、硬件设计需求 (5) 1、硬件系统各模块功能 (5) (1)、单片机最小系统——AT89C51 (5) (2)、LED数码管显示模块 (8) (3)、晶振模块 (9) (4)、按键模块 (10) 五、电路软件系统设计 (10) 1、protues软件简介 (10) 2、仿真结果 (11) 3、流程图 (13) 六、误差分析 (15) 七、总结与心得体会 (15) 八、参考文献 (16) 九、附录(程序) (16)

一、课程设计目的 单片机课程设计作为独立的教学环节,是自动化及相关专业集中实践性环节系列之一,是学习完《单片机原理及应用》课程后,并在进行相关课程设计基础上进行的一次综合练习。 单片机课程设计过程中,学生通过查阅资料,接口设计,程序设计,安装调试等环节,完成一个基于MCS-51系列单片机,涉及多种资源应用,并且有综合功能的小应用系统设计。使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路,电子元器件等方面的知识进一步加深认识,同时在软件编程,调试,相关仪器设备和相关软件的使用技能等方面得到较全面的锻炼和提高。使学生增进对单片机的感性认识,加深对单片机理论方面的理解,加深单片机的内部功能模块的应用,如定时器/计数器,中断,片内外存储器,I/O接口,串行口等。使学生了解和掌握单片机应用系统的软硬件设计过程,方法及实现,强化单片机应用电路的设计与分析能力。提高学生在单片机应用方面的实践技能和科学作风,培育学生综合运用理论知识解决问题的能力。 二、课程设计要求 课程设计应以学生认知为主体,充分调动学生的积极性和能动性,重视学生自学能力培养。根据课程设计具体课题安排时间,确定课题的涉及,变成和调试内容,分团队开展课程设计活动,安排完成每部分工作。课程设计集中在实验室进行。在课程设计过程中,坚持独立完成,实现课题规定的各项指标,并写出设计报告。 要求学生自己调研,设计系统功能,划分软硬件功能,选择器件,用Proteus软件在PC机上完成硬件原理图设计。然后使用使用Proteus软件在PC机运行系统仿真,调试电路和修改调试程序。对整个系统做试运行,有问题再进一步修改调试,直至达到设计的要求和取得满意的效果。最后编写系统说明书,其内容主要包括系统功能介绍,使用范围,主要性能指标,使用

51单片机数码管时钟电路的设计_AT89C51

广东石油化工学院 《51单片机原理与实践》课程设计报告 学院计算机与电子信息学院 专业 班级 学号 姓名 指导教师 课程成绩 完成日期 2010年12月27日

数码管时钟电路的设计 一、设计目的: 通过这次课程设计掌握单片机系统的基本设计步骤及设计思路,掌握汇编语言的用法及各种指令的含义,比较熟练的运用指令进行单片机系统的设计的,熟悉用KEIL软件进行汇编语言的汇编,以及把代码写入实验板中,观测代码结合实际的运行结果后进行调整,体会到编程的分析问题、确定算法、画程序流程图、编写程序、程序功能模块化的优点的各各步骤。 二、设计要求: LED数码管时钟电路采用24h计时方式,时、分、秒用六位数码管显示。该电路采用AT89C2051单片机,使用3V电池供电,只使用一个按键开关即可进入调时、省电(不显示LED数码管)和正常显示三种状态。 三、设计实验内容: 1. 硬件的设计 其采用AT89C51单片机应用设计,LED显示采用动态扫描方式实现,P0口输出段码数据,P2口输出位码数据,P1.1、P1.2接按钮开关。为了提供LED数码管的驱动电流,采用6MHz晶振。 2. 系统总体分析 系统主要包含四大模块:显示模块、时间计时模块、模式切换模块和模式设置模块。 显示模块:主要由主循环负责。内存中开辟了一段8字节的内存空间,

用作数据显示的字符缓冲区。主循环不断将缓冲区中的字符呈现至数码管。 ● 时间计时模块:电子钟的核心模块,记录了时间的时、分、秒信息。 ● 模式切换模块(MODE ):切换电子钟的设置模式,包括时设置、分设置、秒设置、闹铃开关设置、闹铃时设置和闹铃分设置。相关数据被设置时将闪烁显示。 ● 模式设置模块(CONFIG ):通过判断设置模式(MODE ),执行相应的设置。如时、分、秒的增1以及闹铃开关的变换。 另外,主循环还负责扫描键盘,检测相应键是否被按下,若MODE 键被按下则在特定单元中登记该功能,并启动定时器1,然后返回继续执行显示功能。在定时器1中断时,被登记的功能正式执行。期间用时约10ms ,用以消除机械抖动。 主循环流程图大致如下: 图(一)主循环流程图 定时器1中断服务程序流程图如下: 开始 键被按下 登记相应功能 数码管显示 是 否

用数码管显示实时日历时钟的应用设计

(用数码管显示实时日历时钟的应用设计)

摘要 本课题通过MCS-51单片机来设计电子时钟,采用汇编语言进行编程,可以实现以下一些功能:小时,分,秒和年,月,日的显示。本次设计的电子时钟系统由时钟电路,LED显示电路三部分组成。51单片机通过软件编程,在LED数码管上实现小时,分,秒和年,月,日的显示;利用时钟芯片DS1302来实现计时。本文详细介绍了DS1302 芯片的基本工作原理及其软件设计过程,运用PROTEUS软件进行电路连接和仿真,同时还介绍了74LS164,通过它来实现I|O口的扩展。 关键词:时钟芯片,仿真软件,74LS164 目录 前言 0.1设计思路 (8) 0.2研究意义 (8)

一、时钟芯片 1.1 了解时钟芯片……………………………………………….8-9 1.2 掌握时钟芯片的工作原理………………………………….10-11二、74LS164 2.1 了解74LS164........................................................11-12 2.2 掌握的74LS164工作原理. (12) 三、数码管 3.1 熟悉常用的LED数码管...........................................12-13 3.2 了解动态显示与静态显示. (13) 四、程序设计 4.0 程序流程图 (14) 4.1 DS1392的驱动.......................................................15-16 4.2 PROTUES实现电路连接. (17) 4.3 数码管的显示:小时;分;秒 (18) 4.4 数码管显示:年;月;日 (19) 五、总结…………………………………………………………………..20-21 六、附页程序………………………………………………………………22-31前言

8位数码管显示电子时钟c51单片机程序

8位数码管显示电子时钟c51单片机程序 时间:2012-09-10 13:52:26 来源:作者: /* 8位数码管显示时间格式 05—50—00 标示05点50分00秒 S1 用于小时加1操作 S2 用于小时减1操作 S3 用于分钟加1操作 S4 用于分钟减1操作 */ #include sbit KEY1=P3^0; //定义端口参数 sbit KEY2=P3^1; sbit KEY3=P3^2; sbit KEY4=P3^3; sbit LED=P1^2; //定义指示灯参数 code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴极数码管0—9 unsigned char StrTab[8]; //定义缓冲区 unsigned char minute=19,hour=23,second; //定义并初始化为 12:30:00 void delay(unsigned int cnt) { while(--cnt); } /******************************************************************/ /* 显示处理函数 */ /******************************************************************/ void Displaypro(void) { StrTab[0]=tab[hour/10]; //显示小时 StrTab[1]=tab[hour%10]; StrTab[2]=0x40; //显示"-" StrTab[3]=tab[minute/10]; //显示分钟 StrTab[4]=tab[minute%10]; StrTab[5]=0x40; //显示"-" StrTab[6]=tab[second/10]; //显示秒 StrTab[7]=tab[second%10]; } main()

数码管时钟显示(含有原理图)

简单的共阴极数码管时钟显示程序(简单、易于理解,如果想定时只要再次基础上稍作修改即可) #include #define uint unsigned int #define uchar unsigned char uchar aa,shi1,shi0,fen1,fen0,miao1,miao0; uint temp; ucharshi,fen,miao; uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}; void delay(uint z) { uintx,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void display(uchar shi1,shi0,fen1,fen0,miao1,miao0) { P2=0xfe; P0=table[shi1]; delay(1); P2=0xfd; P0=table[shi0]; delay(1); P2=0xfb; P0=0x40;//"-" delay(1); P2=0xf7; P0=table[fen1]; delay(1); P2=0xef; P0=table[fen0]; delay(1); P2=0xdf;

P0=0x40;//"-" delay(1); P2=0xbf; P0=table[miao1]; delay(1); P2=0x7f; P0=table[miao0]; delay(1); } voidinit() { temp=41760; TMOD=0x01; TH0=(65536-46080)/256; TL0=(65536-46080)%256; EA=1; ET0=1; TCON=0x10; //TR0=1; } void main() { init();//初始化子程序 while(1) { if(aa==20) { aa=0; temp++; if(temp==86400) { temp=0; } shi1=temp/3600/10; shi0=temp/3600-(shi1*10); fen1=temp%3600/60/10; fen0=temp%3600/60-(fen1*10);

基于郭天祥单片机数码管的电子钟(含闹钟、整点报时)

基于单片机数码管的电子钟(郭天祥系列单片机) 功能说明 (D本电子钟可以显示当前时刻、年月日和闹钟时刻。不同时间的显示可以用key4来切换。 (2)、独立键盘key—key4(左到右)调节不同功能,7段数 码管显示。 (3)整点提示功能:当时间为整点时,蜂鸣器会滴滴滴响,响20秒; (4)闹铃功能:本程序有闹铃功能,当定时时间到时,闹铃会滴滴滴报警,报警30秒; (5)附加功能:当在闹铃和整点时,8个发光二极管会闪亮; (6)时、分、秒之间和年、月、日之间也是用分割。 2、键盘控制 (1)key1-键移动调整单位,每按一次移动一个单位,可调整时分秒、年月日和闹钟时间。比如:在显示时分秒时,按下keyl 键, 可通过key2和key3对'秒'加减;再按一下keyl,可对"分'加减;再按一下keyl,可对"时'加减;再按keyl,时间开始走动 (2)key2-加 1 ; key3-减 1; (3)key4-键切换时分秒、年月日和闹铃时间的显示。比如:当前为时分秒,按一下key4,则显示年月;再按一下,则显示闹铃时间;再按一下,则显示时分秒时间。

附录:C语言程序 〃设计项目:带闹铃的电子钟 //功能:keyV键:开始/调时分秒/调年月日/调定时 // key2 ■键:加 1 // key3-键:减 1 // key4-键:切换页面 #in clude #define uchar unsigned char #define uint unsigned int sbit dula=P2A6; sbit wela=P2A7; sbit key1=P3A4; sbit key2=P3A5; sbit key3=P3A6; sbit key4=P3A7; sbit bear=P2A3; uchar code table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e, 0x79,0x71}; uchar sed ,hour1 ,year1 ,mon1 ,day1,tempi ,temp2,sec2,min2,hour2; void keyscan(); void display(uchar hour,uchar min,uchar sec); void delay(uint z) { uint x,y; for(x=0;x

基于单片机的LED数码管数字电子钟

题目:基于单片机的LED数字电子钟学生姓名:胡振凤潘兴学 学号:U201010897 U201010906 专业:测控技术与仪器 班级:1004班

摘要 数字电子钟是采用电子电路实现对年、月、日、时、分、秒数字显示的计时装置,由于数字集成电路的发展和石英晶体震荡器的广泛应用,使得数字电子钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,成为人们日常生活中不可缺少的必需品。 本次课程设计的是基于AT89C52单片机和实时时钟芯片DS1302在数码管上进行时钟显示,并能通过按键对其进行调时和校准,并且可以设置闹钟,且具有秒表功能。通过按键可以切换时钟和秒表功能,同时可以对闹钟进行设置。采用AT89C52单片机和DS1302实时时钟芯片,使用5V电源供电。DS1302是一种高性能、低功耗、带RAM 的实时时钟芯片,它能够对时,分,秒进行精确计时,它与单片机的接口使用同步串行通信,仅用3条线与之相连接,就可以实现MCS-51单片机对其进行读写操作,把读出的时间数据送到数码管上显示。程序运行时,数码管将从当前时间开始显示,通过调节按键可以分别对小时和分钟进行调整,调整后,时钟以新的时间为起点继续刷新显示。 这种实现方法的优点是电路简单,性能可靠,实时性好,时间和日期精度高,操作简单,编程容易。

目录 目录--------------------------------------------------------------------- 2 - 一前言-----------------------------------------------------------------2 1.1课题研究的现实性意义---------------------------------------------2 1.2国内外研究现状---------------------------------------------------2 1.3课题基本概况-----------------------------------------------------3 二总体方案设计---------------------------------------------------------4 2.1方案原理---------------------------------------------------------4 2.2 硬件选择--------------------------------------------------------4 2.2.1 DS1302简介------------------------------------------------4 2.2.2单片机-----------------------------------------------------5 2.2.3显示方案---------------------------------------------------6 三硬件设计-------------------------------------------------------------8 3.1显示模块---------------------------------------------------------9 3.2独立按键模块-----------------------------------------------------9 3.3实时时钟芯片DS1302----------------------------------------------10 四软件设计------------------------------------------------------------11 4.1 程序流程图-----------------------------------------------------11 4.2 按键子程序-----------------------------------------------------12 4.3 功能键按键程序流程图-------------------------------------------12 4.4 时间调整程序---------------------------------------------------13 五总结----------------------------------------------------------------14 六硬件原理图----------------------------------------------------------15

用数码管设计的可调式电子钟

单片机原理及应用课程设计 题目:基于T89C51设计可调式的电子钟 学院:信息工程学院 专业:计算机科学与技术 班级:专升本班 姓名:张永明 学号: 2013052109 指导老师:杜俊

1概述 (4) 1.1课题研究的目的和意义 (4) 2 课题方案论证 (4) 2.1系统总体设计要求 (4) 2.2系统模块结构论证 (5) 3 系统硬件设计 (5) 3.2最小单片机系统 (6) 3.3按键电路 (7) 3.4显示电路 (8) 4软件设计 (9) 4.1 主程序 (9) 5软硬件联调及调试结果 (18) 5.1调试步骤 (18) 结束语 (18) 参考文献 (18) 附录 (19) 附录3 proteus仿真图 (19)

基于T89C51设计可调式的电子钟 摘要: 数字电子时钟电路设计系统,以AT89C51单片机为控制核心,由开关显示、LED 共阴极数码管和LED灯显示等功能模块组成。基于题目基本要求,本系统对时间显示和定时报警进行了重点设计。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,而且有一定的创新功能。 关键字:单片机;AT89C51;数字钟

1概述 1.1课题研究的目的和意义 此次设计是单片机内部的定时/计数器来实现电子时钟的方法以及借助键盘直接控制整时的调整,本设计根据AT89C51单片机系统扩展的基本原理和方法,由单片机AT89S51芯片,LED数码管和键盘为核心,辅以必要的电路,构成了一个单片机电子时钟。一块单片机芯片就是一台计算机,由于单片机以其集成度高、体积小、可靠性高、控制功能强、低电压、低功耗等特点使它应用于智能仪器仪表、机电一体化、实时程控、人类生活中。除此之外还广泛应用办公自动化领域、商业营销领域、汽车及通信系统、计算机外部设备等各领域中,并且单片机已成为计算机发展和应用的一个重要方面。由此可见掌握单片机的使用方法和利用单片机解决实际问题具有重要的意义。而此次的设计刚好用到单片机相关的知识可以说这是这次设计的重要意义和目的所在。 再者,此设计的LED电子时钟主要是显时间的,是时钟用途。在此设计的基础上人们还可根据不同的需求和不同的设计水平做出不同的设计项目。也可以加上日期,温度的显示和闹钟的功能。如果设计水平还更高的话还可以设计LED 电子显示屏。因此说,LED电子时钟设计是最简单和基础的。而且电子时钟很实用,准确性也很好,也容易调节,若有毁坏更换元器件也简单,制作原理和过程也很易懂易做,成本也不高。在此设计间也包含了很多的知识,跟我所学专业又对口,所以,做这个LED电子时钟是个很用很好很值得做的设计。 2 课题方案论证 2.1系统总体设计要求 本次设计中的LED数码管电子时钟电路采用24小时制记时方式。本次设计采用AT89C51单片机的扩展芯片和1个74LS04做驱动,由八块LED数码管构成的显示系统,与传统的基于8/16位普通单片机的LED显示系统相比较,本系统在不显著地增加系统成本的情况下,可支持更多的LED数码管稳定显示。设计采用AT89C51单片机,配备12MHz晶振,复位电路为上电复位。采用软件译码动态显示,考虑直接用单片机I/O口作为位选时可能驱动功率不够,可采用三极管作驱动共阳极数码管显示。8位8段LED数码管作正常、调时显示,时间按时分秒排列,时钟误差:24小时误差3~5秒,并且在按键的作用下可以进行调时,调分,复位功能。本电路采用直流5V电源供电。同时为了限流保护电路也用了若干个阻值不等的电阻。 在本文一开始做了一些概述主要说明此设计的目的和意义,并会对这类设计项目发展情况做个简介。这是对这次设计很重要的一个认识是前提和设计者必须明确和了解的。 然后本文对此设计做了一些简要分析,这对理清设计思想很重要。然后还对设计中用到的元器件进行比较全面的介绍。只有真正了解了元器件的特性和功能才能让这些元器件在设计中起到作用。电子整个设计第一步是电路原理图,它直接关系着后续的工作。

电子钟四位数码管电路原理图

程序: #include #define uchar unsigned char #define uint unsigned int uchar num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar t,s=0,m=11,h=0,qian=0,bai=0,shi=0,ge=0,s0=0,m0=0,h0=0,qian0=0,bai0=0,shi0=0,ge0=0,n1=0; sbit key1=P1^0; //功能 sbit key2=P1^1; //加一 sbit key3=P1^2; //减一 sbit key4=P1^3; //查看秒数 bit mm=0; sbit beep=P2^3; uint a; void delay_1ms(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void delay(uint i) { uint j; for(;i>0;i--) for(j>19;j>0;j--);

} /*void clock() { for(a=0;a<=50;a++) { beep=1; delay_1ms(200); beep=0; delay_1ms(200); } }*/ void timer () interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; t++; if(t==20) { s++;t=0; if(s==60) { m++;s=0; if(m==60) { h++;m=0; if(h==24) h=0; } } } } void display(uchar h,uchar m,uchar s) { qian=h/10; bai=h%10; shi=m/10; ge=m%10; P0=num[qian]; P2=0xef; delay_1ms(2); P0=0xff; P0=num[bai];

电子时钟数码管显示

/********************************************************** ***/ //电子时钟数码管显示,具有暂停,清零,调整时,分,秒的功能2014年8月17日 /********************************************************** */ #include #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; sbit wela=P2^7; //sbit s0=P3^2; //清零键 sbit speak=P1^2; //蜂鸣器 //sbit s2=P3^0; //矩阵键盘 //sbit s3=P3^1; //sbit s4=P3^4; //暂停 sbit s1=P3^2; //功能键 sbit s2=P3^5;// 闹钟设定 sbit s3=P3^3; //加 sbit s4=P3^4; //减 //sbit juzhen=P3^4;

bit sflag,setflag,setcflag,cflag,k1,k2,k3,k4; uchar code duanma[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //显示数字0~9 unsigned char code weima[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //unsigned char code weima[]={0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //unsigned char code weima[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb}; uchar tempdata[8]; uchar miao,fen,shi,cmiao,cfen,cshi; uchar count,ncount,s1num,cnum,state,normal; //-------------------------ms级延时函数-----------------------------------------// void delayms(uint z) { uint x,y; for(x=z;x>0;x--) for(y=123;y>0;y--); } //-----------------------------蜂鸣器发声--------------------------------------------------// void buzzer() {

段数码管电子闹钟课程设计

科技大学 信息科学技术学院 课程设计 (32位微机原理与接口技术)班级: 姓名: 课题名称:7段数码管电子闹钟

一、设计要求: 利用试验箱资源,自行设定一个7段数码管电子闹钟,完成电路设计、电路连线、软件编程、系统调试等工作。所实现的电梯模拟系统主要功能如下。 ①用7段数码管或液晶显示当前的时间。 ②允许设置响铃时间。 ③允许设施当前时间。 ④用发光二极管的闪烁表示响铃。 ⑤按某个按钮后,闹钟停止响应。 二、设计原理: 1、设计所用到的芯片: 8086CPU中央处理器、8255A并行接口芯片、74LS244三态缓冲器 2、硬件电路设计电路图

3、硬件电路设计原理 用8255芯片实现4位共阳数码管的动态扫描,就是将数码管的段码由8255PB口送到数码管的段选端,数码管的位码由8255PA口送到数码管的位选端,这样每一时刻就可以利用8255让4个数码管当中的一位显示一个特定的数,再设计相应的驱动程序来控制8255,就可以实现数码管的动态显示,能显示4位数。另外通过PC口来控制三个LED的亮灭,以表示相应的信息。 用74HC244将数据有数据总线送给CPU。244的四个输入端与四个弹跳按键相接,当其中某一个按钮按下时,对应数据总线中的那一位的数据就是0,否则为1,因此,我们可以通过244来改变电子闹钟的工作模式。 4、软件设计流程图 5、总体设计 用数码管的动态扫描来作为显示部分,用四个按键来作为操控部分,CPU接收用户输入的控制信号并进行分析,切换到相应的状态。 按键部分是通过循环从244读取数据到CPU,然后进行分析,若从四个按键读回的数据均为1,表示没有按键被按下,因此不做任何额外操作。若第一个按键被按下,表示对分进行加操作,如果当前是模式0,则对实时时间分钟进行加1操作,否则对闹钟定时时间的分钟进行加1操作;若第二个按键被按下,当前模式为0时对实时秒进行加1操作,当前模式为1时对闹钟的定时时间秒进行加1操作;若第三个键被按下,模式0和1进行切换;按下第四个按键时,若当前闹钟正在响铃,及LED灯D3在闪烁,按下此按键后停止响铃,即关掉LED灯,不让其闪烁,若当前没有处在响铃时段,按下此

LED数码管设计的可调式电子钟说明说

课程设计说明书 用LED 数码管设计的可调式电子钟 专业 学生姓名 班级 学 号 指导教师 完成日期 2013年6月28日

用LED数码管设计的可调式电子钟 摘要: 数字电子时钟电路设计系统,以AT89C51单片机为控制核心,由键盘显示、定时闹铃、LED共阴极数码管和LED灯显示等功能模块组成。基于题目基本要求,本系统对时间显示和定时报警进行了重点设计。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,而且有一定的创新功能。 关键字:单片机;AT89C51;数字钟 Abstract: T h i s d i g i a l electronic clock circuit design system ,based o n c hip microcomputer AT89C51,is composed by the following functional modules : keyboard displaying , timing alarmg. common cathode LED digital tube, LED lights display,and s o on. According to the basic requirem ents of t he subj ect,t he s ys t em st res ses on the real iz ati on of Time display and regularly report t o the police.The design achieved the required basic technical indexes. Furthermore , adopting the iedao fhardware-to-software, m o s t o f those functions are r e a l i z e d b y softwares, which makes the electrocircuit more concise and the system more stable. Key words:chip microcomputer;AT89C51:digital electronic clock

用LED数码管设计的可调式电子钟

目录 1概述 (1) 1.1课题研究的目的和意义 (1) 2 课题方案论证 (1) 2.1系统总体设计要求 (1) 2.2系统模块结构论证 (2) 3 系统硬件设计 (2) 3.1总体设计 (2) 3.2最小单片机系统如图3-2所示 (3) 3.3按键电路如图3-3所示 (3) 4软件设计 (3) 4.1 主程序 (3) 图4-1主程序流程图 (4) 4.2 显示子程序 (4) 4.3定时器/计数器T0中断服务程序 (4) 5软硬件联调及调试结果 (5) 5.1调试步骤 (5) 5.2实际出现的问题及解决方法 (6) 5.3仿真图如图5-2所示 (6) 5.4实物图正面如图5-3-1所示,实物图背面如图5-3-2所示 (6) 5.5板子运行情况如图5-5所示 (7) 结束语 (7) 参考文献 (8) 附录 (8) 附录1 原理图如图附录-1所示 (8) 附录2 PCB图如图附录-2所示 (8) 附录-2PCB图 (9) 附录3 proteus仿真图如图附录-3所示 (9) 附录-3 proteus仿真图 (9) 附录4 C语言程序清单 (10) 附录5 元器件清单 (10)

1概述 1.1课题研究的目的和意义 此次设计是单片机内部的定时/计数器来实现电子时钟的方法以及借助键盘直接控制整时的调整,本设计根据STC89C52单片机系统扩展的基本原理和方法,由单片机STC89S52芯片,LED数码管和键盘为核心,辅以必要的电路,构成了一个单片机电子时钟。一块单片机芯片就是一台计算机,由于单片机以其集成度高、体积小、可靠性高、控制功能强、低电压、低功耗等特点使它应用于智能仪器仪表、机电一体化、实时程控、人类生活中。除此之外还广泛应用办公自动化领域、商业营销领域、汽车及通信系统、计算机外部设备等各领域中,并且单片机已成为计算机发展和应用的一个重要方面。由此可见掌握单片机的使用方法和利用单片机解决实际问题具有重要的意义。而此次的设计刚好用到单片机相关的知识可以说这是这次设计的重要意义和目的所在。 再者,此设计的LED电子时钟主要是显时间的,是时钟用途。在此设计的基础上人们还可根据不同的需求和不同的设计水平做出不同的设计项目。也可以加上日期,温度的显示和闹钟的功能。如果设计水平还更高的话还可以设计LED电子显示屏。因此说,LED电子时钟设计是最简单和基础的。而且电子时钟很实用,准确性也很好,也容易调节,若有毁坏更换元器件也简单,制作原理和过程也很易懂易做,成本也不高。在此设计间也包含了很多的知识,跟我所学专业又对口,所以,做这个LED电子时钟是个很用很好很值得做的设计。 2 课题方案论证 2.1系统总体设计要求 本次设计中的LED数码管电子时钟电路采用24小时制记时方式。本次设计采用STC89C52单片机的扩展芯片和2个74LS04做驱动,由八块LED数码管构成的显示系统,与传统的基于8/16位普通单片机的LED显示系统相比较,本系统在不显著地增加系统成本的情况下,可支持更多的LED数码管稳定显示。设计采用STC89C52单片机,配备11.0592MHz晶振,复位电路为上电复位。采用软件译码动态显示,考虑直接用单片机I/O口作为位选时可能驱动功率不够,可采用三极管作驱动共阳极数码管显示。8位8段LED数码管作正常、调时显示,时间按时分秒排列,时钟误差:24小时误差3~5秒,并且在按键的作用下可以进行调时,调分,复位功能。本电路采用直流5V电源供电。同时为了限流保护电路也用了若干个阻值不等的电阻。 在本文一开始做了一些概述主要说明此设计的目的和意义,并会对这类设计项目发展情况做个简介。这是对这次设计很重要的一个认识是前提和设计者必须明确和了解的。 然后本文对此设计做了一些简要分析,这对理清设计思想很重要。然后还对设计中用到的元器件进行比较全面的介绍。只有真正了解了元器件的特性和功能才能让这些元器件在设计中起到作用。电子整个设计第一步是电路原理图,它直接关系着后续的工作。 接着当原理图完成好后就要为后面的刻板做准备了,这就是PCB印制电路板的

相关文档
最新文档