当前位置:文档之家› 单片机电子时钟论文

单片机电子时钟论文

CHANGCHUN INSTITUTE OF TECHNOLOGY 单片机原理及应用课程设计论文设计题目:单片机电子时钟设计学生姓名:别申浩戴秀锋王铸学院名称:电气于信息工程学院专业名称:电子信息工程班级名称:电子1142学号:10 16 33完成时间: 2014年3月6日2014年3月6日任务分配表单片机电子时钟设计别申浩戴秀锋王铸电子1142 10 16 33摘要:本文设计以ATM89C51芯片作为硬件核心,用LCD液晶显示屏为显示系统,使用单片机自身计时系统,完成一个简易的电子时钟系统。

该系统具有订正时间,秒表,闹钟等功能。

设计过程中运用了protues,keil软件进行了画图仿真及系统程序的编写,还运用了protel软件进行了原理图及pcb图的设计绘制。

本次实习通过对电子时钟的设计,熟悉了各种软件的运用,加深了对单片机语言的理解,学习了对LCD液晶显示设备的控制,对以后的学习工作积累了宝贵经验。

关键词:A T89C51单片机LM016L显示器电子时钟0 引言当你每天被床边的电子时钟叫醒的时候,你便开始了与单片机相处的一天。

首先,你需要用电热水器来洗个澡;然后,你需要用电饭煲来填饱肚子,你或许还需要用洗衣机来清理换下来的脏衣服。

当一切都准备好了,你需要一辆汽车载你去上班。

当你工作的时候还需要用到手机去联系你的大客户。

终于,到了下班时间,需要放松一下的你又打开了电视机……看,这些与我们生活息息相关的电器,他们都有一个同一样的心脏—单片机。

而本次设计就是以我们最亲密的朋友51系列单片机为基础的电子时钟设计。

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

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。

在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法。

本文主要介绍用单片机内部的定时/计数器来实现电子时钟的设计,本设计由单片机AT89C51芯片和LCD液晶显示屏为核心,辅以必要的电路,构成了一个单片机电子时钟。

1 系统方案我们的设计思路分为两大块:在主程序中需要完成时间显示、计时输出判断功能。

中断服务程序中完成日期、时间切换功能,秒钟复位功能,闹钟等功能。

在主程序中需要考虑两个问题。

1.显示器的选择:可以选择用六个7段LED数码管为显示系统,也可以使用LCD取代LED作为显示设备,对于两种不同的显示系统,需要使用不同的程序语言来实现功能。

2.时钟如何计时:可以使用单片机自身计时系统,也可以使用专门的计时芯片。

在中断服务程序中,根据前面选择的硬件,来编写相关程序实现各种功能。

综上所述,我们有以下几种设计方案。

方案一:采用ATM89C51芯片作为硬件核心,用六个7段LED数码管为显示系统,使用单片机自身计时系统。

方案二:采用ATM89C51芯片作为硬件核心,用LCD液晶显示屏为显示系统,使用单片机自身计时系统。

方案三:采用ATM89C51芯片作为硬件核心,用六个7段LED数码管为显示系统,使用时钟芯片作为计时系统。

方案四:采用ATM89C51芯片作为硬件核心,用LCD液晶显示屏为显示系统,使用时钟芯片作为计时系统。

这四个方案中,方案一为最简单的时钟设计系统,采用六位LED数码管作为时钟的时,分,秒来显示。

优点是:控制简单,节省单片机资源;缺点也很明显,LED只能显示数字,因而在扩展功能上可以发挥的空间较小。

使用单片机自身计时系统,优点是可以减少芯片使用,降低成本;缺点是计时不够精确。

因此整个系统电路简单,功能较少。

根据我们自身能力,希望可以拓展更多的功能,因此不选方案一。

方案四是四个方案中最复杂的方案,采用LCD显示,可以显示数字,字母,汉字等,因此被广泛应用于电子时钟系统中。

因此,其缺点为控制系统较为复杂,优点是显示更加灵活,有较大的发挥空间。

优点是计时精确,功能多样。

缺点是会使电路变得复杂。

由于我们对于时钟芯片并不太了解,为减少工作量,以及简化后续PCB设计考虑,我们不选方案四。

对于方案二与方案三,一个是舍弃了计时精准的时钟芯片,一个是舍弃了显示多样的LCD。

由于我们此次的设计性质是一次实习,旨在检验我们运用单片机来实现各种功能的能力,时间的准确性并不那么重要,因此我们选择了工作量适中,显示灵活多样的方案二作为此次的设计方案。

2 系统硬件电路如图所示,本文设计是通过单片机自身计时,通过外部中断按键来控制修改时间,秒表,闹钟等功能。

各部分硬件电路图及其功能如下。

○1单片机:AT89C51单片机引脚功能及工作原理如下。

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口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

○2显示系统显示系统主要由LCD显示器构成,本文设计选择了LM016L显示器作为显示器件,外观如图。

LM016L液晶模块采用HD44780控制器,hd44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。

IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码,CGROM由8位字符码生成5*7点阵字符160中和5*10点阵字符32种.8位字符编码和字符的对应关系,可以查看参考文献(30)中的表4. CGRAM是为用户编写特殊字符留用的,它的容量仅64字节,可以自定义8个5*7点阵字符或者4个5*10点阵字符,AC可以存储DDRAM和CGRAM的地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或CGRAM但愿,LM016L 液晶模块的引脚功能如下表所示:引脚符号功能说明1 VSS 一般接地2 VDD 接电源(+5V)3 V0 液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。

4 RS RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。

5 R/W R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。

6 E E(或EN)端为使能(enable)端,下降沿使能。

7 DB0 底4位三态、双向数据总线0位(最低位)8 DB1 底4位三态、双向数据总线1位9 DB2 底4位三态、双向数据总线2位10 DB3 底4位三态、双向数据总线3位11 DB4 高4位三态、双向数据总线4位12 DB5 高4位三态、双向数据总线5位13 DB6 高4位三态、双向数据总线6位14 DB7 高4位三态、双向数据总线7位(最高位)(也是busy flang)○3闹钟系统闹钟系统结构较为简单,只需要等待单片机定时中断返回,来控制其报警即可。

主要结构是报警器,辅以必要电路构成了电子时钟的闹钟系统。

3 系统软件设计(包括主流程图及各部分功能模块流程图,部分需要讲解的模块源码)4 系统调试与结果分析(包括调试过程中遇到的问题及解决方法,最终实现的结果,要有各种运行结果的仿真截图)经过一系列的查找资料和总结的过程,我们的这次实习也来到了调试和分析这一步。

在这个过程中我们遇到的主要问题有以下几个:1.单片机工作过慢,按键频率过快时会出现未知的乱码现象。

2.闹钟声音太小在电脑上仿真基本很难被发觉。

3.时钟功能选择键在初始状态下功能冗余不够简洁。

解决方案:1.对于第一个问题,主要还是程序体庞大单片机芯片效率跟不上在按键控制时应控制频率不能过快,这样可以减少这个问题的发生。

相关主题