电子钟论文.docx
《电子钟论文.docx》由会员分享,可在线阅读,更多相关《电子钟论文.docx(24页珍藏版)》请在冰豆网上搜索。
电子钟论文
编号:
单片机系统
实训(论文)说明书
题目:
电子钟
院(系):
信息与通信学院
专业:
电子信息工程
学生姓名:
学号:
指导教师:
2012年01月02日
摘要
本设计是电子钟系统,不仅能实现系统要求的功能:
(1)能显示年,月,日,时,分,秒,
(2)能设定和修改日期时间以及定时,(3)定时时间到后能发出嘀嘀声;而且还有附加功能,即还能设定和修改当前所显示的时间。
本设计采用单片机AT89C51作为核心元件,12MHZ晶振,由P0口输出所要显示的字形段码,由P2口输出字位信号。
在其基础上扩展外围芯片与电路,附加时钟电路及LED电路。
LED采用共阳极接法,高电平有效选中相应的LED。
单片机具有集成度高、功能强、通用性好、特别是它能耗低、价格便宜、可靠性高、抗干扰能力强和使用方便等独特的优点,所以单片机现在广泛的应用到家用电器、机电产品、儿童玩具、机器人、办公自动化产品等领域。
为了进一步的熟悉并掌握单片机的应用及开发,认真的做好此次课程设计非常必要。
一个单片机的定时闹钟系统离不开软件和硬件,硬件是软件的依托,软件是硬件的内核。
软硬件都设计好之后在Proteus环境下仿真,看它们是否配套,只有在Proteus下仿真没有出现问题才能说明设计的定时闹钟成功了。
本次设计严格按照上面的步骤,经过多次的修改、完善后终于可以在Proteus下很好的运行,设计成功。
通过这次设计让我更深入了解单片机基本电路、如何控制和定时器和中断编程的基本方法,从而锻炼了我学习、设计和开发软、硬件的能力。
关键词:
ARMAT89C51;LED数码管显示;细分步;74LS573驱动
Abstract
Thedesignofelectronicclocksystem,cannotonlyrealizethefunctionofsystemrequirements:
(1)toshowtheyear,month,day,time,minutes,seconds,
(2)tosetupandmodifydatetimeandtiming,(3)timetotimecanbebleepedaway;andthereareadditionalfunctions,whichcansetupandmodifythedisplaytime.
ThisdesignusesasinglechipAT89C51asthecorecomponent,12MHZcrystal,bytheoutputportP0todisplaythesegmentcode,theP2outputbitssignal.Basedontheextendedperipheralchipandthecircuit,theadditionalclockcircuitandLEDcircuit.LEDusinganodeconnection,higheffectivetoselecttheappropriateLED.
SCMhashighintegration,strongfunction,goodversatility,especiallyitslowenergyconsumption,lowprice,highreliability,stronganti-jammingabilityandconvenientuseandotheruniqueadvantages,soMCUisnowwidelyappliedtohouseholdappliances,mechanicalandelectricalproducts,children'stoys,robots,officeautomationproductsandotherfields.Inordertofurtherunderstandingandmasteryofitsapplicationsanddevelopment,conscientiouslydoagoodjobofthecurriculumdesignisverynecessary.
Asinglechiptimingalarmsystemisinseparablefromthehardwareandthesoftware,hardwaresoftwarebasedonthehardware,softwareisthekernel.HardwareandsoftwarearedesignedintheProteussimulationenvironment,toseewhethertheysupport,onlyintheProteussimulationundernoproblemstoillustratethedesignofthetimingalarmclockwassuccessful.Thisdesignstrictlyinaccordancewiththeabovesteps,afterrepeatedmodifications,perfectafterfinallyundertheProteuscanrunwell,designsuccess.
Letmethroughthisdesignmorein-depthunderstandingofSCMbasiccircuit,howtocontrolandtimerinterruptprogrammingandthebasicmethod,thustheexerciseofmystudy,designanddevelopmentofsoftware,theabilityofthehardware.
Keywords:
ARMAT89C51;LEDdigitaltubedisplay;subdivisionstep;74LS573driver
目录
1.概述5
1.1单片机简介5
1.2本设计简介6
2.系统总体方案及硬件设计6
2.1本设计总体方案6
2.2单片机AT89C51简介7
2.3数码管显示电路10
2.4本设计输入输出电路12
3软件设计13
3.1系统软件设计说明13
3.2LED的编程思想13
3.3程序调试13
3.4程序流程图14
4Proteus软件仿真15
4.1仿真步骤15
4.2仿真过程中出现的错误及解决措施15
4.3仿真结果15
5课程设计体会20
参考文献22
附录系统原理图23
1.概述
1.1单片机简介
◆单片机基本概念
单片机是一种特殊的计算机,它是在一块半导体上集成了CPU、存储器、以及输入输出接口电路,这种芯片被称为单片微型计算机,简称单片机。
由于单片机的集成度高、功能强、通用性好,贴别是他具有体积小、重量轻、能耗低、价格便宜、可靠性高、抗干扰能力强和使用方便等特点,使的单片机迅速得到了推广,目前已成为测量控制应用系统中的优选机种和新电子产品的关键部件。
◆单片机产生与发展
单片机是应工业测控系统数字化、智能化的迫切要求提出的。
超大规模集成电路的出现,通用CPU及其外围电路技术的发展成熟,伟大偏激的诞生和发展提供了可能。
单片机的发展完全从工业测控对象、环境、接口等特点出发,不断增强其控制功能,保证在工业测控环境中的可靠性,器接口界面也是按照能灵活、方便的构成工业测控用计算机系统而设计的。
它的出现标志着计算机技术在工业领域中的应用开始走向完善与成熟。
8位单片机从1976年开始至今,其技术已有了巨大的发展,目前仍是单片机的主流机型。
其发展阶段大致分为单片机探索阶段、单片机完善阶段、MCU形成阶段和MCU完善阶段。
◆单片机的发展方向
(1)主流机型发展趋势
(2)全盘CMOS化趋势
(3)RISC体系结构的大发展
(4)大力发展专用性单片机
(5)单片机中的软件嵌入
◆单片机的应用领域
(一)单机应用
(1)智能产品
(2)智能仪表
(3)测控系统
(4)智能接口
(二)多机应用
(1)多功能弥散系统
(2)并行多机控制系统
(3)局部网络系统
◆单片机分类
(1)按应用领域
(2)按通用性
(3)按总线结构分
(4)按位数分类
1.2本设计简介
课程设计的目的和意义
课程设计是在学完《单片机原理及接口技术》课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现,从而加深对单片机软硬知识的理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下基础.
课程设计的要求
1)八位数码管动态显示
2)实现年、月、日、时、分、秒的显示
3)能交替显示时间和日期或自定义选择显示
4)时间和日期都可以设定和调整
5)实现闹铃设置和闹铃功能
6)设置时间和日期时,动态扫描不受到影响
7)只采用3个独立按键实现所有功能
课程设计的内容
这一次课程设计,所设计的是一个电子钟,能显示年-月-日-时-分-秒,能够设计定日期时间,修改定日期时间,并且定时时间到了能发出嘀嘀声。
设计的部分分为软件及硬件,软件部分写出闹钟的工作方式以及它是如何工作的,而硬件部分是软件的载体,画出正确的电路图然后在软件的控制下才能使设计的定时闹钟正常工作。
2.系统总体方案及硬件设计
2.1本设计总体方案
本设计使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。
本系统采用单片机AT89C51作为本设计的核心元件,利用7段共阳LED作为显示器件。
接入阳LED显示器,可显示年,月,日,时,分钟,秒,单片机外围接有定时嘀嘀系统,定时时间到,扬声器发出嘀嘀声,提示预先设定时间电器的起停时间到,从而控制电器的起停。
电路由下列部分组成:
时钟电路、复位电路、控制电路、LED显示,闹铃电路,芯片选用AT89C51单片机。
2.2单片机AT89C51简介
AT89C51是一个低电压,高性能CMOS型8位单片机,片内含4KB的可反复擦写的Flash只读程序存储器(ROM)和128B的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51为用户提供了许多高性价比应用场合,可灵活应用于各种控制领域。
AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
主要特性:
·与MCS-51兼容
·4K字节可编程闪烁存储器
·寿命:
1000写/擦循环
·数据保留时间:
10年
·全静态工作:
0Hz-24Hz
·三级程序存储器锁定
·128×8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
片内振荡器和时钟电路
引脚使用说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当
P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下所示:
管脚……备选功能
P3.0……RXD(串行输入口)
P3.1……TXD(串行输出口)
P3.2……/INT0(外部中断0)
P3.3……/INT1(外部中断1)
P3.4……T0(记时器0外部输入)
P3.5……T1(记时器1外部输入)
P3.6……/WR(外部数据存储器写选通)
P3.7……/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
ST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度
图2-1
2.3数码管显示电路
单片机中通常使用7段LED,LED是发光二极管显示器的缩写。
LED显示器由于结构简单,价格便宜,体积小,亮度高,电压低,可靠性高,寿命长,响应速度快,颜色鲜艳,配置灵活,与单片机接口方便而得到广泛应用。
LED显示器是由若干个发光二极管组成显示字段的显示部件,当发光二极管导通时,相应的一个点或一个笔划发光,控制不同组合的二极管导通,就能显示出各种字符。
LED两个4段数码显示器由8个发光二极管组成显示字符,根据内部发光二极管的连接形式不同,LED有共阳极和共阳极两种,本系统采用共阳极。
LED的结构及连接如图2-2所示
图2-2
LED显示原理
当选用共阴极的LED时,所有发光二极管阳极连在一起电源,当某个发光二极管的阴极加入高电平时,对应的二极管点亮。
因此要显示某字形就应使此字形的相应段的二极管点亮,实际上就是送一个用不同电平组合代表的数据字来控制LED的显示,此数据为字符的段码或称为字型码。
字型码与LED显示器各段的关系为
D7
D6
D5
D4
D3
D2
D1
D0
dp
g
f
e
d
c
b
a
表2-1
dp为小数点,字符0、1、2……F的段码如表2-2所示
字符
段码(共阳)
段码(共阳)
0
3FH
COH
1
06H
F9H
2
5BH
A4H
3
4FH
B0H
4
66H
99H
5
6DH
92H
6
7DH
82H
7
07H
F8H
8
7FH
80H
9
6FH
90H
A
77H
88H
B
7CH
83H
C
39H
C6H
D
5EH
A1H
E
79H
86H
F
71H
8EH
-
40H
BFH
.
80H
7FH
熄灭
00H
FFH
表2-2
下图是本系统采用的两个共阴极LED四段数码显示器:
图2-3
2.4本设计输入输出电路
该系统输入电路采用的是P1口接上按键,其图如下:
图2-4
系统的输出电路采用的是P0口和P2口,喇叭口采用P3.7口。
其电路如下图:
图2-5
3软件设计
3.1系统软件设计说明
该系统软件程序主要有主程序模块,定时中断服务程序,中断等待服务程序,键盘服务程序,显示子程序服务程序等六大模块组成。
在AT89C51外围的一个17管脚即P3.7管口上加扬声器,通过软件与硬件的结合可实现定时嘀嘀功能。
图中按键从上往下设定为S1,S2,S3,S4,S1与p1.0相连,S2与p1.1相连,S3与p1.2相连,S4与p1.3相连。
当需要设定当前时间时,按一下S4键,进入时间,日期,闹铃选择状态,按一下S3,进行前一步选择的调整;接按一下S2减一,按下S1加1。
调好相对项后按S3退出设定状态。
3.2LED的编程思想
本设计使用LED数码管显示,LED显示器具有耗电少、成本低、配置简单灵活、安装方便、耐震动、使用寿命长等优点,因而应用广泛。
该方案控制最简单,但是只能显示有限的符号和数字,对于设计中复杂的显示功能显然不能胜任。
虽然点阵液晶可以显示多种字符和图形,拥有友好的人机界面及强大的显示功能。
特别适用于智能控制的可编程人性化显示。
但是考虑到本设计的实际要求,使用数码管显示就足以达到要求了。
两个4段LED由发光二极管按日字排开,所有发光二极管的阳极连在一起成共阳极,阳极连在一块称共阳极接法。
当采用芯片驱动时不需要加限流电阻,其他情况下一般应外接限流电阻。
动态显示电路有显示块,字形码封锁驱动器,字位锁存驱动器三部分组成。
3.3程序调试
1)将程序输入到单片机的环境下;
2)用单步运行和断点运行方式调试程序;
3)调试T0中断服务程序,首先在记数单元中预置数,调试秒单元向分单元进位及分单元向时单元的进位,最后将T0中断服务程序统调通过;
4)在相对应年,月,日,时,分,秒,闹铃,单元中预置数,调试显示程序;
5)调试主程序,使闹钟走时系统工作正常。
3.4程序流程图
本设计程序流程图如3-1所示:
图3-1
4Proteus软件仿真
4.1仿真步骤
第一步:
用伟褔软件对程序进行编译,编译通过后,会自动生成HEX文件。
第二步:
在Proteus的元件库中找到AT89C51以及相应的元件,按照硬件设计中的说明把各部件连接起来组成一个定时闹钟的硬件系统。
第三步:
把在伟福环境调试下生成的.HEX文件装入到AT89C51里,点击运行符号就可以使软硬件的配套设施在Proteus的环境下仿真实现。
第四步:
验证系统能否实现所要求的功能,并检验错误。
4.2仿真过程中出现的错误及解决措施
1)当把程序生成的.HEX文件装入到AT89C51后运行时,显示模块出现数字显示错误,但是软硬件都没有错误,经检查是它们不配套,在修改扫描显示控制字而且改变硬件布线顺序后方显示正常。
2)闹钟在定时时间到的时候没有出现嘀嘀声,但是经检查软硬件均没有出现错误,而且在这里也不会出现因为软硬件不配套而出现问题,并且把扬声器去掉换成发光二极管后,二极管可以根据要求明或者灭。
在经过反复的检查以及实验后才知道应该使接扬声器的接口输出交流信号才可以使扬声器正常工作,经过反复比较决定运用软件产生一个交流的信号才解决了这个问题,但是还没有解决声音小的问题。
3)在设计的初期把主程序设计成顺序结构,但是在运行的时候没有注意到这个问题,没有按照软件说明中的顺序操作,以至于闹钟闹时出现错误,在改变按下按键的顺序后闹钟工作正常。
4.3仿真结果
图中按键从上往下设定为S1,S2,S3,S4,S1与p1.0相连,S2与p1.1相连,S3与p1.2相连,S4与p1.3相连。
(1)设定时间日期
当需要设定当前日期时,先按下S4键,切换时间,日期,闹铃状态,切换到日期项,按一下S3,进行日期年月日的选择;按一下S2,S1,对选择的年月日加1减一调整。
如此反复来设定当前日期。
调好时间后按S3退出当前日期设定状态。
开始仿真时,显示如图4-1所示:
图4-1
先按S4,再按S3时,如图4-2所示:
图4-2
先按S4,再按S3,再按S2时,如图4-3所示:
图4-3
如图4-4:
设定当前日期是11年12月23日。
图4-4
(2)设定时间
当要设定定时时间时,按下S4,切换时间,日期,闹铃状态,切换到闹铃项,按一下S3,进行闹铃时分秒选择;按一下S2,S1,对选择时分秒加1减一调整。
如此反复来设定当前闹铃。
调好时间后按S3退出当前闹铃设定状态。
开始仿真时,按上方法进行闹钟设定,如图4-5所示:
图4-5
按S3后,如图4-6所示:
图4-6
按S2,S1后,如图4-7所示:
图4-7
如图4-8所示图:
设定定时时间为08:
08:
08
.
图4-8
图4-9是达到电子钟的仿真图:
图4-9
(1)当到达时间时,喇叭得电发出嘀嘀声,如图4-10所示.
图4-10
(2)扬声器发出嘀嘀声,且扬声器两端同时变为高电平,而在图4-8中扬声器一端为高电平,另一端为低电平。
图4-11扬声器导通状态
图4-12扬声器截止状态
5课程设计体会
单片机是一门应用性很强的学科,课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程,为自己今后从事与单片机控制系统有关的工作打下了基础。
虽然在做课程设计以前已经系统的把单片机课本认真的学习了一下,但是在刚开始时还是有点一头雾水,不知道该从哪里下手。
令人欣慰的是经过几周的学习,虽然过程很艰辛,问