




免费预览已结束,剩余36页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录第1章 绪论11.1 本设计的目的和意义11.2 单片机发展综述21.3 电子闹钟发展趋势21.4 本课题研究内容简介3第2章 系统整体设计方案42.1 系统总体方案42.2 单片机最小系统62.3 芯片基本工作原理及其应用62.4 74HC245特性112.5 蜂鸣器特性12第3章 电子闹钟硬件电路设计133.1 主电路设计133.2 按键电路的设计143.3 复位电路的设计143.4 显示电路的设计15第4章 电子闹钟软件开发174.1 软件功能174.2 软件设计操作方法21第5章 系统的调试和性能分析225.1 系统的调试方法225.2 系统的性能分析23结 论24参考文献25致 谢26附录1 原理图和印制版图27附录2 程序28第1章 绪论1.1 本设计的目的和意义目的:设计一个51电子闹钟,该闹钟可由使用者自己设定一个时间,若想设置时间,应先按下复位键,然后按设置键,第一个数码管会显示“p”,然后变为“00-00-00”,此时进入时间调整状态,按加减键调整时间,调完一位按设置键进入下一位调整,依次调整即可;若想设置闹铃,应先按下复位按键,然后长时间按下设置按键,第一个数码管会显示“C”,然后变为“00-00-00”,此时进入闹铃设置状态,设置方法跟上面一样,闹铃设置完后,下一步要设置当前时间,调整方法跳到第一步。这样设置好后,她就能按照主人的意思,定时的把你闹醒啦!意义:20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间。尤其在医院,每次护士都会给病人作皮试,测试病人是否对药物过敏。注射后,一般等待5分钟,一旦超时,所作的皮试试验就会无效。手表当然是一个好的选择,但是,随着接受皮试的人数增加,到底是哪个人的皮试到时间却难以判断。所以,要制作一个定时系统。随时提醒这些容易忘记时间的人。 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。电子闹钟已经是现代生活中经常用到的工具之一,传统的电子闹钟只是机械控制,另外,体积也很大,又不美观也不实用.而现在我设计的电子闹钟是用单片机做的.只要简单的设置好后,她就能按照主人的意思,定时的把你闹醒啦!也能给人们的生活带来方便。电子闹钟在科学技术高度发展的今天,千家万户都少不了它,所以很多家庭个人都需要有一个电子闹钟,为人们提供报时方便,但普通电子闹钟不够方便实用。我给出了一种以51芯片电子闹钟设计方法,从而给人们带来更为方便的工作与生活。1.2 单片机发展综述单片机的全称是单片微型计算机(Single Chip Microcomputer)。为了使用方便,它把组成计算机的主要功能部件:中央处理器(CPU)、数据存储器(RAM)、程序存储器(ROM、EPROM、E2PROM或FLASH)、定时/计数器和各种输入/输出接口电路等都集成在一块半导体芯片上,构成了一个完整的计算机系统。与通用的计算机不同,单片机的指令功能是按照工业控制的要求设计,因此它又被称为微控制器(Microcontroller)。 MCS51系列单片机1是美国Intel公司于1980年推出的一种8位单片机系列。该系列的基本型产品是8051、8031和8751。这3种产品之间的区别只是在片内程序存储器方面。8051的片内程序存储器(ROM)是掩膜型的,即在制造芯片时已将应用程序固化进去,8031片内没有程序存储器,8751内部包含有用作程序存储器4KB的EPROM。由于8051的编程需要制造商的支持,而8751的价格昂贵,因此8031获得了更为广泛的使用。MCS51系列单片机优异的性能/价格比使得它从面世以来就获得用户的认可。Intel公司把这种单片机的内核,即8051内核,以出售或互换专利的方式授权给一些公司,如Atmel、Philips、ADI等。这些公司的这类产品也被称为8051兼容芯片,这些8051兼容芯片在原来的基础上增加了许多特性2。本文应用电路中采用了Atmel公司的AT89S51芯片,它与MCS51单片机指令兼容,同时它的内部包含用作程序存储器4KB的基于FLASH技术的只读存储器。采用这款芯片既克服了采用8031需要添加外部程序存储器导致电路复杂的缺点,又克服了采用8751导致电路制作成本高的缺点。1.3 电子闹钟发展趋势现代的快节奏生活给人们的精神上带来了很大压力。如何排解或缓解这些压力已经成为很多人关心的问题。单片机电子闹钟是具发展前景闹钟创新性的系统,它代表了时代的发展趋势。近年来,无论从国内外行业发展趋势,还是从闹钟市场的要求来看,节能、环保、创新都已成为中国家电企业无法回避的大问题。在原材料价格不断上涨、下游渠道商实力膨胀、价格战越来越激烈、行业利润日趋微薄的背景下,日前,中国的电子闹钟在节能化、环保化、创新型转变过程中,正进行新一轮闹钟赛跑。目前,国内专业51电子闹钟厂家的数量正在迅速增长3。51电子闹钟市场在未来的三五年内会高速增长,新技术、新产品也会不断出现并投入应用。 1.4 本课题研究内容简介本课题研究的主要内容为:设计一个51电子闹钟(1)能随意设定走时起始时间; (2)能设定闹铃;(3)能指示秒节奏,即秒指示;(4)采用直流供电电源。该设计主要器件: 按键、显示单元部分、AT89S51单片机芯片、74HC245驱动LED显示电路。外接3个按钮组成键盘,AT89S51为51内核4。另外,AT89S51本身无专门的液晶驱动接口,因此,本闹钟采用数码管显示方式。数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。本设计的电子闹钟具有如下特点:(1)简单好用、美观、体积小、实用;(2)用电量少、电压低、节能、环保、创新;(3)数码管作为一种主动显示器件,亮度高、价格便宜、显示数字清晰;(4)使用LED发光,省电,灯泡寿命长。第2章 系统整体设计方案整个系统的任务要求:(1)输入数字按键电路的功能:保证数字的输入;(2)复位电路的简介与功能:51单片机的复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次5。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路,功能是回到初始化状态,用于启动设定时间参数(对时或定闹);(3)显示电路的简介与功能:采用动态扫描方式,从左到右进行,显示缓冲区首地址为79H。因此各位显示器都扫过一遍之后,就返回监控程序。经过一段时间间隔后,再调用显示扫描程序。通过这种反复调用来实现LED显示器的动态扫描6。功能是当输入数字时显示24小时时间功能;(4)闹铃功能:设置好闹铃时间后,能按设置好的时间准时闹铃。综上设计整个系统的原理框图如图2-1所示:AT89S51按键与按钮电路复位等辅助电路位数码管显示电路闹铃声光指示电路电源系统图2-1 整个系统的原理图2.1系统总体方案本电子闹钟设计,是以单片机及外围接口电路作为核心硬件,辅以外围硬件电路,用汇编语言设计的程序来设计并实现的。根据C51单片机的外围接口特点扩展成相应的硬件电路,然后根据单片机的指令设计出数字钟相应的软件7,再利用软件来执行一定的程序实现数字钟的功能。之所以用单片机来制作电子钟,是因为这样在设计制作简单而且功能多、精确度高,也可方便的扩充其他功能,实现也十分简单。本系统是利用AT89S51为51内核,集成电路74HC245和蜂鸣器各1个,制作完成一个电子闹钟,本闹钟采用数码管显示方式。通过本实验我了解了简易闹钟的设计方法,并自己动手设计电路和编写实现闹钟功能的程序。简易闹钟要实现以下功能:1、能正确显示闹钟的走时;2、可以进行当前时间的设置;3、可以设置闹钟时间,并在时间到时发出响声。根据以上各模块并结合显示屏的功能及元器件材料的情况,决定采用AT89S51为51内核显示设计方案。先进行系统的整体规划确定整个系统的功能,然后按照每个功能的具体要求,进行各个模块的实物设计并逐个调试,待全部通过后,进行整个系统的联调,最终实现一个完整的系统,并制成印刷线路板。如图2-2所示:图2-2 印刷线路板整个系统的设计步骤如下:亲手焊接最小系统;在单片机最小系统的基础上,完成按键电路和复位电路的设计;完成显示电路、数字按键、复位电路;具有3个功能按键:(1)在复位后的待机状态下,用于启动设定时间参数(对时或定闹);(2)在设定时间参数状态而且不是设定最低位(即分个位)的状态下,用于结束当前位的设定,当前设定位下移;(3)在设定最低位(分个位)的状态下,用于结束本次时间设定。加减键,用于对当前设定位(编辑位)进行加1操作,根据24小时工作模式和正在编辑的当前位的含义(时十位、时个位、分十位、分个位)自动进行数据的上限和下限判断。例如,对24小时制,小时的十位可能是0、1、2,如果当前值为0,则按1键后为1,再按1键则为2,再按+1又回复到0。2.2 单片机最小系统最小系统介绍:能使单片机工作的最少器件构成的系统称为单片机的最小系统。对于AT89S51单片机,由于其内部有4K可在线编程的Flash存储器8,用它组成最小系统时,不需机外扩程序存储器,只要有复位电路和时钟电路即可,因此,由AT89S51单片机组成的最小系统如图2-3所示: 图2-3 AT89S51单片机的最小系统图2-3是一个实际应用的最小系统,74HC245可以提高复位的可靠性;另外,当P0用作I/O口时,需要接10k20k的上拉电阻。2.3 芯片基本工作原理及其应用2.3.1 AT89S51简介AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造9,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。2.3.2 引脚介绍AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器10,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。AT89S51单片机引脚图如图2-4所示:图2-4 引脚图引脚功能说明:(1)Vcc:电源电压,GND:接地 ,P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位以吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组端口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时11,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。(2)P1口:P1口是一个带内部上拉电阻的8位双向I/O口,P1口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。另外,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表2-1。Flash编程和程序校验期间,P1接收低8位地址。表2-1 P1.0和P1.1的第二功能引脚号功能特性P1.0T2(定时/计数器2外部计数脉冲输入),时钟输出P1.1T2EX(定时/计数2捕获/重装载触发和方向控制) (3)P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P2端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据12。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。(4)P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2-2所示:表2-2 P3口的第二功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外中断0)P3.3INT1(外中断1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。(5)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。(6)ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号13,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活14。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。(7)PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次RSEN信号。(8)EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚要加上+12V的编程允许电源VPP15,当然这必须是该器件是使用12V编程电压VPP。(9)XTAL1:振荡器反相放大器及内部时钟发生器的输入端。(10)XTAL2:振荡器反相放大器的输出端。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。 AT89S51单片机主要功能特性:兼容MCS-51指令系统32个双向I/O口2个16位可编程定时/计数器全双工UART串行中断口线2个外部中断源中断唤醒省电模式看门狗(WDT)电路灵活的ISP字节和分页编程4k可反复擦写(1000次)ISP Flash ROM4.5-5.5V工作电压时钟频率0-33MHz128x8bit内部RAM低功耗空闲和省电模式3级加密位软件设置空闲和省电功能双数据寄存器指针电源:89S51有很宽的工作电源电压,电源范围宽达45.5V。存储器:89S51支持ISP在线可编程写入技术16!串行写入、速度更快、稳定性更好,电压也仅仅需要45V即可。51单片机的程序存储器用于存放应用程序和表格之类的固定常数。可扩充的程序存储器空间最大为64K字节。程序存储器的使用应注意以下两点:(1)整个程序存储器空间可以分为片内和片外两部分,CPU访问片内和片外程序存储器,可由引脚所接的电平来确定。引脚接高电平时,程序将从片内程序存储器开始执行;当 PC 值超出片内ROM的容量时,会自动转向片外程序存储器空间执行程序。引脚接低电平时,单片机只执行片外程序存储器中的程序。(2)程序存储器的某些单元被固定用于中断源的中断服务程序的入口地址。51单片机复位后,程序存储器PC的内容为0000H,故系统从0000H单元开始取指令,执行程序。64K程序存储器中有5个单元具有特殊用途,如下:0003H:外部中断0入口地址。000BH:定时器0中断入口地址。0013H:外部中断1入口地址。001BH:定时器1中断入口地址。0023H:串行口中断入口地址。在系统中断相应之后,将自动转各中断入口地址处执行序,而中断服务程序一般无法存放于几个单元之内,因此在中断入口地址处往往存放一条无条件转移指令进行跳转,以便执行中断服务程序。2.3.3 应用就目前中国市场的情况来看,89S51有很大的市场。其原因有下列几点:(1)AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式;(2)AT89S51是一个低功耗,高性能CMOS 8位单片机;(3)芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案;(4)同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。2.4 74HC245特性由于通过数码管公共及的电流较大,因此用三极管来驱动位码。为了避免过多地使用分立元件,采用了一片74HC245来驱动段码。74HC245是一款高速CMOS器件,74HC245引脚兼容低功耗肖特基TTL(LSTTL)系列。74HC245八路收发器在发送和接收两个方向上都具有正相三态总线兼容输出。74HC245的输出使能端(OE)用于实现轻松级联17,而发送/接收端(DIR)用于控制方向。OE控制输出,使得总线被有效的隔离。 74HC245与74HC640逻辑功能相似,但74HC245具有原码(正相)输出。 74HC245特性:(1)八路双向总线接口; (2)正相三态输出 ;(3)可选多种封装类型; (4)兼容JEDEC标准no.7A; (5)ESD保护 。74HC245引脚图如图2-5所示: 图2-5 74HC245引脚图2.5 蜂鸣器特性2.5.1 蜂鸣器的概述(1)蜂鸣器的作用:蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。(2)蜂鸣器的分类:蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。(3)蜂鸣器的电路图形符号:蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。2.5.2 蜂鸣器的结构原理压电式蜂鸣器:压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路构成18。当接通电源后(1.515V直流工作电压),多谐振荡器起振,输出1.52.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。蜂鸣器引脚图如图2-6所示:图2-6 蜂鸣器引脚图第3章 电子闹钟硬件电路设计一个完整的系统,离不开硬件和软件的设计。硬件与软件各有所长,如何合理的安排软硬件的任务是系统设计的第一步。系统硬件的设计可以根据系统的各个功能,把整个系统划分成若干个模块,分别对这些模块来进行设计,然后在通过单片机程序来实现对各个硬件模块功能的调度。本系统涉及到的硬件模块有:按键电路、复位电路、显示电路。3.1主电路设计单片机最小应用系统实际上就是一个内置程序存储器的单片机,可由单片机芯片,配以必要的外部器件构成,这些外部功能器件无法集成到芯片内部19,主要有按键电路、显示电路等,本设计的系统电路图如图3-1所示:图3-1单片机系统图3.2 按键电路的设计作为一个按键从没有按下到按下以及释放是一个完整的过程,也就是说当我们按下一个按键时,总希望某个命令只执行一次。而在按下的过程中不要有干扰进来,因为在按下的过程中,一旦有干扰过来可能造成误触发过程,因此我们在设计按键电路的时候应注意不要有干扰进来所以在焊接时应注意:(1)独立式按键。如果设置过多按键,将会占用较多I/O口,而且会给布线带来不便,因此,此方案适用于按键较少的情况。如果选择此方案,由于按键较少,在修改时间或设置闹铃时间时就不能直接输入,只能通过加或减完成20,稍为麻烦一些,但其程序简单;(2)执锡补焊时应按照从左到右,由上到下的顺序,避免检查时漏检或焊接时漏修;(3)焊接时要经常清洗烙铁头,防止烙铁头的杂物造成虚焊、针孔、加焊等不良发生;(4)不要在基板上给烙铁头加焊锡,生产过程中不能抖锡、敲锡、甩锡,防止焊锡渣、焊锡、珠掉到基板上面;(5)在压件或拆件时要先在线路板的铜箔面上加焊锡,要求均匀加热,避免松香失效或铜箔翘皮造成线路破坏。考虑到电路不要复杂性,因而设计成3个按键,一个为复位,其它2个为按数字时间的按键和确定设好的时间。起名为“设置”按键和“加减”按键。后2个按键要接89C2051端。若想设置时间,应先按下复位键,然后按“设置”键,第一个数码管会显示“p”,然后变为“00-00-00”,此时进入时间调整状态,按“加减”键调整时间,调完一位按设置键进入下一位调整,依次调整即可;若想设置闹铃,应先按下复位按键,然后长时间按下“设置”按键,第一个数码管会显示“C”,然后变为“00-00-00”,此时进入闹铃设置状态,设置方法跟上面一样,闹铃设置完后,下一步要设置当前时间,调整方法跳到第一步。3.3 复位电路的设计目前为止,单片机复位电路主要有四种类型:(1)微分型复位电路;(2)积分型复位电路;(3)比较器型复位电路;(4)看门狗型复位电路。另外,Maxim等公司也推出了专用于复位的专用芯片,复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。当输入的复位信号延续两个机器周期以上的高电平时即为有效,完成单片机的复位初始化操作。本设计复位电路图如图3-2所示。单片机目前已被广泛地应用于家电、医疗、仪器仪表、工业自动化、航空航天等领域。市场上比较流行的单片机种类主要有Intel公司、Atmel公司和Philip公司的8051系列单片机,Motorola公司的M6800系列单片机,Intel公司的MCS96系列单片机以及Microchip公司的PIC系列单片机。无论用户使用哪种类型的单片机,总要涉及到单片机复位电路的设计。而单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完单片机系统,并在实验室调试成功后,在现场却出现了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。图3-2 复位电路图3.4 显示电路的设计就时钟而言,通常可采用液晶显示或数码管显示。由于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般多采用并行接口,对微处理器的接口要求较高,占用资源多。另外,89S51本身无专门的液晶驱动接口,因此,本时钟采用数码管显示方式。数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。基于AT89S51单片机的控制系统包括四部分:数据采集、控制系统、时钟电路、语音录音电路和报音提示信息电路。数码管的驱动电路简单,使用方便,如果选择了此方案,那么在夜间看时间的时候就不需要有光源,非常方便。其缺点是功耗较大。但由于数码管使用起来较为方便,在夜间看时间也很方便,因此我们选择了数码管作为显示器。第4章 电子闹钟软件开发系统软件的设计方法与硬件设计的方法是相同的,也是根据系统的各个功能,划分成各个子模块,分别对每个模块来进行设计,然后在通过各个模块之间的调用来实现整个系统的功能。系统软件部分的设计模块有:按键电路的软件设计、复位电路的软件设计、显示电路的软件设计。发音部分:用软件方法产生方波输出,通过三极管放大后驱动蜂鸣器发音,这样就可以省去硬件振荡电路,降低成本。电源:如果是用电池供电,就比较方便携带,所以本设计采用电池供电。4.1软件功能软件功能如下:(1)检测按键:当系统检测到某个按键被按下时,转到相应子程序处理,可实现校时、设定闹铃时间的功能。(2) 显示:系统通过调用显示子程序,可将显示缓冲区里的内容通过动态扫描方式输出到数码管显示器。(3) 计时:系统通过中断和软件计数器可产生秒信号。每到1s,系统将会调整时间存储单元的内容,从而实现计时功能。(4) 比较:每当秒存储单元的内容为0时,系统通过调用比较子程序可判断当前时间是否符合闹铃条件,若符合,则调用发音子程序使蜂鸣器发出闹铃声音。(5) 产生音频方波输出:系统通过软件产生音频方波输出使蜂鸣器发声,这样可以省去硬件振荡电路。(6) 拆分:为了提高存储单元的利用率,本系统将时间数据压缩成压缩BCD码后再送入显存才能显示。(7)合并:为了提高修改时间的速度,可先对现存内容逐位修改,然后调用合并子程序把显存内容合并后送入指定存储单元。(8)设定:系统进入设定状态后,可通过按“设置”键改变闪亮位位置和按“加减”键来加1或减1闪亮位内容,从而达到报时和设定闹铃时间的目的。根据上述软件功能要求绘制本设计系统流程图如图4-1所示:初始化图4-1系统流程图T0中断服务程序流程图如图4-2所示:图4-2 T0中断服务程序流程图比较程序:每当秒存储单元的内容为0时,系统通过调用比较子程序可判断当前时间是否符合闹铃条件,若符合,则调用发音子程序使蜂鸣器发出闹铃声音,流程图如图4-3所示:图4-3 比较子程序流程图4.2软件设计操作方法系统上电后,自动进入时钟状态。若在此时按下“设置”键,显示器上将出现闪亮位,再按“加减”则可以加或减闪亮位内容,修改完一位后再按“设置”键可改变闪亮位位置继续修改下一位。修改完成后按“设置”键即可退出设定状态进入正常显示时钟状态。若想设置时间,应先按下复位键,然后按设置键,第一个数码管会显示“p”,然后变为“00-00-00”,此时进入时间调整状态,按加减键调整时间,调完一位按设置键进入下一位调整,依次调整即可;若想设置闹钟,应先按下复位按键,然后长时间按下“设置”按键,第一个数码管会显示“C”,然后变为“00-00-00”,此时进入闹铃设置状态,设置方法跟上面一样,闹铃设置完后,下一步要设置当前时间,调整方法跳到第一步。这样设置好后,她就能按照主人的意思,定时的把你闹醒啦! 我先了解简易闹钟的设计方法,并自己动手设计电路和编写实现闹钟功能的程序。简易闹钟要实现以下功能:1、能正确显示闹钟的走时;2、可以进行当前时间的设置;3、可以设置闹钟时间,并在时间到时发出响声。 设计中,我利用以上提到的芯片和软件编程结合的思路。本设计的软件编程由四部分构成,下面将对照程序的构成来阐述我对简易闹钟的方案设计,具体设计方案如下:(一)在主程序中,填写中断向量表,应用8255A的IRQ7和IRQ5端。利用8253A和8259A完成计时一秒的功能,然后通过更新时间的子程序完成时间跳变的功能,待到新的时间判断是否到达设定的闹钟的时间,如果是,则启动扬声器;如果否,则继续进行显示时间。(二)闹钟的时间是变化的,在更新时间的子程序中,首先判断更改后的秒数是否小于10,如果是,则返回主程序;如果否,则秒的个位跳变成0,秒的十位加一;再次判断秒的十位,过程同判断秒的个位相同。(三)简易闹钟最重要的功能就是“Its time to do something!”这部分,主要要考虑的也是判断当前时间是不是设定的闹钟时间。如果跳变后的时间的四位完完全全的和设定的闹钟时间相同,则扬声器应该响起,提示闹钟的主人“Time is up!”从闹钟的分钟的十位开始依次判断,如果前一个闹钟位的显示与设定的闹钟时间对应位相同,则转入判断下一位;如果不相同,则返回主程序。都判断后,如果都相同,则设置启动闹钟的对应位为1,启动扬声器。(四)在显示时间的子程序中,时间从“00-00-00”开始显示。每位数字的显示各由一段程序完成。在各个模块的软件设计完成后,便可以对整个系统进行整体的软件设计。其根本的设计思路是通过设置一些联系信号,把原本功能独立的各个模块联结在一起,从而实现整体系统的功能。第5章 系统的调试和性能分析5.1 系统的调试方法整个系统调试的主要思想是:先每个模块进行调试,然后整个系统一起调试。先软硬件分开调试,然后一起调试。遵循先部分后整体的原则。系统的在调试过程中要注意以下几点:(1)硬件电路焊完之后,在上电之前一定要先用万用表检测电源和地之间是否短路;(2)上电之后要用示波器观察信号的在电路中变化的情况,与设计当初的情况相比较,找出差别,并进行分析;(3)软件调试过程中可以使用断点、单步执行等常用的方法;(4)软硬件联调时,要注意软件部分要一个功能一个功能的调试。输入按键的调试:输入按键的调试,只要按键按下去时,按键有相应的反应就行,通过程序来判断,单片机I/O是否能够识别出。复位电路的调试:当电源刚接通时,接通电源就完成了系统的初始化。显示电路的调试:在本设计中,显示电路只需完成,当输入数字时能正确显示数字。整个系统的联调:在系统各个部分都调试完毕之后,即可以进行整个系统的调试。由于前面各个部分的调试做的都比较充分,所以在实际调试过程中,能够较顺利的实现整个系统预期的功能。若想设置时间,应先按下复位键,然后按设置键,第一个数码管会显示“p”,然后变为“00-00-00”,此时进入时间调整状态,按加减键调整时间,调完一位按设置键进入下一位调整,依次调整即可;若想设置闹钟,应先按下复位按键,然后长时间按下“设置”按键,第一个数码管会显示“C”,然后变为“00-00-00”,此时进入闹铃设置状态,设置方法跟上面一样,闹铃设置完后,下一步要设置当前时间,调整方法跳到第一步。这样就实现了本设计预期的功能,可以比较准确的显示时间,也可以设定闹铃了。实物图如图5-1所示,是显示时间的设置,两个红灯闪一下是一秒。图5-1 实物图5.2 系统的性能分析系统能在设定的时间内闹铃,但是声音有点沙哑。这是因为控制蜂鸣器的I/O口每次取反后,必须调用一次显示子程序后才能再次取反,否则在发音期间不能显示,然而调用一次显示子程序需要的时间大约为6ms(6位每位1ms),所以振荡频率f=1/T=1/(2*6ms)83Hz,显然这个频率过低,这就是造成声音沙哑的原因。经测试,其时钟误差约为3秒天,这是因为从定时器向CPU发出中断申请信号到重装定时初值的过程需要一定的时间。本系统通过测试,能够实现以下功能:(1)按键输入;(2)闹铃声音;(3)LED显示。结 论本设计以AT89CS51为核心,辅以必要的外围电路,设计了一个结构简单,功能齐全的电子闹钟,它由5V直流电源供电。在充分理解了设计的要求后,准确的定位了设计的目的,然后构思了总体的方案。在选择合适的硬件完成了电路的设计后,又进行了软件的设计和调试。最后调试后能够实现预期功能:(1)能显示时-分-秒;(2)能够设定时间、修改时间;(3)定时时间到蜂鸣器能发出响声。本设计由于使用了单片机作为中央控制器件,因此具有性能可靠,电路简单,可随意设定闹铃时间的特点,加上本系统采用了逐位修改的方法使得修改时间更加方便,而且它还能方便的扩展其他功能,如秒表、日历等。参考文献1 张毅刚.单片机原理及应用M.高等教育出版社,2003:15-215.2 王长胤.单片机原理与应用M.北京:武汉大学出版社,2000.3 谢自美.电子线路设计M.实验.测试.武汉:华中理工大学出版社,1999.4 潭浩强.C语言程序设计M.清华大学出版社,2000年,第1版,162.5 何立民.MCS-51系列单片机应用系统设计系统配置与接口技术M.北京航空航天大学出版社,1990年,第1版,64.6 李广弟.单片机基础J.北京:北京航空航天大学出版社,2003.7 刘华东.单片机原理与应用(第二版)M.北京:电子工业出版社,2007.8 Magana M EFuzzy-logic control of an inverted pendulum with vision feedback JIEEE Transactions on Education,1998,41(2):136-1709 陈明荧.8051单片机课程设计实训教材M.清华大学出版社.2004年.10 罗亚非.凌阳16位单片机应用基础M.北京:北航出版社,2003年. 11 贾好来.MCS51单片机原理及应用M.机械工业出版社.2007年.12 蔡方凯.单片机原理及基于单片机的嵌入式系统设计M.水利水电出版社2007年.13 阎石.数字电路技术基础M.北京:高等教育出版社,1998年.14 童诗白、华成英.模拟电子技术基础M.北京:高等教育出版社,2001年.15 谭浩强.C语言程序设计M.清华出版社.16 刘文涛.单片机应用开发实例M.清华大学出版社,1993年,第1版,143.17 Magana M EFuzzy-logic control of an inverted pendulum with vision feedback JIEEE Transactions on Education,1998,41(2):136-17018 Hu B G, Mann G K I, Gosine R GNew methodology for analytical and optimal design off fuzzy PID controllers JI EEE Transactions on Fuzzy System ,1999,29(1):43-5319 陈景初.单片机应用系统设计与实践M.北京:北京航空航天大学出版社.20 马家辰.MCS-51单片机原理与接口技术M.哈尔滨:哈尔滨工业大学出版社.21 刘守义.单片机应用技术M.西安:西安电子科技大学出版社.致 谢经过半年的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及一起工作的同学们的支持,想要完成这个设计是难以想象的。 在这里首先要感谢我的导师李艳辉老师。李老师平日里工作繁多,但在我做毕业设计的每个阶段,从查阅资料到设计草案的确定和修改,中期检查,后期详细设计,装配草图等整个过程中都给予了我悉心的指导。我的设计较为复杂烦琐,但是李老师仍然细心地纠正图纸中的错误。除了敬佩李老师的专业水平外,她的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。 其次要感谢我的同学对我无私的帮助,特别是在软件的使用方面,正因为如此我才能顺利的完成设计,我要感谢我的母校东北石油大学,是母校给我们提供了优良的学习环境;另外,我还要感谢那些曾给我授过课的每一位老师,是你们教会我专业知识。在此,我再说一次谢谢!谢谢大家附录1 原理图和印制版图 附录2 程序;定义变量;S1EQUP3.4;按键JIAEQUP3.5SECLEQU24H;各个显示单元SECHEQU25HHENGXIANEQU26HMINULEQU27HMINUHEQU28HHENGEQU29HHOURLEQU2AHHOURHEQU2BHSECONDEQU2DH;秒变量单位COUNTEQU2EH;溢出中断计数器SETFLAGEQU20HHHEQU00H;移位时用到的单元HLEQU01HMHEQU02HMLEQU03HWARNSLEQU2FHWARNSHEQU30HWARNMLEQU32H;报警分低位WARNMHEQU33H;报警分高位WARNHLEQU35H;报警时低位WARNHHEQU36H;报警时高位WARNCNTEQU37H;已设定闹铃时间标志WARNINGBIT0CH;闹铃标志WARNSETTEDBIT0DH;已设定闹铃时间标志;误差修正;TFIXBIT0EH;开始修正标志NEQU60;误差值,单位:1/10s,默认为0,即不修正;程序入口地址; ORG0000H LJMPMAIN ORG000BH;定时器T0溢出中断入口 LJMPTIMER0 ORG0030H;主程序;MAIN:MOVSP,#60H;堆栈设置CLRTFIX;误差开始修正标志初始化MOVCOUNT,#0LCALLSYS_INIT;系统初始化LCALLT0_INIT;定时器初始化LCALLSETTIME;等待设置当前时间MAIN_0:MOVIE,#80H;设置完后开始走时,启动定时器T0SETBTR0;允许T0溢出中断;LCALLDELAY10MSLCALLDISPLAY1;系统初始化子程序;SYS_INIT:MOVIE,#00H;关中断MOVR0,#20;清变量MOVR1,#10HMOVA,#00HSYS_0:MOVR0,AINCR
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版写字楼装修工程场地租赁合同样本
- 2025版矿石产品市场调研与评估服务合同样本下载
- 2025房地产代理商合作房产评估服务协议
- 2025房地产项目开发与城市综合体配套合同
- 2025版社区儿童安全教育项目合同书
- 2025年度智能社区物业综合服务合同范本
- 2025年自驾游车辆租赁及保险保障合同
- 2025大型商场家居建材租赁与销售代理合同
- 贵州省修文县2025年上半年公开招聘城市协管员试题含答案分析
- 2025版涂料工程劳务分包合同执行细则
- 智能生鲜机器人项目商业计划书
- 生物质颗粒购销合同
- 临床教学经验总结
- 高中化学拔尖创新人才早期培养路径
- 2025年四川宽窄实业有限责任公司招聘笔试参考题库含答案解析
- Unit 1 完形填空训练8篇-2023-2024学年英语八年级上册单元冲刺满分题型训练(人教版)
- CPK计算表格电子表格
- DB32/T 1086-2022 高速公路建设项目档案管理规范(修订)
- 《滤芯销售培训》课件
- 2025年中国人保招聘笔试参考题库含答案解析
- 施工单位管理培训
评论
0/150
提交评论