




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一 选题背景现今,高精度的计时工具大多数都使用了石英晶体振荡器。由于电子钟、石英、石英钟都采用了石英技术,因此走时精度高、稳定性好、使用方便,不需要经常调校。数字式电子钟用集成电路计时时,译码代替机械式传动,用LED 显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟
2、,定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/ 计数器来实现;二是用专门的时钟芯片实现,本设计主要用单片机内部的定时/ 计数器来实现电子时钟的方法。二 方案论证为了实现LED 显示器的数字显示,可以采用静态显示法和动态显示法,由于静态显示法需要数据锁存器等硬件,接口复杂一些,考虑时钟显示只有六位,且系统没有其它复杂的处理任务,所以决定采用动态扫描法实现LED 的显示。单片机采用易购的AT89C52系列,这样单片机可具有足够的空余硬件资源实现其它的扩充功能,如考虑到要使用电池供电的话可采用LV 系列单片机。三 系统设计过程 1电路组成及工作原理1.1 时间显示功能
3、显示时、分、秒。 1.2 时间和闹钟设置功能可以通过键盘的任意设定、修改显示时间和闹钟时间。 1.3 工作原理设计原理主要利用AT89C51单片机,由单片机的P0口控制数码管的位显示, P2口控制数码管的段显示,P1口与按键相接用于时间的校正。在设计中引入两个电源电路,一个是外部电源系统产生+5V电压,用于给CPU 及显示电路提供工作电压,这是数字时钟正常工作时的总电压。另一个是备用电源,当外部电源关断时由它提供工作电压使CPU 继续工作,利用单片机的空闲方式降低功耗,数码管不显示但能使计时保持正常,不会造成掉电时计时清零的现象。针对内外两个电源情况又加入了MC34064电压检测电路,用于时实
4、判断是哪各电源在工作。整个系统工作时,秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计时器,可实现对一天24小时的累计。显示电路将“时”、“分”、“秒”计数器的输出,通过六个七段LED 显示器显示出来。校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整。2 硬件框图
5、图2-1 电子数码时钟的硬件框图2.1 单片机单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算、逻辑运算、数据传送、中断处理 的微处理器(CPU,随机存取数据存储器(RAM,只读程序存储器(ROM,输入输出电路(I/O口 ,可能还包括定时计数器,串行通信口(SCI,显示驱动电路(LCD或LED 驱动电路 ,脉宽调制电路(PWM,模拟多路转换器及A/D转换器等电路集成到一块单块芯片上,构成一个最小然而完善的计算机系统。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。单片机采用AT89C51 型,它是一种带4K 字节闪烁可编程可擦除只读存储的低电压、
6、高性能CMOS8位微处理器,该器件采用ATMEL 高密度非易失性存储器制造技术与工业标准的MCS 51指令集和输出管脚相兼容,由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,为很多嵌入控制系统提供了一种灵活性高且价廉的方案。 2.2 时间显示电路由于AT89C51 单片机I/ O 口有限,采用可编程的并行I/ O 口芯片8155 进行扩展,单片机中通常用七段LED 构成字型“8”。另外,还有一个小数点发光二极管以显示小数位。这种显示器有共阴和共阳两种,发光二极管的阳极连在一起的(公共端)称为共阳极显示器,阴极连在一起的称为共阴极显示器。一位
7、显示器由8个发光二极管组成,其中,7个发光二极管构成字型“8”的各个笔划(段) a-g,另一个小数点为dp 发光二极管。当在某段发光二极管上施加一定的正向电压时,该段笔画即亮;不加电压则暗。为了保护各段LED 不被损坏,需外加限流电阻。由于共阳极连接需加驱动,故在这里我采用的是共阴极连接。表2-1共阴极7 段LED 显示字型编码表显示字符 共阴极段选码 显示字符 共阴极段选码 0 3FH 5 6DH 1 06H 6 7DH 2 5BH 7 07H 3 4FH 8 7FH 466H 9 6FH “灭”(黑)00HLED 显示器有静态显示方式和动态显示方式两种。静态显示就是当显示器显示某个字符时,
8、相应的段恒定的导通或截止,直到显示另一个字符为止。LED 显示器工作于静态显示方式时,各位的共阴极接地;若为共阳极则接+5V电源。每位的段选线分别与一个8位锁存器的输出口相连,显示器中的各位相互独立,而且各位的显示字符一经确定,相应锁存的输出将维持不变。正因为如此,静态显示器的亮度较高。这种显示方式编程容易,管理也较简单,但占用I/O口线资源较多。因此,在显示位数较多的情况下,一般都采用动态显示方式。由于所有6位段皆由一个I/O口控制。因此,在每一瞬间6位LED 会显示相同的字符。要想每位显示不同的字符,就必须采用扫描方法流点亮各位LED ,即在每一瞬间只使某一位显示字符。在此瞬间,段选控制I
9、/O口输出相应字符段选码(字型码),而位选则控制I/O口在该显示位送入选通电平(因为LED 为共阴,故应送低电平),以保证该位显示相应字符。如此轮流,使每位分时显示该位应显示字符。 2.3 时间、闹钟设置电路由于时间的设置只需四个按键(秒、分、时、闹钟时间设置启动 ,电路简单,所以可以采用独立式按键来实现。 2.4 闹钟电路当时间与设置闹钟时间相等时,通过I/ O 口控制继电器接通闹钟实现。 2.5 复位电路采用按钮电平复位电路Vcc 图2-2 按钮电平复位电路2.6 按键工作模块按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气
10、式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键。按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大。独立式按键的典型应用如图所示。 图2-3 独立式键盘的结构独立式按键的软件常采用查询
11、式结构。先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。 2.7 电源电路部分在各种电子设备中,直流稳压电源是必不可少的组成部分,它是电子设备唯一能量来源,它的设计思路是根据我们以前学过的模电电子技术,要想得到我们所要的+5V输出电压,就需将交流220V 的电压经过变压器、整流电路、滤波电路和稳压电路四个部分。3 软件设计软件采用模块化设计,其流程图如下: 图2-4 软件设计流程图3.1 初始化参数设置包括数据堆栈区、定时/ 计数器的初始化、8155 芯片的初始化及时间和显示数据的初始化设置。包括对TM
12、OD 、TCON 以及根据定时时间对时间初值的设置。设电子钟采用中断定时100ms ,fosc = 6MHZ,采用T0 方式1 , 则X = 2 -100ms2us = 15536 = 3CB0H,则TH0 = 3CH,TL0 = 0BOH。8155 对单片机来讲是一个外部接口芯片,它与外部RAM 的操作方法一样。即:MOV DPTR , #addr16MOV A , #03HMOVX DPTR ,A3.2 键盘设置子程序这里主要介绍秒设置子程序的部分代码。KEY :JB KEY- S ,M- SET;秒设置键按下吗?如没按下则判断分设置键是否压下LCALL DELAYJB KEY- S ,M
13、- SETINCDATA S;如秒设置键压下,则秒单元加1MOV A ,DATA - SCJNE A , # 60 ,DATA - S;秒单元= 60 ,;则清0MOV DATA - S , #00HS - DIS:MOV A ,DATA - SLCALL HEX- BCD;调用BCD 码转换子程序MOV 69H,AMOV 6AH,BS - REP :LCALL DISJNB KEY- S ,S - REP ;待秒设置键释放M- SET: ;分设置键判断程序略其中KEY- S ,DATA - S 需在主程序中用伪指令定义后,才能使用。3.3 显示子程序采用动态扫描的方式和查表程序可实现实时时间
14、的显示。3.4 控制子程序作用是判断时间是否与设置的闹钟时间是否相等,如相等则开启闹钟。3.5 中断定时子程序这是电子时钟的核心,在这里主要介绍一下秒单元的定时过程,其中5FH 存放100ms 单元的数值。CLOCK :PUSH ACC ;参数入栈保护PUSH PSWCLR TR0MOV TL0,#0B0H;定时参数重新设置MOV TH0,#03CHSETB TR0INC 5FHMOV A ,5FHCJNE A ,#10,FK ;100ms 单元内容= 10 ,则秒单元加1MOV 5FH ,#00H;100ms 单元内容清0MOV A ,DATA - SADD A ,#01H;秒单元加1MOV
15、 DATA S,ACJNE A ,#60,FK ;秒单元内容 = 60,则秒单元清0MOV DATA S,#00H *(分、时单元定时过程略)FK :POP PSW;出栈,退出中断子程序POP ACCRETI3.6 系统总程序*led显示单片机定时闹铃程序*变量地址分配*Hour EQU 3AH;小时计数器的地址Minute EQU 3BH;分钟计数器的地址Second EQU 3CH;秒计数器的地址P1Val EQU 3DH;数码管位驱动值的地址ClockMode BIT 20H.0;模式(正常走时/闹时)设置寄存器地址,值为0时正常走时,为1时闹时设定AlarmOnOff BIT 20H.
16、1;闹钟开启/关闭标志,为0关闭,为1开启AlarmTimeOn BIT 20H.2;此位为1时表示闹时时间到DispHour EQU 21H; 小时显示寄存器的地址DispMinute EQU 22H; 分钟显示寄存器的地址DispSecond EQU 23H; 秒显示寄存器的地址AlarmHour EQU 2EH; 闹时小时计数器的地址AlarmMinute EQU 2FH; 闹时分钟计数器的地址k1 BIT P3.2; 闹钟设置键k2 BIT P3.3; 小时设置键k3 BIT P3.5; 分钟设置键;*程序开始*ORG 0000HAJMP MainORG 0BHAJMP TimeInt
17、ORG 0020HMain : MOV SP,#70HMOV 39H,#14HMOV Hour,#12MOV Minute,#00MOV Second,#00MOV AlarmHour,#06MOV AlarmMinute,#00CLR ClockModeCLR AlarmTimeOnSETB p1.7MOV TMOD,#00000001BMOV TH0,#03CHMOV TL0,#0B0HMOV IE, #82HSETB TR0L1: JB K1,CheckMinuteKeyLCALL DelayJB K1,CheckMinuteKeySETB ClockModeLCALL AlarmSet
18、CheckMinuteKey : JB K3,CheckHourKeyMOV A,MinuteADD A,#1MOV Minute,A ;CJNE A,#60,NotOver1MOV Minute,#0NotOver1: JNB K3,$CheckHourKey : JB K2,CheckAlarmMOV A,HourADD A,#1MOV Hour,ACJNE A,#24,NotOver2MOV Hour,#0NotOver2: JNB K2,$CheckAlarm : JNB AlarmTimeOn,ToReturnLCALL LOOPToReturn :AJMP L1*定时器Timer0
19、中断服务程序*TimeInt : MOV TH0,#03CHMOV TL0,#0B0HPUSH ACCPUSH PSWSETB RS0CLR RS1DJNZ 39H,NotoneSecondMOV 39H,#14HLCALL ClockLCALL ConvertoBufferNotoneSecond : LCALL ScanDisplayPOP PSWPOP ACCRETIScanDisplay : MOV R1,#30HMOV R4,#11111110BMOV A,R4PLAY : MOV P2,AMOV A,R1MOV DPTR,#TABMOVC A,A+DPTRMOV P0,ALCALL
20、 DelayINC R1MOV A,R4RL AJNB ACC.6,LD1MOV R4,AAJMP PLAYLD1: RETTAB : DB 0C0H,0F9H ,0A4H ,0B0H ,99H ,92H ,82H ,0F8H ,80H ,90H ,0FFH ;共阳段码表 "0""1""2" "3""4""5""6""7" "8""9""不亮"Clock : MOV A,Sec
21、ondADD A,#1MOV Second,ACJNE A,#3CH,NotOverFlowMOV Second,#0MOV A,MinuteADD A,#1MOV Minute,ACJNE A,#3CH,NotOverFlowMOV Minute,#0MOV A,HourADD A,#1MOV Hour,ACJNE A,#18H,NotOverFlowMOV Hour,#0NotOverFlow : JNB AlarmOnOff,NotAlarmMOV A,MinuteCJNE A,AlarmMinute ,NotAlarmMOV A,HourCJNE A,AlarmHour ,NotAla
22、rmSETB AlarmTimeOnNotAlarm :RETConvertoBuffer : MOV R1,#30HJB ClockMode,DispAlarmSetMOV A,Second ;MOV DispSecond,A ;MOV A,Minute ;MOV Dispminute,A ;MOV A,Hour ;MOV DispHour,AAJMP ConvertDispAlarmSet : JB AlarmOnOff,AlarmOnMOV DispSecond,#00HAJMP NextAlarmOn : MOV DispSecond,#11Next : MOV A,AlarmMinu
23、teMOV Dispminute,AMOV A,AlarmHourMOV DispHour,AConvert : MOV A,DispSecondMOV B,#10DIV ABMOV R1,BINC R1MOV R1,AINC R1MOV A,DispMinuteMOV B,#10DIV ABMOV R1,BINC R1MOV R1,AINC R1MOV A,DispHourMOV B,#10DIV ABMOV R1,BINC R1MOV R1,ARET*闹时设置子程序*AlarmSet : JNB K1,$LCALL DelayCheckArmMinuteKey : JB K3,CheckA
24、rmHourKeyCL1: SETB AlarmOnOffMOV A,AlarmMinuteADD A,#1MOV AlarmMinute,ACJNE A,#60,ArmNotOver1MOV AlarmMinute,#0ArmNotOver1: JNB K3,$CheckArmHourKey : JB K2,AlarmSetEndSETB AlarmOnOffMOV A,AlarmHourADD A,#1MOV AlarmHour,ACJNE A,#24,ArmNotOver2MOV AlarmHour,#0ArmNotOver2: JNB K2,$JB K3,AlarmSetEndACALL CL1AlarmSetEnd : JB K1,AlarmSetJNB K1,$CLR ClockModeRET*闹时服务子程序*LOOP : CLR P1.7ACALL Delay1SETB P1.7JB K1,LOOPJNB K1,$CLR AlarmOnOffCLR AlarmTimeOnAlarmReturn : RET*延时子程序*DELAY1: MOV R3,#15LOOP1: MOV R5,#90NOPLOOP2: DJNZ R5,LOOP2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 团委组织部工作实务培训
- 城市交通规划理论重点基础知识点
- 《之家汽车的历史》课件
- 薪酬管理的合理性分析计划
- 学校艺术素质教育计划
- 运动队战略合同协议
- 水箱安装协议书
- 青海中考英语试题单选题100道及答案
- 违建拆除协议书范本
- 演员离职协议书
- 民营经济高质量发展评价指标体系构建与区域差异比较研究
- 2024年江西省气象部门招聘考试真题
- 2025年一年级分批入队闯关活动
- 民事审判培训课件
- 江西省宜春昌黎实验学校2025年高考物理三模试卷含解析
- 中国南水北调集团水网发展研究有限公司招聘笔试题库2025
- 2025企业安全培训考试试题【典优】
- DB44-T 1231-2013 液化石油气储罐检修安全规程
- 综合养老服务中心建设项目可行性研究报告
- 空调经济性分析报告
- 2024年广州市花都区教育局招聘事业编制教师笔试真题
评论
0/150
提交评论