基于单片机的数字钟的设计.docx
《基于单片机的数字钟的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字钟的设计.docx(36页珍藏版)》请在冰豆网上搜索。
![基于单片机的数字钟的设计.docx](https://file1.bdocx.com/fileroot1/2023-4/17/2c270cee-cd61-40f0-a697-ebe3a923f3d9/2c270cee-cd61-40f0-a697-ebe3a923f3d91.gif)
基于单片机的数字钟的设计
2007~2008学年第2学期
毕业设计(论文)
课题 基于单片机的数字钟的设计
姓名 臧晓亮
系部机电工程系专业机电一体化技术
班级05机电
(1)班学号056210110
指导教师 徐 良 雄
武汉交通职业学院教务处制
武汉交通职业学院
毕业论文(设计)原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
臧晓亮
2008年4月10日
目录
摘要I
关键词I
1前言1
1.1单片机简介1
1.1.1分类1
1.1.2发展状况1
1.1.3应用前景4
1.2LED数码管简介4
1.3译码器简介5
2系统设计方案6
2.1单片机的基本原理6
2.2单片机型号的选择7
2.3译码器原理7
2.4硬件电路图及其原理说明9
3程序详细设计11
3.1程序流程图11
3.2程序清单13
3.3硬件电路元件明细表19
3.4调试结果说明19
4小结20
参考文献21
致 谢…………………………………………………………………………………………………………22
基于单片机的数字时钟设计
摘 要:
单片机数字时钟是以单片机为核心,在它的基础上设计出来的数字时钟数字钟.,在日常生活中最常见,应用也最广泛。
本论文的数字钟,以80C51单片机为核心,配备LED显示模块、时钟芯片、等功能模块。
数字钟采用12/24小时制方式显示时间,定时信息等功能。
文章的核心主要从硬件设计和软件编程两个大的方面。
硬件电路设计主要包括中央处理单元电路、时钟电路、人机接口电路、信号处理电路、执行电路等几部分组成,为了用电池作电源,采用低功耗的CMOS芯片及LED显示器.软件用汇编语言来实现。
其中本论文最大特点就是采用拉蜂鸣器来做提醒,使人不仅仅是通过视觉来感受单片机数字时钟带来的方便!
关键词:
单片机;LED显示器;数字钟;汇编语言;
1前言
1.1单片机简介
在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。
单片机小的系统结构几乎是所有具有可编程硬件的一个缩影,可谓是“麻雀虽小,肝胆俱全”,单片机的学习和研究是对微机系统学习和研究的简捷途径。
1.1.1分类
从市场上看到的AVR系列和PIC系列单片机是怎么回事?
以便让大家对单片机的发展有一个较全面的认识。
在没有学习单片机之前,这是一个令很多初学者非常困惑的问题,这么多的单片机我该先学哪一种呢?
AVR系列单片机也是ATMEL公司生产的一种8位单片机,它采用的是一种叫RISC(精简指令集单片机)的结构,所以它的技术和51系列有所不同,开发设备也和51系列是不通用的,它的一条指令的运行速度可以达到纳秒级(即每秒1000000000次),是8位单片机中的高端产品。
由于它的出色性能,目前应用范围越来越广,大有取代51系列的趋势,所以学完了51系列的,看来必须学会AVR的才行,可叹知识爆炸,人生苦短。
说完了AVR的,再来说说另一种--PIC系列单片机,它是美国MICROCHIP公司,唉,又是老美,叫微芯公司的生产的另一种8位单片机,它采用的也是RISC的指令集,它的指令系统和开发工具与51系列更是不同,但由于它的低价格和出色性能,目前国内使用的人越来越多,国内也有很多的公司在推广它,不过它的影响力远没有51系列的大,所以作为初学者,51系列当然(不,绝对)是首选。
以上几种只是比较多见的系列,其实世界上还有许多的公司生产各种各样的单片机,比如:
MOTOROLA的MC68H系列(老牌的单片机),TI的MSP430C系列(极低功耗的单片机),还有日本的TOSHIBA,日立的HITACH,德国的西门子SIEMENS等等,它们都有各自的结构体系,并不与51系列兼容。
1.1.2发展状况
计算机系统的发展已明显地朝三个方向发展,这三个方向就是:
巨型化,单片化,网络化。
单片机用以解决复杂系统计算和高速数据处理的仍然是巨型机在起作用,故而,巨型机在目前在朝高速及处理能力的方向努力。
单片机在出现时,Intel公司就给其单片机取名为嵌入式微控制器(embeddedmicrocontroller)。
单片机的最明显的优势,就是可以嵌入到各种仪器、设备中。
这一点是巨型机和网络不可能做到的。
在本文,介绍单片机的最新技术进步,包括数字单片机的工艺及技术,模糊单片机的工艺及技术,单片机的可靠性技术,以及以单片机为核心的嵌入式系统。
数字单片机的技术发展数字单片机的技术进步反映在内部结构、功率消耗、外部电压等级以及制造工艺上。
在这几方面,较为典型地说明了数字单片机的水平。
在目前,用户对单片机的需要越来越多,但是,要求也越来越高。
下面分别就这四个方面说明单片机的技术进步状况。
1、内部结构的进步
单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:
定时器,比较器,A/D转换器,D/A转换器,串行通信接口,Watchdog电路,LCD控制器等。
有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块CAN。
例如,Infineon公司的C505C,C515C,C167CR,C167CS-32FM,81C90;Motorola公司的68HC08AZ系列等。
特别是在单片机C167CS-32FM中,内部还含有2个CAN。
因此,这类单片机十分容易构成网络。
特别是在控制,系统较为复杂时,构成一个控制网络十分有用。
为了能在变频控制中方便使用单片机,形成最具经济效益的嵌入式控制系统。
有的单片机内部设置了专门用于变频控制的脉宽调制控制电路,这些单片机有Fujitsu公司的MB89850系列、MB89860系列;Motorola公司的MC68HC08MR16、MR24等。
在这些单片机中,脉宽调制电路有6个通道输出,可产生三相脉宽调制交流电压,并内部含死区控制等功能。
特别引人注目的是:
现在有的单片机已采用所谓的三核(TrCore)结构。
这是一种建立在系统级芯片(Systemonachip)概念上的结构。
这种单片机由三个核组成:
一个是微控制器和DSP核,一个是数据和程序存储器核,最后一个是外围专用集成电路(ASIC)。
这种单片机的最大特点在于把DSP和微控制器同时做在一个片上。
虽然从结构定义上讲,DSP是单片机的一种类型,但其作用主要反映在高速计算和特殊处理如快速傅立叶变换等上面。
把它和传统单片机结合集成大大提高了单片机的功能。
这是目前单片机最大的进步之一。
这种单片机最典型的有Infineon公司的TC10GP;Hitachi公司的SH7410,SH7612等。
这些单片机都是高档单片机,MCU都是32位的,而DSP采用16或32位结构,工作频率一般在60MHz以上。
2、功耗、封装及电源电压的进步
现在新的单片机的功耗越来越小,特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式。
Philips公司的单片机P87LPC762是一个很典型的例子,在空闲时,其功耗为1.5mA,而在节电方式中,其功耗只有0.5mA。
而在功耗上最令人惊叹的是TI公司的单片机MSP430系列,它是一个16位的系列,有超低功耗工作方式。
它的低功耗方式有LPM1、LPM3、LPM4三种。
当电源为3V时,如果工作于LMP1方式,即使外围电路处于活动,由于CPU不活动,振荡器处于1~4MHz,这时功耗只有50?
A。
在LPM3时,振荡器处于32kHz,这时功耗只有1.3?
A。
在LPM4时,CPU、外围及振荡器32kHz都不活动,则功耗只有0.1?
A。
现在单片机的封装水平已大大提高,随着贴片工艺的出现,单片机也大量采用了各种合符贴片工艺的封装方式出现,以大量减少体积。
在这种形势中,Microchip公司推出的8引脚的单片机特别引人注目。
这是PIC12CXXX系列。
它含有0.5~2K程序存储器,25~128字节数据存储器,6个I/O端口以及一个定时器,有的还含4道A/D,完全可以满足一些低档系统的应用。
扩大电源电压范围以及在较低电压下仍然能工作是今天单片机发展的目标之一。
目前,一般单片机都可以在3.3~5.5V的条件下工作。
而一些厂家,则生产出可以在2.2~6V的条件下工作的单片机。
这些单片机有Fujitsu公司的MB89191~89195,MB89121~125A,MB89130系列等,应该说该公司的F2MC-8L系列单片机绝大多数都满足2.2~6V的工作电压条件。
而TI公司的MSP430X11X系列的工作电压也是低达2.2V的。
3、工艺上的进步
现在的单片机基本上采用CMOS技术,但已经大多数采用了0.6?
m以上的光刻工艺,有个别的公司,如Motorola公司则已采用0.35?
m甚至是0.25?
m技术。
这些技术的进步大大地提高了单片机的内部密度和可靠性。
以单片机为核心的嵌入式系统单片机的另外一个名称就是嵌入式微控制器,原因在于它可以嵌入到任何微型或小型仪器或设备中。
目前,把单片机嵌入式系统和Internet连接已是一种趋势。
但是,Internet一向是一种采用肥服务器,瘦用户机的技术。
这种技术在互联上存储及访问大量数据是合适的,但对于控制嵌入式器件就成了"杀鸡用牛刀"了。
要实现嵌入式设备和Internet连接,就需要把传统的Internet理论和嵌入式设备的实践都颠倒过来。
为了使复杂的或简单的嵌入式设备,例如单片机控制的机床、单片机控制的门锁,能切实可行地和Internet连接,就要求专门为嵌入式微控制器设备设计网络服务器,使嵌入式设备可以和Internet相连,并通过标准网络浏览器进行过程控制。
目前,为了把单片机为核心的嵌入式系统和Internet相连,已有多家公司在进行这方面的较多研究。
这方面较为典型的有emWare公司和TASKING公司。
EmWare公司提出嵌入式系统入网的方案--EMIT技术。
这个技术包括三个主要部分:
即emMicro,emGateway和网络浏览器。
其中,emMicro是嵌入设备中的一个只占内存容量1K字节的极小的网络服务器;emGateway作为一个功能较强的用户或服务器,它用于实现对多个嵌入式设备的管理,还有标准的Internet通信接入以及网络浏览器的支持。
网络浏览器使用emObjicts进行显示和嵌入式设备之间的数据传输。
如果嵌入式设备的资源足够,则emMicro和emGateway可以同时装入嵌入式设备中,实现Internet的直接接入。
否则,将要求emGateway和网络浏览器相互配合。
EmWare的EMIT软件技术使用标准的Internet协议对8位和16位嵌入式设备进行管理,但比传统上的开销小得多。
目前,单片机应用中提出了一个新的问题:
这就是如何使8位、16位单片机控制的产品,也即嵌入式产品或设备能实现和互联网互连?
TASKING公司目前正在为解决这个问题提供了途径。
该公司已把emWare的EMIT软件包和有关的软件配套集成,形成一个集成开发环境,向用户提供开发方便。
嵌入互联网联盟ETI(embedtheInternetConsortium)正在紧密合作,共同开发嵌入式Internet的解决方案。
在不久将会有成果公布。
单片机应用的可靠性技术发展在单片机应用中,可靠性是首要因素为了扩大单片机的应用范围和领域,提高单片机自身的可靠性是一种有效方法。
近年来,单片机的生产厂家在单片机设计上采用了各种提高可靠性的新技术,这些新技术表现在如下几点:
1、EFT(EllectricalFastTransient)技术
EFT技术是一种抗干扰技术,它是指在振荡电路的正弦信号受到外界干扰时,其波形上会迭加各种毛刺信号,如果使用施密特电路对其整形,则毛刺会成为触发信号干扰正常的时钟,在交替使用施密特电路和RC滤波电路时,就可以消除这些毛否则令其作用失效,从而保证系统的时钟信号正常工作。
这样,就提高了单片机工作的可靠性。
Motorola公司的MC68HC08系列单片机就采用了这种技术。
2、低噪声布线技术及驱动技术
在传统的单片机中,电源及地线是在集成电路外壳的对称引脚上,一般是在左上、右下或右上、左下的两对对称点上。
这样,就使电源噪声穿过整块芯片,对单片机的内部电路造成干扰。
现在,很多单片机都把地和电源引脚安排在两条相邻的引脚上。
这样,不仅降低了穿过整个芯片的电流,另外还在印制电路板上容易布置去耦电容,从而降低系统的噪声。
现在为了适应各种应用的需要,很多单片机的输出能力都有了很大提高,Motorola公司的单片机I/O口的灌拉电流可达8mA以上,而Microchip公司的单片机可达25mA。
其它公司:
AMD,Fujitsu,NEC,Infineon,Hitachi,Ateml,Tosbiba等基本上可达8~20mA的水平。
这些电流较大的驱动电路集成到芯片内部在工作时带来了各种噪声,为了减少这种影响,现在单片机采用多个小管子并联等效一个大管子的方法,并在每个小管子的输出端串上不同等效阻值的电阻,以降低di/dt,这也就是所谓"跳变沿软化技术",从而消除大电流瞬变时产生的噪声。
3、采用低频时钟
高频外时钟是噪声源之一,不仅能对单片机应用系统产生干扰,还会对外界电路产生干扰,令电磁兼容性不能满足要求。
对于要求可靠性较高的系统,低频外时钟有利于降低系统的噪声。
在一些单片机中采用内部琐相环技术,则在外部时钟较低时,也能产生较高的内部总线速度,从而保证了速度又降低了噪声。
Motorola公司的MC68HC08系列及其16/32位单片机就采用了这种技术以提高可靠性。
结束语:
单片机在目前的发展形势下,表现出几大趋势:
·可靠性及应用越来越水平高和互联网连接已是一种明显的走向。
·所集成的部件越来越多;NS(美国国家半导体)公司的单片机已把语音、图象部件也集成到单片机中,也就是说,单片机的意义只是在于单片集成电路,而不在于其功能了;如果从功能上讲它可以讲是万用机。
原因是其内部已集成上各种应用电路。
·功耗越来越低和模拟电路结合越来越多。
随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步,最终人们可能发现:
单片机与微机系统之间的距离越来越小,甚至难以辨认。
1.1.3应用前景
观察之前几年以来各家厂商的销售地区比重,可以发现中国大陆市场比重逐渐提升,台湾与北美市场则逐渐衰退,主要原因在于多项产品制造基地转移至大陆,MCU在大陆的需求也随之提升。
销货至大陆的MCU产品,多应用于电话、CallerID、玩具与LCD等产品,预计在未来,销货至大陆的比重仍将持续增加。
在中国产品应用领域可分为五大项目,包括电脑周边(高速Modem、DSC、NB中的电源管理等)、通讯产业、消费性产品(家电、冷气等)、车用市场(定速器、控制器、防盗器)及工业上的应用。
有部份场家将特别瞄准消费性产品市场跨入,如Audio方式将朝多媒、MP3解决方案前进,另外在PC连结应用上,包括无线、网路及标准应用产品,都会有一系列产品推出。
另外在电源系统应用方面,在UPS(不断电系统)、ServerPower(伺服器电源)、Charger(充电器)等应用上;以及在周边应用领域方面,针对GameDevice、记忆卡、读卡机、及PenDrive(随身碟)等应用上。
逻辑IC包括微处理器(MPU)、微控制器(MCU)、特殊应用IC(ASIC)、可程式逻辑元件(PLD)以及一般的标准应用IC(ASSP)等,不同的逻辑IC有其发展方向,而MCU产品则朝向整合型产业发展。
1.2LED数码管简介
数码管由7个发光二极管组成,行成一个日字形,它门可以共阴极,也可以共阳极.通过解码电路得到的数码接通相应的发光二极而形成相应的字,这就是它的工作原理.基本的半导体数码管是由7个条状的发光二极管(LED)按图1所示排列而成的,可实现数字"0~9"及少量字符的显示。
另外为了显示小数点,增加了1个点状的发光二极管,因此数码管就由8个LED组成,我们分别把这些发光二极管命名为"a,b,c,d,e,f,g,dp",排列顺序如下图
(1):
图
(1)
数码管的分类:
数码管按各发光二极管电极的连接方式分为共阳数码管和共阴数码管两种。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。
共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
共阴数码管内部连接。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
共阳数码管内部连接。
数码管的显示方式:
数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。
①动态显示驱动:
数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。
在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。
②静态显示驱动:
静态驱动也称直流驱动。
静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。
静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:
),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。
1.3译码器简介
译码器是组合逻辑电路的一个重要的器件,其可以分为:
变量译码和显示译码两类。
变量译码一般是一种较少输入变为较多输出的器件,一般分为2n译码和8421BCD码译码两类。
显示译码主要解决二进制数显示成对应的十、或十六进制数的转换功能,一般其可分为驱动LED和驱动LCD两类。
译码是编码的逆过程,在编码时,每一种二进制代码,都赋予了特定的含义,即都表示了一个确定的信号或者对象。
把代码状态的特定含义“翻译”出来的过程叫做译码,实现译码操作的电路称为译码器。
或者说,译码器是可以将输入二进制代码的状态翻译成输出信号,以表示其原来含义的电路。
根据需要,输出信号可以是脉冲,也可以是高电平或者低电平。
CD4511是一片CMOSBCD—锁存/7段译码/驱动器,。
其中abcd为BCD码输入,a为最低位。
LT为灯测试端,加高电平时,显示器正常显示,加低电平时,显示器一直显示数码“8”,各笔段都被点亮,以检查显示器是否有故障。
BI为消隐功能端,低电平时使所有笔段均消隐,正常显示时,B1端应加高电平。
另外CD4511有拒绝伪码的特点,当输入数据越过十进制数9(1001)时,显示字形也自行消隐。
LE是锁存控制端,高电平时锁存,低电平时传输数据。
a~g是7段输出,可驱动共阴LED数码管。
另外,CD4511显示数“6”时,a段消隐;显示数“9”时,d段消隐。
2系统设计方案
2.1单片机的基本原理
单片机的基本结构:
运算器:
用于实现算术和逻辑运算。
计算机的运算和处理都在这里进行;
控制器:
是计算机的控制指挥部件,使计算机各部份能自动协调的工作;
存储器:
用于存放程序和数据(又分为内存储器和外存储器,内存储器就如我们电脑的硬盘,外存储器就如我们的U盘);
输入设备:
用于将程序和数据输入到计算机(例如我们电脑的键盘、扫描仪);
输出设备:
输出设备用于把计算机数据计算或加工的结果以用户需要的形式显示或保存(例如我们的打印机)。
注:
①通常把运算器和控制器合在一起称为中央处理器(CentralProcessingUnit),简称CPU。
②通常把外存储器、输入设备和输出设备合在一起称之为计算机的外部设备。
1中央处理器(CPU):
MCS-51的CPU能处理8位二进制数或代码;
2内部数据存储器(RAM):
8051芯片共有256个RAM单元,其中后128单元被专用寄存器占用(稍后我们详解),能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。
因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。
地址范围为00H~FFH(256B)。
是一个多用多功能数据存储器,有数据存储、通用工作寄存器、堆栈、位地址等空间。
3内部程序存储器(ROM):
在前面也已讲过,8051内部有4KB的ROM,用于存放程序、原始数据或表格。
因此称之为程序存储器,简称内部RAM。
地址范围为0000H~FFFFH(64KB)。
4定时器/计数器
8051共有2个16位的定时器/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。
定时时靠内部分频时钟频率计数实现,做计数器时,对P3.4(T0)或P3.5(T1)端口的低电平脉冲计数。
5并行I/O口
MCS-51共有4个8位的I/O口(P0、P1、P2、P3)以实现数据的输入输出。
具体功能在后面章节中将会详细论述。
6串行口
MCS-51有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。
该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为移位器使用。
RXD(P3.0)脚为接收端口,TXD(P3.1)脚为发送端口。
7中断控制系统
MCS-51单片机的中断功能较强,以满足不同控制应用的需要。
共有5个中断源,即外中断2个,定时中断2个,串行中断1个,全部中断分为高级和低级共二个优先级别。
8时钟电路
MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。
时钟电路为单片机产生时钟脉冲序列。
系统允许的晶振频率为12MHZ。
51单片机执行指令的过程单片机执行程序的过程,实际上就是执行我们所编制程序的过程。
即逐条指令的过程。
计算机每执行一条指令都可分为三个阶段进行。
即取指令-----分析指令-----执行指令。
取指令的任务是:
根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。
分析指令阶段的任务是:
将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。
如指令要求操作数,则寻找操作数地址。
计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。
一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口