数字电子钟课程设计.docx
- 文档编号:9653402
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:18
- 大小:72.57KB
数字电子钟课程设计.docx
《数字电子钟课程设计.docx》由会员分享,可在线阅读,更多相关《数字电子钟课程设计.docx(18页珍藏版)》请在冰豆网上搜索。
数字电子钟课程设计
河南机电高等专科学校
课 程 设 计 报 告
课程名称 :
数字电子钟课程设计
系别:
自控系
专 业:
生产过程自动化
班 级:
122班
学 号:
121416233
姓 名:
王艳涛
1 绪论
电子表是20世纪50年代才开始出现的新型计时器。
最早的一款电子表被称做“摆轮游丝电子表”,它诞生于1955年。
这种手表用电磁摆轮代替发条驱动,以摆轮游丝作为振 荡器,微型电池为能源,通过电子线路驱动摆轮工作。
它的走时部分与机械手表完全相同,被称为第一代电子手表。
1960年,美国布洛瓦公司最早开始出售“音叉电子手表”。
这种手表以金属音叉作为振荡器,用电子线路输出脉冲电流,使机械音叉振动。
它比摆轮式电子手表结构简单,走时更精确,被称为第二代电子手表。
1969年,日本精工舍公司推出了世界上最早的石英电子表。
石英电子表的出现,立刻成为了钟表界主流产品,它走时精确,结构简单,轻松地将一、二代电子表,甚至机械表淘汰出局。
石英表又称“水晶振动式电子表”,因为它是利用水晶片的“发振现象”来计时的。
当水晶受到外部的加力电压,就会产生变形和伸缩反应;如果压缩水晶,便会使水晶两端产生电力。
这样的性质在很多结晶体上也可见到,称为“压电效果”。
石英表就是利用周期性持续“发振”的水晶,为我们带来准确的时间。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
从上世纪80年代,由当时的4位、8为单片机,发展到现在的32位300M的高速单片机。
1.1 单片机的介绍
单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller
Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
它最早是被用在工业控制领域。
1.2单片机应用的特点 控制功能和可靠性高 ,单片机是为了满足工业控制而设计的,所以实时控制功能特别强,其CPU可以对I/O接口直接进行操作,位操作能力更是其它计算机无法比拟的,另外,由于CPU,存储器,以及I/O接口集成在同一芯片内,各部件之间的连接紧凑,数据在传送时受到干扰小,且不易受环境条件的影响,所以单片机的可靠性非常高。
体积小,价格低,易于产品化 ,每一片单片机既是一台完整的微型计算机,对于批量的专用场合,一方面可以在众多的单片机品种间进行匹配选择,同时还可以专门进行芯片设计,使芯片功能与应用具有良好和对应关系。
对单片机产品的引脚封装方面,有的单片机引脚已减少到8个或更少,从而使应用系统的印刷板减小,按插件减少,安装简单。
在现代的各种电子器件中,单片机具有良好的性能价格比,这正是单片机得以广泛应用的重要原因。
1.3单片机的应用领域
(1)能仪器仪表
单片机用于各种仪表,一方面提高了仪表仪器的使用功能和精度,使仪器仪表智能化,同时还简化了仪器仪表的硬件结构,从而可以方便地完成仪器仪表的升级代换。
如各种智能化电气测量仪表,智能传感器等。
(2)机电一体化
机电一体化产品是集机械技术,微电子技术,自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。
单片机在机电一体化产品的开发中可以发挥巨大的作用。
典型的产品如:
机器人,数控机床,自动包装机,点钞机,医疗设备,打印机,传真机,复印机等。
(3)实时工业控制
单片机还可以用于各种物理量的采集与控制。
电流,电压,温度,液位,流量等物理参数的采集和控制均可以利用单片机方便地实现。
在这类系统中,利用单片机作为系统控制器,可以根据被控对象的不同特征采用不同的智能算法,实现期望的控制指标,从而提高生产效率和产品质量。
典型应用如电动机转速控制,温度控制,自动生产线等。
(4)分布系统的前端模式
在较复杂的工业系统中,经常要采用分布式控制系统完成大量的分布参数的采集。
在这类系统中,采用单片机作为分布式系统的前端采集模块。
系统具有运行可靠,数据采集方便灵活,成本低廉等一系列有点。
(5)家用电器 家用电器是单片机的又一重要应用领域,前景十分广泛如空调,电冰箱,洗衣机、电饭煲,高档洗浴设备,高档玩具。
另外,交通领域中,汽车,火车,飞机,航天等均有单片机的广泛应用。
1.4 51系列单片机
51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。
该系列单
片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。
51单片机是基础入门的一个单片机,还是应用最广泛的一种。
需要注意的是52系列的单片机一般不具备自编程能力。
当前常用的51系列单片机主要产品有:
*Intel的:
80C31、80C51、87C51,80C32、80C52、87C52等;*ATMEL的:
89C51、89C52、89C2051
等;*Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品。
目前,国产宏晶STC单片机以其低功耗、廉价、稳定性能,占据着国内51单片机较大市场。
设计题目
液晶电子时钟
设计要求
利用单片机AT89S52和LCD1602设计一个数字时钟。
通过按键来控制调节时间的时、分、秒,然后通过LCD1602来显示时间。
设计过程
摘要:
时钟随处可见,随着电子产品的更新速度的加快,各种功能强大,款式新颖的电子产品不断问世。
电子时钟便是这一发展趋势中的代表,各种功能的电子时钟应有尽有,且功能不断更新。
本次课程设计的在液晶显示器LCD1602上显示时间显示,并能通过按键对其进行调时和校准。
关键字:
AT89S52单片机、LCD1602液晶显示器,按键,调时,校准;
1.本设计任务和主要内容
在学习单片机的过程中必须理论联系实际,从实践中检验所学。
时间对每个人的重要性不言而喻,而现在的科技已经通过各种不同的形式来展现时间,来提醒我们要惜时。
设计要求为:
(1)、准确计时,以数字形式在LCD1602上显示时、分、秒的时间
(2)、小时以24小时计时形式,分秒计时为60进位
(3)、校正时间功能(即调整时间)
(4)、通过软件和硬件的测试达到目标的实
2设计方案
2.1 主程序设计思路
通过单片机内部的计数/定时器,采用软件编程来实现时钟计数,一般称为软时钟,这种方法的硬件线路简单,系统的功能一般与软件设计相关,通常用在对时间精度要求不高的场合。
采用时钟芯片,它的功能强大,功能部件集成在芯片内部,具有自动产生时钟等相关功能,硬件成本相对较高;软件编程简单,通常用在对时钟精度要求较高的场合。
先对显示单元和定时器/计数器初始化,然后重复调用数码管显示模块和按键处理模块,当有按键按下时,则转入相应的功能程序。
2.2 定时器/计数器T0中断服务程序
T0用于计时,选中方式一,重复定时,定时时间设为50ms,定时时间到则中断,在中断服务程序中用一个计数器对50ms计数,计20次则对秒单元加一。
秒单元加到60则对分单元加一,同时秒单元清0;分单元加到60则对时单元加一,同时分单元清0;时单元加到24则对时单元清0,标志一天时间计满。
在对各单元计数的同时,把他们的值放到存储器单元的指定位置。
2.3 示意图
2.4 按键处理
按键设置为:
如果没有按键吗,则时钟正常走时。
当按下K0键时,进入调分状态,时钟停止走动;按S2和S3按键可以进行加一和减一操作;继续按S1键可以分别进行分和小时的调整;最后按S1键启动计时。
.1硬件模块的实现
单片机系统中的时钟是一切与时间有关过程的运行基础,在实时控制系统中尤其如此。
钟有绝对时钟和相对时钟两种。
绝对时钟是与当地的时钟同步的,有月、日,时、秒等功。
相对时钟则与当地时间无关,一般只有时、分、自动控制定时时间长短的功能。
MOS-51系列单片机只有T0,T1两个16位定时器,若都用作系统时钟的绝对时钟和相对时钟定时,则当系统再用于通信等需要定时器资源的情况下,会出现定时器不够用的情况.为此,统一设计单片机的时钟系统,用一个定时器完成绝对和相对时钟等多项定时任务是有实际意义的。
3.1.1 显示模块概述概述
1. 功能概述
本时钟使用四个LED显示模块,显示的基本格式为:
时××(秒点跳动)分××秒××。
随时可以调整时钟的时间。
当按下时钟调整模式键时,进入调整时间状态。
通过不同的按钮次数,调整不同的位置的数字。
单片机时钟的基本框图如图3.1所示:
图3.1 单片机时钟的基本框图
晶振复位电路:
产生计数信号,完成时钟的运行。
输入模式键:
选择调整的位:
秒,分,时,日,月。
输入调整键:
调整相应位的时间或日期,每按一次,加一。
2.技术方案
一个完整的数字钟电路相当于一个简单的系统,每个部分都要设计。
MCS-51单片机的片内结构由八部分组成。
微型处理机(CPU),数据存储器(RAM)。
程序存贮器(ROM,EPROM),I/O口,定时器,计数器。
中断系统及特殊的功能寄存器(SFR)。
数据存储器和程序存储器的可寻址的范围是:
64K地址范围是:
0000H-----FFFFH扩展的I/O均占用存储器的地址。
4:
C语言程序
#include
#defineucharunsignedchar
#defineuintunsignedint
sbitdula=P2^6;
sbitwela=P2^7;
sbitrs=P3^5;
sbitlcden=P3^4;
sbits1=P3^0;
sbits2=P3^1;
sbits3=P3^2;
sbitrd=P3^7;
sbitjj=P3^6;
ucharcount,s1num;
charmiao,shi,fen;
ucharcodetable[]="2013:
12:
31";
ucharcodetable1[]="00:
00:
00";
voiddelay(uintz)
{
uintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
voidwrite_com(ucharcom)
{
rs=0;
lcden=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
voidwrite_date(uchardate)
{
rs=1;
lcden=0;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
voidinit()
{
ucharnum;
dula=0;
wela=0;
lcden=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
for(num=0;num<15;num++)
{
write_date(table[num]);
delay(5);
}
write_com(0x80+0x40);
for(num=0;num<12;num++)
{
write_date(table1[num]);
delay(5);
}
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
voidwrite_sfm(ucharadd,uchardate)
{
ucharshi,ge;
shi=date/10;
ge=date%10;
write_com(0x80+0x40+add);
write_date(0x30+shi);
write_date(0x30+ge);
}
voidkeyscan()
{
rd=0;
if(s1==0)
{
delay(5);
if(s1==0)
{s1num++;
while(!
s1);
if(s1num==1)
{
TR0=0;
write_com(0x80+0x40+10);
write_com(0x0f);
}
}
if(s1num==2)
{
write_com(0x80+0x40+7);
}
if(s1num==3)
{
write_com(0x80+0x40+4);
}
if(s1num==4)
{
s1num=0;
write_com(0x0c);
TR0=1;
}
}
if(s1num!
=0)
{
if(s2==0)
{
delay(5);
if(s2==0)
{
while(!
s2);
if(s1num==1)
{
miao++;
if(miao==60)
miao=0;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}
if(s1num==2)
{
fen++;
if(fen==60)
fen=0;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi++;
if(shi==24)
shi=0;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
if(s3==0)
{
delay(5);
if(s3==0)
{
while(!
s3);
if(s1num==1)
{
miao--;
if(miao==-1)
miao=59;
write_sfm(10,miao);
write_com(0x80+0x40+10);
}
if(s1num==2)
{
fen--;
if(fen==-1)
fen=59;
write_sfm(7,fen);
write_com(0x80+0x40+7);
}
if(s1num==3)
{
shi--;
if(shi==-1)
shi=23;
write_sfm(4,shi);
write_com(0x80+0x40+4);
}
}
}
}
}
voidmain()
{
jj=0;
init();
while
(1)
{
keyscan();
}
}
voidtimer0()interrupt1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
count++;
if(count==18)
{
count=0;
miao++;
if(miao==60)
{
miao=0;
fen++;
if(fen==60)
{
fen=0;
shi++;
if(shi==24)
{
shi=0;
}
write_sfm(4,shi);
}
write_sfm(7,fen);
}
write_sfm(10,miao);
}
}
5设计总结
单片机作为我们主要的专业课程之一,我觉得单片机课程设计很有必要,而且很有意义。
但当拿到题目时,确实不知道怎么着手,有些迷茫,上网查资料,问老师,在老师的帮助下,历时两个星期,解决一个又一个的困难,终于完成任务。
在这次课程设计中,运用到了很多以前的专业知识,虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的一大收获。
另外,要做好一个课程设计,就必须做到:
在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计结束了,但是从中学到的知识会让我受益终身。
发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。
设计过程,好比是我们人类成长的历程,常有一些不如意,但毕竟这是第一次做,难免会遇到各种各样的问题。
在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,不能灵活运用。
通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。
另外,要非常感谢我的指导老师,是她指引我克服一个由一个的困难,让我学会对困难无所畏惧,以及对问题的一些很重要的思考方法。
我学会对困难无所畏惧,以及对问题的一些很重要的思考方法。
图3.1所示:
图3.1 单片机时钟的基本框图
晶振复位电路:
产生计数信号,完成时钟的运行。
输入模式键:
选择调整的位:
秒,分,时,日,月。
输入调整键:
调整相应位的时间或日期,每按一次,加一。
2.技术方案
一个完整的数字钟电路相当于一个简单的系统,每个部分都要设计。
MCS-51单片机的片内结构由八部分组成。
微型处理机(CPU),数据存储器(RAM)。
程序存贮器(ROM,EPROM),I/O口,定时器,计数器。
中断系统及特殊的功能寄存器(SFR)。
数据存储器和程序存储器的可寻址的范围是:
64K地址范围是:
0000H-----FFFFH扩展的I/O均占用存储器的地址。
4:
C语言程序
#include
#defineucharunsignedchar
#defineuintunsignedint
sbitdula=P2^6;
sbitwela=P2^7;
sbitrs=P3^5;
sbitlcden=P3^4;
sbits1=P3^0;
sbits2=P3^1;
sbits3=P3^2;
sbitrd=P3^7;
sbitjj=P3^6;
ucharcount,s1num;
charmiao,shi,fen;
ucharcodetable[]="2013:
12:
31";
ucharcodetable1[]="00:
00:
00";
voiddelay(uintz)
{
uintx,y;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 电子钟 课程设计