当前位置:文档之家› 基于STC89C52单片机的电子时钟设计带程序

基于STC89C52单片机的电子时钟设计带程序

基于STC89C52单片机的电子时钟设计带程序
基于STC89C52单片机的电子时钟设计带程序

河南机电高等专科学校

程序已经验证可行本人亲自做了一个

基于51单片机的电子时钟设计

目录

绪论 (1)

概述 (1)

研究目的 (1)

第1章设计要求与方案论证 (2)

1.1 设计要求 (2)

1.2 系统基本方案选择和论证 (2)

1.2.1 单片机芯片的选择方案和论证 (2)

1.2.2 显示模块选择方案和论证 (2)

1.2.3 时钟芯片的选择方案和论证 (3)

1.3 电路设计最终方案决定 (3)

第2章主要元件介绍 (4)

2.1 STC89C52介绍 (4)

2.1.1 STC89C52主要功能及PDIP封装 (4)

2.1.2 STC89C52引脚介绍 (4)

2.1.3 STC89C52最小系统 (5)

2.2 DS1302时钟芯片介绍 (6)

2.2.1 DS1302概述 (6)

2.2.2 DS1302引脚介绍 (7)

2.2.3 DS1302使用方法 (7)

2. 3 1602字符液晶介绍 (9)

2.3.1 1602液晶概述 (9)

2.3.2 1602引脚介绍 (10)

2.3.3 1602字符液晶使用方法 (10)

第3章系统硬件设计 (13)

3.1 电路设计框图 (13)

3.2 系统硬件概述 (13)

第4章系统的软件设计 (14)

4.1程序概述 (14)

4.2延时函数 (15)

4.3 对DS1302读写操作函数 (15)

4.3.1 向DS1302写数据 (15)

4.3.2 从DS1302读数据 (16)

4.4 显示函数 (17)

4.4.1向1602液晶中写一个指令 (17)

4.4.2向液晶写数据 (17)

4.4.3初使化1602液晶 (17)

4.4.4 如何在液晶上显示时间、日期及周 (18)

4.5按键函数 (19)

4.5.1 12/24小时显示模式切换键 (21)

4.5.2 功能键函数 (23)

4.5.3 调整键函数 (26)

4.5.4确定键 (31)

4.6 主函数 (32)

总结 (34)

致谢 (35)

参考文献 (36)

绪论

概述

时间,对人们来说是非常宝贵的,准确的掌握时间和分配时间对人们来说至关重要。因此自从时钟发明的那刻起,就成为人类的好朋友。随着时间的流逝,科学技术的不断发展和提高,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好、更方便、更精确的显示时间,这就要求人们不断设计研发出新型的时钟。

高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校。数字式电子钟用集成电路计时时,译码代替机械式传动,用LCD显示器代替指针进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在单片机的应用系统中,时钟有两个方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时器/计数器来实现;二是用专门的时钟芯片实现。

研究目的

通过利用STC89C52单片机和DS1302芯片以及外围的按键和LCD显示器等部件,设计一个基于单片机的电子时钟。设计的电子时钟通过液晶显示器显示,并能通过按键对时间进行设置。

第1章设计要求与方案论证

1.1设计要求

①具有年、月、日、星期、时、分、秒显示功能

②具备年、月、日、星期、时、分、秒校准功能

③具有12/24小时切换显示功能

1.2系统基本方案选择和论证

1.2.1 单片机芯片的选择方案和论证

方案一:

采用STC89C52芯片作为硬件核心。STC89C52内部具有8KB ROM 存储空间,512字节数据存储空间,带有2K字节的EEPROM存储空间,与MCS-51系列单片机完全兼容,STC89C52可以通过串口下载。

方案二:

采用AT89S52。AT89S52片内具有8K字节程序存储空间,256字节的数据存储空间没有EEPROM存储空间,也与MCS-51系列单片机完全兼容,具有在线编程可擦除技术。

两种单片机都完全能够满足设计需要,STC89C52相对ATS89C52价格便宜,且抗干扰能力强。考虑到成本因素,因此选用STC89C52。

1.2.2 显示模块选择方案和论证

方案一:

采用点阵式数码管显示。点阵式数码管是由八行八列的发光二极管组成,可用来显示数。但体积较大,且价格也相对较高,从便携实用的角度出发,不采用此种方案。

方案二:

采用LED数码管动态扫描。LED数码管价格便宜,对于显示数字最合适,但功耗较大,且显示容量不够,所以也不用此种方案。

方案三:

采用LCD液晶显示屏。液晶显示屏的显示功能强大,可显示大量文字,显示多样,清晰可见,且价格适中,所以采用了LCD数码管作为显示。

1.2.3 时钟芯片的选择方案和论证

方案一:

直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。

方案二:

采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.

1.3 电路设计最终方案决定

综上各方案所述,对此次作品的方案选定: 采用STC89C52单片机作为主控制系统;采用DS1302作为时钟芯片;采用1602 LCD液晶作为显示器件。

第2章主要元件介绍

2.1STC89C52介绍

2.1.1 STC89C52主要功能及PDIP封装

STC89C52是由深圳宏晶科技公司生产的与工业标准MCS-51指令集和输出管脚相兼容的单片机。STC89C52主要功能如表2.1所示,其PDIP封装如图2.1所示

表2.1 STC89C52主要功能

2.1.2 STC89C52引脚介绍

①主电源引脚(2根)

VCC(Pin40):电源输入,接+5V电源

GND(Pin20):接地线

②外接晶振引脚(2根)

XTAL1(Pin19):片内振荡电路的输入端

XTAL2(Pin20):片内振荡电路的输出端

③控制引脚(4根)

RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号

PSEN(Pin29):外部存储器读选通信号

EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。

④可编程输入/输出引脚(32根)

STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。

P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7

P1口(Pin1~Pin8):8位准双向I/O 口线,名称为P1.0~P1.7 P2口(Pin21~Pin28):8位准双向I/O 口线,名称为P2.0~P2.7 P3口(Pin10~Pin17):8位准双向I/O 口线,名称为P3.0~P3.7

T0/P3.4SCK/P1.7

MISO/P1.6MOSI/P1.5T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GND

图2.1 STC89C52 PDIP 封装图

2.1.3 STC89C52最小系统

最小系统是指能进行正常工作的最简单电路。STC89C52最小应用系统电路如图2.2所示。它包含五个电路部分:电源电路、时钟电路、复位电路、片内外程序存储器选择电路、输入/输出接口电路。其中电源电路、时钟电路、复位电路是 保证单片机系统能够正常工作的最基本的三部分电路,缺一不可。

①电源电路 芯片引脚VCC 一般接上直流稳压电源+5V ,引脚GND 接电源+5V 的负极,电源电压范围在4~5.5之间,可保证单片机系统能正常工作。为提高电路的抗干扰性能,通常在引角Vcc 与GND 之间接上一个10uF 的电解电容和一个0.1uF 陶片电容,这样可抑制杂波串扰,从而有效确保电路稳定性。

②时钟电路 单片机引脚18和引脚19外接晶振及电容, STC89C52芯片的工作频率可在2~33MHz 范围之间选,单片机工作频率取决于晶振XT 的频率,通常选用11.0592MHz 晶振。两个小电容通常取值3pF ,以保证振荡器电路的稳定性及快速性。

③复位电路一般若在引脚RST上保持24个工作主频周期的高电平,单片机就可以完成复位,但为了保证系统可靠地复位,复位电路应使引脚RST保持10ms 以上的高电平。如图复位电路带有上电自动复位功能,当电路上电时,由于C1电容两端电压值不能突变,电源+5V会通过电容向RST提供充电电流,因此在RST 引脚上产生一高电平,使单片机进入复位状态。随着电容C1充电,它两端电压上升使得RST电位下降,最终使单片机退出复位状态。正常运行时,可按复位按钮对单片机复位

图2.2 STC89C52最小系统

2.2 DS1302时钟芯片介绍

2.2.1 DS1302概述

DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用双电源供电(主电源和备用电源),同时提供了对后背电源进行涓细电流充电的能力。采用三线接口与CPU进行同步通信

Vcc1

X1

I/O

X2

CE

图2.3 DS1302封装图

2.2.2 DS1302引脚介绍

各引脚功能为:

Vcc:主电源;Vcc2:备用电源。当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电;当Vcc2

SCLK:串行时钟输入端,控制数据的输入与输出

I/O:三线接口时的双向数据线

CE:输入信号,在读、写数据期间必须为高

2.2.3 DS1302使用方法

(1) 时钟芯片DS1302的工作原理:

DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如图5所示。表2为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表6为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。

(2) DS1302的控制字节

DS1302的控制字如表所示。控制字节最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6为0,表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始传输

表2.2 DS1302控制字

(3) 数据输入输出(I/O)

在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK 脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。其读写时序如图示

图2.4 DS1302读写时序

(4)DS1302寄存器

DS1302中与时间、日期有关的寄存器共有12个,其中7个存放数据的格式为BCD码格式,其读写地址如下表所示

表2.3 DS1302时钟寄存器

第一行秒寄存器,CH 为时钟暂停标志位,该位为1时时钟停止,该位为0时时钟运行

第二行分寄存器,bit0~bit6表示分钟数,因采用BCD 编码,所以低四位最大能表示的数字为9,计数满向高三位进1。

第三行时寄存器,12/24用来定义DS1302小时的运行模式,12小时模式下bit5为1表示PM 下午,bit5为0表示AM 上午

第八行控制寄存器,bit7是写保护位WP ,当WP 为1时,写保护位可防止对任一寄存器的写操作,在任何的对时钟和RAM

的写操作之前,WP 位必须为0

此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM 相关的寄存器分为两类:一类是单个RAM 单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H ~FDH ,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM 寄存器,此方式下可一次性读写所有的RAM 的31个字节,命令控制字为FEH(写)、FFH(读)。 2. 3 1602字符液晶介绍 2.3.1 1602液晶概述

工业字符型液晶,1602是指显示的内容为16*2,能同时显示两行,每行16个字符。常见的1602字符液晶有两种,一种显示绿色背光黑色字体,另一种显示蓝色背光白色字体,目前市面上绝大多数基于HD44780液晶芯片控制,原理是完全相同的。本课题所用1602液晶模块,显示屏是蓝色背光白色字体。如图2.5所示

LCD1602

图2.5 1602字符液晶

2.3.2 1602引脚介绍

表2.4 1602字符液晶引脚说明

各个引脚具体功能说明:

第1脚:GND为地电源。

第2脚:VCC接5V正电源。

第3脚:VO为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生重影,使用一个1K的电位器调整对比度。

第4脚:RS为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。

第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:DB0~DB7为8位双向数据线。

第15~16脚:背光灯电源。

2.3.3 1602字符液晶使用方法

(1)基本操作时序

表2.5 1602字符液晶读写状态表

图2.6 1602液晶写时序图

图2.7 1602液晶读时序图

(2)RAM

1602液晶控制器芯片内部带有80个8位的RAM缓冲区,其地址和屏幕的对

应关系如图2.8示

图2.8

(3)1602字符液晶字库

1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 。

表2.6 1602字符液晶字库表

第3章系统硬件设计

3.1 电路设计框图

图3.1 硬件框图

3.2系统硬件概述

本电路以STC89C52单片机为控制核心,以STC89C52最小系统为基础。时钟电路由高精度低功耗的DS1302提供,采用三线接口与CPU进行同步通信,输入部分采用四个独立式按键S1、S2、S3、S4。1602液晶显示部分,D0-D7口与单片机P0口相连。具体线路连接,详见附录1

第4章系统的软件设计

4.1程序概述

DS1302时钟芯片具有通电自动计时的功能。向DS1302中写入一个初值,如写入2011-05-01 00:00:00 星期日,在通电时,时间就会自动走:过60秒分加1;过60分时加1;过24小时天加1,星期日变成星期一;一周有7天,芯片内的周信息每7天一循环;芯片能够自动判断每月有多少天,5月有31天,31天后,月加1。采用DS1302时钟芯片的单片机时钟,其实质就是读取时钟芯片内的时钟信息并把它显示出来。只要时间初值正确,时钟就能一直精准的走下去。调整时间日期,实质就是向DS1302时钟芯片重新写入初值。电子时钟的主程序框图如图10所示

图4.1 主程序框图

4.2延时函数

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

由for循环构成的延时函数,z的取值为这个函数的延时ms数,如delay(200);大约延时200ms. delay(500);大约延时500ms。因下文多次用到,固在此先作说明。

4.3 对DS1302读写操作函数

在对DS1302时钟芯片操作前,应对其操作时序有所了解,参看前文DS1302介绍。DS1302采用串行方式与单片机进行通信,一个机器周期只能读写一个字节的一位,因此,在单片机与DS1302芯片间传输一字节(8位)数据,要分8次进行,且先从低位开始传输。

4.3.1 向DS1302写数据

/***************************写数据字节子函数**************************/ void write_1302_byte(uchar temp)//用来发送8位数据信息

{

uchar i;

for(i=0;i<8;i++)//循环8次写入数据

{

sck=0;

sda=temp&0x01;//每次传输低字节

temp>>=1;//右移一位

sck=1;//在SCK上升沿的时候字节写入DS1302

}

}

/*************************1302写数据子函数**************************/ void write_1302(uchar addd,uchar dat)

{

rst=0;

_nop_();

sck=0;

_nop_();

rst=1;

_nop_();

write_1302_byte(addd);//发送地址

write_1302_byte(dat);//发送数据

rst=0;

}

4.3.2 从DS1302读数据

/***************************读DS1302数据函数*************************/ uchar read_1302(uchar add)//输入地址add,返回读取的数据

{

uchar i,temp=0x00;

rst=0;

sck=0;

rst=1;

write_1302_byte(add);

for(i=0;i<8;i++)//循环8次读取

{

if(sda)

temp|=0x80;//每次传输低字节,等价于temp=temp|0x80

sck=0;

temp>>=1;//右移一位

sck=1; //sck被置高,在其下一次变为0时,数据被写入

}

rst=0;//以下为DS1302复位的稳定时间

sck=0;

sck=1;

sda=0;

sda=1;

return(temp);//将temp值返回

}

4.4 显示函数

对1602进行操作前要对其进行初使化,初使化完成后它才能正常显示。如果想在1602液晶的某一个位置显示一个内容,要先对其写入一个指令:在什么地方显示。然后再对其写入一个数据:要显示什么内容。对1602的液晶初使化,需要用写入指令的方式完成。

4.4.1向1602液晶中写一个指令

void write_com(uchar com)

{

lcdwr=0; //lcdwr为读写控制端,lcdwr=0,这里可不写

lcdrs=0; //液晶rs接口为0时,写指令,rs为1时写数据

P0=com; //将要写的指令赋给P0口,

delay(5); //由1602读写操作时序图,先将指令赋给P0口,延时后将使能lcden=1; 端lcden置高,再延时一段时间,然后将lcden置低,这样指令delay(5); 就写入到LCD了

lcden=0;

}

4.4.2向液晶写数据

void write_data(uchar date),与写指令类似,这里lcdrs设为1

{

lcdrs=1;

P0=date;

delay(5);

lcden=1;

delay(5);

lcden=0;

}

4.4.3初使化1602液晶

此函数首先对液晶进行初使化,使其处于待命状态,然后将时钟框架显示出

基于STC89C52单片机的动态数码管显示C语言程序

* 实验说明 : 8位数码管显示0~F #include #define GPIO_DIG P0 //段选 #define GPIO_PLACE P1 //位选 //--定义全局变量--// unsigned char code DIG_PLACE[8] = { 0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//位选控制查表的方法控制unsigned char code DIG_CODE[17] = { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 }; //0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码 unsigned char DisplayData[8]; //用来存放要显示的8位数的值 void DigDisplay(); //动态显示函数 void main(void) { unsigned char i; for(i=0; i<8; i++) { DisplayData[i] = DIG_CODE[i]; } while(1) { DigDisplay(); } } void DigDisplay() { unsigned char i; unsigned int j; for(i=0; i<8; i++) { GPIO_PLACE = DIG_PLACE[i]; //发送位选 GPIO_DIG = DisplayData[i]; //发送段码 j = 10; //扫描间隔时间设定 while(j--); GPIO_DIG = 0x00;//消隐 } }

STC89C52单片机详细介绍

STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL 搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 单片机总控制电路如下图4—1: 图4—1单片机总控制电路 1.时钟电路 STC89C52内部有一个用于构成振荡器的高增益反相放大器,引

脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图4—2(a) 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。 外部方式的时钟电路如图4—2(b)所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。 示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。 RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。

AT89C51单片机电子时钟设计资料

AT89C51单片机电子时钟设计 学院: 专业: 学号: 学生:

目录 1 电子时钟 (4) 1.1 电子时钟简介 (4) 1.2 电子时钟的基本特点 (4) 1.3 电子时钟的原理 (4) 2 单片机识的相关知识 (4) 2.1单片机简介 (4) 2.2 单片机的特点 (5) 2.3 AT89C51单片机介绍 (5) 3 设计方案的选择 (7) 3.1计时方案 (7) 3.2 显示方案 (7) 3.3 数码管显示工作原理 (8) 3.4 键盘电路设计 (9) 3.5 主控模块AT89C51 (9) 4 系统软件设计 (9) 附录 (12)

摘要:单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。这次设计通过对它的学习、应用,以AT89C51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由4.5V直流电源供电,通过数码管能够准确显示时间,调整时间,从而到达学习、设计、开发软、硬件的能力。 关键词:单片机;电子时钟;AT89C51

1 电子时钟 1.1 电子时钟简介 本设计采用AT89C51单片机,以汇编语言为程序设计的基础,设计一个用六位数码管显示时、分、秒的时钟。现代的电子时钟是基于单片机的一种计时工具,采用延时程序产生一定的时间中断,用于一秒的定义,通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零,从而达到计时的功能,是人民日常生活不可缺少的工具。 1.2 电子时钟的基本特点 现在高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英钟、石英表都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调试,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。 1.3 电子时钟的原理 该电子时钟由AT89C51,键盘,八段数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。而电路中唯一的一个控制键却拥有多种不同的功能,按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开,则可以通过按键实现分钟的累加,每按一次分钟加一;而连续两次按下按键不放松,则可实现小时的调节,同样每按一次小时加一。 2 单片机识的相关知识 2.1单片机简介 单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

基于单片机电子时钟的设计

单片机课程设计 姓名:刘韶辉 学号:32 班级:自动化11402 成绩: 指导老师:吴玉蓉 设计时间:2016年12月26日~2017年1月5日目录

STC89C51是公司生产的一种低功耗、高性能CMOS8位微控制器,具有 4K 在系统可编程Flash存储器。STC89C51使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统不具备的功能。在单芯片上,拥有灵巧的8 位和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的。支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被 (5) 图5 单片机系统冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 (5) 将所有数码管的8个显示段码"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,电路如下图: (5) 图6 数码管显示电路 (6) 一、设计要求 利用51单片机开发电子时钟,实现时间显示、调整功能。具体要求如下:(1)按以上要求制定设计方案,并绘制出系统工作框图; (2)按要求设计部分外围电路,并与单片机仿真器、单片机实验箱、电源等正确可靠的连接,给出电路原理图; (3)用仿真器及单片机实验箱进行程序设计与调试; (4)利用键盘输入调整秒、分和小时时刻,数码管显示时间; 二、系统总体方案

基于单片机的电子日历时钟设计

#include #define uchar unsigned char #define uint unsigned int //----端口定义--- sbit ACC_7=ACC^7; sbit RST1=P2^5; sbit IO=P2^6; sbit SCLK=P2^7; sbit k1=P3^2; sbit k2=P3^3; sbit k3=P2^2; sbit k4=P2^3; //uchar wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 数码的位选,左到右 uchar tab_1302[7]={45,50,11,19,1,1,15}; uchar tab_time[8]={0,0,10,0,0,10,0,0}; //时间 uchar tab_day[8]={0,0,10,0,0,10,0,0,}; //年月日 uchar tab_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //0 1 2 3 4 5 6 7 8 9 - {"0123456789-"} ////////////=============函数声明============//////////////// void display_time(); void delayms(uint); void display_day(); void ds1302(); //获取DS1302的时间 void ds1302_init(); //DS1302的初始化 void write1302(uchar,uchar); //指定地址向DS1302写数据 uchar read1302(uchar); //指定地址向DS1302读数据 void ds1302(); void int0_init(); /////////=======中断初始化=======/////////// void int0_init() { EX0=1;

基于STC89C52单片机毕业设计完整版附原理图pcb图源程序仿真图

基于STC89C52单片机的电子密码锁 学生姓名: xx 学生学号: xxxxx 院(系):电气信息工程学院 年级专业: 2010级电子信息工程2班 指导教师:陶文英 二〇一三年六月 摘要

随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事情屡见不鲜,电子密码锁具有安全性能高,成本低,功耗低,操作简单等优点使其作为防盗卫士的角色越来越重要。 从经济实用角度出发,采用51系列单片机,设计一款可更改密码,LCD1602显示,具有报警功能,该电子密码锁体积小,易于开发,成本较低,安全性高,能将其存储的现场历史数据及时上报给上位机系统,实现网络实时监控,方便管理人员及时分析和处理数据。其性能和安全性已大大超过了机械锁,特点有保密性好,编码量多,远远大于弹子锁,随机开锁成功率几乎为零;密码可变,用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降;误码输入保护。当输入密码多次错误时,报警系统自动启动;电子密码锁操作简单易行,受到广大用户的亲睐。 关键词单片机, 密码锁, 更改密码, LCD1602 目录

错误!未定义书签。 1 绪论 1.1电子密码锁简介 (1) 1.2 电子密码锁的发展趋势 (1) 2 设计方案 (3) 3 主要元器件 (4) 3.1 主控芯片STC89C52 (4) 3.2 晶体振荡器 (8) 3.3 LCD显示密码模块的设计 (9) 3.3.1 LCD1602简介 (9) 3.3.2 LCD1602液晶显示模块与单片机连接电路 (11) 4 硬件系统设计 (12) 4.1 设计原理 (12) 4.2 电源输入电路 (12) 4.3 矩阵键盘 (13) 4.4 复位电路 (14) 4.5 晶振电路 (14) 4.6 报警电路 (15) 4.7 显示电路 (15) 4.8 开锁电路 (16) 4.9 电路总体构成 (16) 5 软件程序设计 (18) 5.1 主程序流程介绍 (18) 5.2 键盘模块流程图 (19) 5.3 显示模块流程图 (21) 5.4 修改密码流程图 (22) 5.5 开锁和报警模块流程图 (23) 6 电子密码锁的系统调试及仿真 (25) 6.1硬件电路调试及结果分析 (25) 6.2软件调试及功能分析 (25) 6.2.1调试过程 (25) 6.2.2 仿真结果分 (26)

基于51单片机的电子时钟的设计

目录 0 前言 (1) 1 总体方案设计 (2) 2 硬件电路设计 (2) 3 软件设计 (5) 4 调试分析及说明 (7) 5 结论 (9) 参考文献 (9) 课设体会 (10) 附录1 电路原理 (12) 附录2 程序清单 (13)

电子时钟的设计 许山沈阳航空航天大学自动化学院 摘要:传统的数字电子时钟采用了较多的分立元器件,不仅占用了很大的空间而且利用率也比很低,随着系统设计复杂度的不断提高,用传统时钟系统设计方法很难满足设计需求。 单片机是集CPU、RAM、ROM、定时器/计数器和多种接口于一体的微控制器。它体积小、成本低、功能强,广泛应用于智能产品和工业自动化上。而51系列的单片机是各单片机中最为典型和最有代表性的一种。,本次设计提出了系统总体设计方案,并设计了各部分硬件模块和软件流程,在用C语言设计了具体软件程序后,将各个模块完全编译通过过后,结果证明了该设计系统的可行性。该设计给出了以AT89C2051为核心,利用单片机的运算和控制功能,并采用系统化LED显示模块实时显示数字的设计方案,适当地解决了实际生产和日常生活中对计时高精确度的要求,因此该设计在现代社会中具有广泛的应用性。 关键字:AT89C2051,C语言程序,电子钟。 0前言 利用51单片机开发电子时钟,实现时间显示、调整和闹铃功能。具体要求如下: (1)按以上要求制定设计方案,并绘制出系统工作框图; (2)按要求设计部分外围电路,并与单片机仿真器、单片机实验箱、电源等正确可靠的连接,给出电路原理图; (3)用仿真器及单片机实验箱进行程序设计与调试;

(4)利用键盘输入调整秒、分和小时时刻,数码管显示时间; (5)实现闹钟功能,在设定的时间给出声音提示。 1总体方案设计 该电子时钟由89C51,BUTTON,1602 LCD液晶屏等构成,采用晶振电路作为驱动电路,利用单片机内部定时计数器0通过软件扩展产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。闹钟和时钟的时分秒的调节是由一个按键控制,而另外一个按键控制时钟和闹钟的时间的调节。 图1 系统结构框图 该电子时钟由STC89C51,BUTTON,1602 LCD液晶屏等构成,采用晶振电路作为驱动电路,晶振电路的晶振频率为12MHZ,使用的定时器/计数器工作方式0,通过软件扩展产生的一秒定时,达到时分秒的计时,60秒为一分钟,60分钟为一小时,24小时为一天,又重00:00:00开始计时。没有按键按键按下时,时钟正常运行,当按下调节时钟按键K1,就会关闭时钟,当按下闹钟按键K3时时钟就会进入设置时间界面,但是时钟不会停止工作,按K2键,,就可以对时钟和闹钟要设置的时间进行调整。 2硬件电路设计

基于单片机电子时钟的设计说明

单片机课程设计 姓名:韶辉 学号: 1402250232 班级:自动化11402 成绩: 指导老师:吴玉蓉 设计时间:2016年12月26日~2017年1月5日

目录 1.设计要求 (1) 2.系统总体方案 (2) 3.硬件电路设计 (3) 4.系统软件设计. (4) 5.课程设计体会 (15) 6.参考文献 (15) 7.系统实物图 (16) 附录1 电路原理图 (17) 附录2 原件清单 (18)

一、设计要求 利用51单片机开发电子时钟,实现时间显示、调整功能。具体要求如下:(1)按以上要求制定设计方案,并绘制出系统工作框图; (2)按要求设计部分外围电路,并与单片机仿真器、单片机实验箱、电源等正确可靠的连接,给出电路原理图; (3)用仿真器及单片机实验箱进行程序设计与调试; (4)利用键盘输入调整秒、分和小时时刻,数码管显示时间; 二、系统总体方案 1.时钟计数:形成秒、分、小时,系统时间采用24小时制。利用单片机部的定时器/计数器来实现,它的处理过程如下:首先设定单片机部的一个定时器/计数器工作于定时方式,对机器周期计数形成基准时间(如10ms),然后用另一个定时器/计数器或软件计数的方法对基准时间计数形成秒(对10ms计数100次),秒计60次形成分,分计60次形成小时,小时计24次则计满一天。 (如12-25-09)。 2.显示:采用8个LED显示系统当前时间,显示格式为“时-分-秒” 3.设置功能:用户可以对系统的时间进行设置。没有按键时,则时钟正常走时。当按下K0键,进入调分状态,时钟停止走动,此时,按K1或K2键可进行加1或减1操作;继续按K0键可分别进行分和时的调整,此时,按K1或K2键可进行加1或减1操作;最后按K0键将退出调整状态,时钟开始计时运行。 4.系统框图

基于单片机的电子闹钟设计

基于单片机的电子闹钟设计 摘要 本设计以AT89C51芯片为核心,辅以必要的外围电路,设计了一个结构简单,功能齐全的电子时钟,它由5V直流电源供电。 关键词:单片机;led;闹钟;定时器 Abstract This design, adopting AT89C51 chip as the core part with some necessary peripheral circuits, is a simple electronic clock which uses 5V DC as the power supply. Keywords:single chip machine ,in fixed time machine, alarm clock,LED 1 引言 1.1设计目的 此次课程设计是在学习先修课程《单片机原理与系统设计》之后,为加强对学生系统设计和应用能力的培养而开设的综合设计训练环节。本课程设计应结合《单片机原理与系统设计》课程的基础理论,重点强调实际应用技能训练,包括单片机系统设计的软件和硬件两部分。其课程设计任务是使学生通过应用单片机系统设计的基本理论,基本知识与基本技能,掌握单片机应用系统各主要环节的设计、调试方法,初步掌握并具备应用单片机进行设备技术改造和产品开发的能力,培养学生的创新意识,提高学生的动手能力和分析问题、解决问题的能力。 1.2设计要求 结合单片机知识,以AT89C51单片机为核心,利用七段LED数码管实现计时、校时及闹钟功能。 1.3设计方法 以AT89C51单片机为核心,外加晶振电路,使用8个七段数码管显示,LED 采用动态扫描,用74ls245芯片作为驱动电路。通过四个独立按键对时间进行定时、校时,从而实现闹钟提醒功能。 2 设计方案及原理 2.1设计方案 选AT89C51单片机作为系统核心,辅助外部产生时钟信号的晶振电路,再加上四个独立按键作为输入信号,使用8个七段数码管显示时间,芯片74ls245为数码管段选线的驱动,最后用蜂鸣器实现闹铃功能。使用单片机的定时器T0计时时间为50ms,计时20次作为1s的时间基准。第一部分,12MHz的晶振连接至单片机的时钟信号输入端;第二部分,四个独立按键加上四个上拉电阻连接至单片机

STC89C52单片机用户手册

STC89C52RC单片机介绍 STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。 主要特性如下: 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051. 工作电压:~(5V单片机)/~(3V单片机) 工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz 用户应用程序空间为8K字节 片上集成512字节RAM 通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O口用时,需加上拉电阻。 ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/,TxD/)直接下载用户程序,数秒 即可完成一片 具有EEPROM功能 具有看门狗功能 共3个16位定时器/计数器。即定时器T0、T1、T2 外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒 通用异步串行口(UART),还可用定时器软件实现多个UART 工作温度范围:-40~+85℃(工业级)/0~75℃(商业级) PDIP封装 STC89C52RC单片机的工作模式 掉电模式:典型功耗<μA,可由外部中断唤醒,中断返回后,继续执行

原程序 空闲模式:典型功耗2mA 正常工作模式:典型功耗4Ma~7mA 掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备 STC89C52RC引脚图 STC89C52RC引脚功能说明 VCC(40引脚):电源电压 VSS(20引脚):接地 P0端口(~,39~32引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。

单片机电子时钟的设计报告

目录 1 引言 (1) 2 设计任务与要求 (2) 2.1. 设计题目 (2) 2.2. 设计要求 (2) 3 系统的功能分析与设计方案 (3) 3.1. 系统的主要功能 (3) 3.2. 系统的设计方案 (3) 3.3. 数码管显示工作原理 (4) 3.4. 电路硬件设计 (5) 3.4.1. 设计原理框图 (5) 3.4.2. 电源部分 (5) 3.4.3. 复位电路 (6) 3.4.4. 指示灯电路 (6) 3.4.5. 按键电路 (7) 3.4.6. 时钟电路 (7) 3.4.7. 驱动电路 (8) 3.4.8. 数码管连接电路 (8) 3.4.9. 主控模块AT89S52 (9) 3.4.10. 材料清单 (10) 3.4.11. 电路原理图、PCB图及实物图 (11) 3.5. 软件设计 (13) 3.5.1. 软件设计流程 (13) 3.5.2. 完整源程序 (15) 4 系统安装与调试 (21) 4.1. 硬件电路的安装 (21) 4.2. 软件调试 (21) 5 课程设计总结 (22) 参考文献 (23) 致谢 (24)

摘要 单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面。这次课程设计通过对它的学习、应用,以AT89S52芯片为核心,辅以必要的电路,设计了一个简易的单片机电子时钟,包括硬件电路原理的实现方案设计、软件程序编辑的实现、电子时钟正常工作的流程、硬件的制作与软件的调试过程。电子时钟由5.0V直流电源供电,数码管能够比较准确显示时间,通过按键能够调整时间,从而到达学习、设计、开发软、硬件的能力。 关键词:单片机;AT89S52;电子时钟;数码管;按键

基于单片机的电子时钟设计报告(LCD显示)

单片机原理及应用课程设计任务书 题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 单片机原理及应用课程设计任务书

题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 基于AT89C51单片机的电子时钟设计报告

一、设计要求与目的 1)设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间。 2)、使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。3)、用3个功能键操作来设置当前时间。 4)、熟悉掌握proteus编成软件以及keil软件的使用 二、本设计原理 本设计以AT89C51单片机为核心,通过时钟程序的编写,并在LCD显示器上显示出来。该编程的核心在于定时器中断及循环往复判断是否有按键操作,并对每个按键的操作在LCD显示器上作出相应的反应。由于LCD显示器每八位对应一个字符,故把秒、分、时的个位和十位分开表示。 该课题中有三个控制开关KM1、KM2、KM3分别控制时、分、秒的调整,时间按递增的方式调整,每点一次按钮则相应的时间个位加以,且时间调整不干扰其他为调整时间的显示。 三、硬件设计原理(电路) 硬件电路原理图

STC89C52单片机用户手册

STC89C52F单片机介绍 STC89C52F单片机是宏晶科技推出的新一代高速 /低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。 主要特性如下: * 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051. * 工作电压:5.5V?3.3V (5V单片机)/3.8V?2.0V (3V单片机) * 工作频率范围:0?40MHz相当于普通8051的0?80MHz实际工作频率可达48MHz *用户应用程序空间为8K字节 * 片上集成512字节RAM * 通用I/O 口(32个),复位后为:P1/P2/P3/P4是准双向口 /弱上拉,P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O 口 用时,需加上拉电阻。 * ISP (在系统可编程)/IAP (在应用可编程),无需专用编程器,无需专用仿真器,可通过串口( RxD/P3.0,TxD/P3.1 )直接下载用户程序,数秒 即可完成一片 * 具有 EEPROM能 *具有看门狗功能 * 共3个16位定时器/计数器。即定时器T0、T1、T2 * 外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒 * 通用异步串行口( UART,还可用定时器软件实现多个 UART * 工作温度范围:-40?+85C(工业级)/0?75C(商业级) * PDIP封装 STC89C52F单片机的工作模式 *掉电模式:典型功耗<0.1吩,可由外部中断唤醒,中断返回后,继续执行原程序

51单片机电子时钟设计报告

电子时钟实验报告 全部代码在文档末尾:51单片机,LCD1602液晶显示屏平台下编程实现,可直接编译运行 目录: 一,实验目的 (1) 二,实验要求 (2) 三,实验基本原理 (2) 四,实验设计分析 (2) 五,实验要求实现 (3) A.电路设计 (3) 1. 整体设计 (3) 2. 分块设计 (4) 2.1 输入部分 (4) 2.2 输出部分 (5) 2.3 晶振与复位电路 (5) B.程序设计 (6) B.1 程序总体设计 (6) B.2 程序主要模块 (6) 五.实验总结及感想 (8) 一,实验目的 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以电子钟是以其小巧,价格低廉,走时精度高,使用方便,

功能多,便于集成化而受广大消费的喜爱,得到了广泛的使用。 1. 学习8051定时器时间计时处理、按键扫描及LCD液晶显示的设计方法。 2. 设计任务及要求利用实验平台上LCD1602液晶显示屏,设计带有闹铃功能的数字时钟 二,实验要求 A.基本要求: 1. 在LCD1602液晶显示屏上显示当前日期,时间。 2. 利用按键可对时间及闹玲进行设置,并可显示设置闹玲的时间。闹玲时间到蜂鸣器发出 声响,一分钟后闹铃停止。 B.扩展部分: 1.日历功能(能对年,月,日,星期进行显示,分辨平年,闰年以及各月天数,并调整)实现年月日时分秒的调整,星期准确的随着日期改变而改变进行显示。 2.定时功能(设定一段时间长度,定时到后,闹铃提示) C.可扩展部分: 1.闹铃重响功能(闹铃被停止后,以停止时刻开始,一段时间后闹铃重响,且重响时间的间隔可调) 2.可进行备忘录提示,按照年月日,可在设定的某年某月进行闹铃提示。 三,实验基本原理 利用单片机定时器完成计时功能,定时器0计时中断程序每隔0.05s中断一次并当作一个计数,设定定时1秒的中断计数初值为20,每中断一次中断计数初值加1,当减到20时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了,是否一天到了,是否一个月到了,是否一年到了。 将时间在LCD液晶屏上显示,降低了程序的编写难度。LCD的固定显示特性是我们省去了数码管的动态扫描显示。 四,实验设计分析 针对要实现的功能,采用AT89S52单片机进行设计,AT89S52 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结

单片机电子时钟设计报告

单片机电子时钟设计报告 随着我国科学技术的飞速发展,单片机的应用越来越广泛。单片机是由随机存储器、只读存储器和中央处理器组成的单片机。它是一个集成定时计数和各种接口的微控制器。它体积小、成本低、功能强,广泛应用于智能工业和工业自动化。为了进一步了解51单片机的定时器,设计一个电子时钟,本文对AT89C51单片机的时钟计数进行了研究。数字时钟是一种使用数字电路技术来计时小时、分钟和秒钟的时钟。与机械钟相比,它具有更高的精度和直观性,更长的使用寿命,并得到了广泛的应用。设计数字时钟有很多方法。例如,中小规模的集成电路可以用来形成电子钟。特殊的电子钟芯片也可以用来形成需要显示电路和外围电路的电子钟。单片机也可以用来实现电子钟等。3,实际任务和内容 设计内容: 1,利用其定时器/计数器计时和计数原理,结合显示电路、发光二极管数码管和外部中断电路来设计定时器 2,系统可实现六位发光二极管显示,显示时间以小时:分:秒为单位3.当系统时间正好是1: 00时,指示灯闪烁(2hz)5秒钟设计目标: 1。掌握单片机定时器和中断的应用方法2.掌握按键和数码管的扩展方法 4、团队合作 项目组组长:张成 项目组成员:余江东、张翔

项目组,共三人,以张成为组长,分工合作,各负其责。具体分工如下:(1)负责数字钟硬件设计和调试;主要由张翔完成(2)基于proteus 的电路仿真;主要在江东完成(3)负责数字钟程序编写;主要由张成完成(4)报告编写;主要由张成、余江东、张翔完成。在我们小组拿到作业后,我们首先讨论了实习的内容和任务。一起讨论用什么方法来实现任务手册的要求和细节。为了不浪费时间,每个人都开始分工合作,专注于自己的任务,同时互相帮助。在这个过程中,我们互相合作,默契配合。我们一起讨论并解决了遇到的问题。两个有着不同想法和观点的人一起分享了讨论,最终采用了获得的最理想和最完美的方案。最后的调试是和我们一起进行的。我们在调试过程中遇到了许多问题。我们一起分析和搜索数据。百度试图解决这些问题。在这个过程中,我们训练了自己的团队合作和沟通技巧。这次供应链管理实习在我们三人的完美合作下圆满完成。每个人都很好地完成了自己的任务,充分证明了团结就是力量。同时,它也使我们认识到团队合作的重要性质。我们是一个完美的团队。 5、总体设计方案概述 系统总体结构图A T89C51单片机显示电路时钟电路机复位电路系统分为单片机控制模块、时钟电路模块、复位电路模块和发光二极管显示模块(1)时钟电路设计 单片机采用外部12MHZ晶振形成振荡电路作为时钟源,时钟电路原理如下当系统通电并启动时,

基于单片机电子闹钟的设计

西南石油大学 单片机课程设计 学院: 电气信息学院 专业年级: 通信工程2013级 姓名: 王昕铃 学号: 课题:基于单片机的定时闹钟设计 指导老师: 邓魁 日期: 2016 年 6月 30日 前言 20世纪末,电子技术获得了飞速的发展。在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高。同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间。所以有必要制作一个定时系统。随时提醒这些容易忘记时间的人。而钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等等。所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 随着生活水平的提高,人们越来越追求人性化的事物。传统的时钟已不能满足人们的需求。而现代的时钟不仅需要模拟电路技术和数字电路技术而且更需要单片机技术,增加数字钟的功能。利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,减小因元器件精度不够引起的误差,但是数字钟还是可以改进和提高如选用更精密的元器件。但与机械式时钟相比已经具有

更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。 数字钟通过数字电路实现时、分、秒。数字显示的计时装置,广泛用于个人家庭、车站、码头办公室等公共场所成为人们日常生活中不可少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。 多功能数字钟的应用非常普遍。由单片机作为数字钟的核心控制器,通过它的时钟信号进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行校时、定时等功能。输出设备显示器可以用液晶显示技术和数码管来显示技术。 本系统利用单片机实现具有计时、校时等功能的数字时钟,是以单片机AT89C51为核心元件同时采用LED数码管显示器动态显示“时”、“分”、“秒”的现代计时装置。另外具有校时功能,秒表功能,和定时器功能,利用单片机实现的数字时钟具有编程灵活,便于功能的扩充等优点。 摘要 单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而51单片机是各单片机中最为典型和最有代表性的一种。 本设计以AT89C51芯片为核心,辅以必要的外围电路,设计了一个结构简单,功能齐全的电子时钟,它由5V直流电源供电。在硬件方面,除了CPU外,使用八个七段LED数码管来进行显示,LED采用的是动态扫描显示,使用74LS245芯片进行驱动。通过LED能够较为准确地显示时、分、秒。四个简单的按键实现对时间的调整。软件方面采用C语言编程。整个电子钟系统能完成时间的显示、调时、校时和三组定时闹钟的功能。 选用单片机最小系统应用程序,添加比较程序、时间调整程序及蜂鸣程序,通过时间比较程序触发蜂鸣,实现闹钟功能,完成设计所需求的软件环境。介绍并使用Keil单片机模拟调试软件,测试程序的可行性并用Proteus进行仿真。 关键词:单片机,定时器,中断,闹钟,LED

51单片机的电子时钟设计

基于51单片机的电子时钟设计 摘要:本文介绍了基于51单片机的电子时钟的设计,从硬件和软件两个方面给出了具体实现过程。该时钟的设计采用功能分块的思想方法,将硬件电路划分为开关电路,显示驱动电路和数码管电路等若干独立模块,而软件的实现则由闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等组成。文中给出了各个模块的电路图,并用Proteus的ISIS软件对电子时钟系统的各个功能进行了仿真,并给出了相应的仿真结果图像。 关键词:单片机;电子时钟;键盘控制 Electronic Clock Design Based on 51 Single-chip *** Shandong Institute of Business and Technology , 264005 Abstract:This paper introduces the electronic clock design based on 51 single-chip microcomputer, and it provides us specific implementation process from aspects of hardware and software. This clock is designed by the method of function blocks. In hardware, it’s circuit is divided into switch block, display drive block and digital control block. However, the software consist of the program of alarm clock, time display, date display, stopwatch display, time adjust, timing adjustment, the alarm clock adjustment, time delay and so on. Circuit diagrams of each module is also given and the corresponding simulation image of this clock produced by software of Proteus is also showed in this paper. Key words:single chip microcomputer; electronic clock;Keyboard control 一,引言 1957年,Ventura发明了世界上第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。现代的电子时钟是基于单片机的一种计时工具,采用延时程序产生一定的时间中断,用于一秒的定义,通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零。从而达到计时的功能,是人民日常生活补课缺少的工具。现在高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英钟、石英表都采用了石英技术,因此走时精度高,

单片机电子时钟课程设计设计报告

单片机电子时钟设计 一、作品功能介绍 该作品是个性化电子钟设计,技术上主要用单片机(AT89S52)主控,6位LED数码显示,分别显示“小时:分钟:秒”。该作品主要用于24小时计时显示,能整时报时,能作为秒表使用,能定时闹铃1分钟。 功能介绍: (1)上电以后自动进入计时状态,起始于00:00:00。 (2)设计键盘调整时间,完成时间设计,并设置闹钟。 (3)定时时间为1/100秒,可采用定时器实现。 (4)采用LED数码管显示,时、分,秒采用数字显示。 (5)采用24小时制,具有方便的时间调校功能。 (6)具有时钟和秒表的切换功能。 使用方法: 开机后时钟在00:00:00起开始计时。 (1)长按P3.2进入调分状态:分单元闪烁,按P3.2加1,按P3.3减1.再长按P3.2进入时调整状态,时单元闪烁,加减调整同调分.按长按退出调整状态。 (2)(2)按P3.3进入设定闹时状态: 12:00: ,可进行分设定,按P3.4分加1,再按P3.2为时调整,按P3.4时加1,按P3.3调闹钟结束.在闹铃时可按P3.2停闹,不按闹铃1分钟。 (3)按下P3.4进入秒表状态:再按P3.4秒表又启动,按P3.4暂停,再按P3.4秒表清零,按P3.4退出秒表回到时钟状态。 二、电路原理图 如原理图所示,硬件系统主要由单片机最小应用系统、LED数码管显示模块、电源模块、晶振模块、按键模块等组成。

电子时钟原理图 各个模块设计 1.单片机系统 AT89S52 AT89S52概述:是一款非常适合单片机初学者学习的单片机, 它完全兼容传统的8051,8031的指令系统,他的运行速度 要比8051快最高支持达33MHz的晶体震荡器,在此系统中 使用12MHz的晶振。 AT89S52具有以下标准功能: 8k字节Flash,256字节 RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三 个16 位定时器/计数器,一个6向量2级中断结构,全双 工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模 式下,CPU停止工作,允许RAM、定时器/计数器、串口、中 断继续工作。掉电保护方式下,RAM内容被保存,振荡器被

相关主题
文本预览
相关文档 最新文档