还剩37页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
毕业设计(论文)报告专业名称:电气自动化技术设计课题:单片机的多功能作息时间设计毕业设计(论文)任务书毕业设计(论文)题目单片机的多功能作息时间设计毕业设计(论文)的内容要求1.作息时间能控制电铃2.作息时间能启动和关闭放音机单片机作息时间控制的功能使用4位七段显示器来显示现在的时间显示格式为“时分”由LED闪动来作秒计数表示具有4个按键来作功能设置,可以设置现在的时间及显示定时设置时间一旦时间到则发出一阵声响,同时继电器启动,可以控制放音机开启和关闭指导教师(签名)系主任年月摘要 本设计详细介绍了利用AT89C51单片机设计时间控制器的方法该时间控制器是以AT89C51单片机为核心,扩展一片XICOR公司的X5045组成的小系统,控制一路继电器可以设定一天中的时间,设定继电器的开启时间和关闭时间,可以清除不需要的定时,能够紧急启动所有的设定均通过键盘实现,按键具有连击功能,每个状态都有指示灯提示我们设计的作息时间控制是用单片机实现的,是为了更好的对时间控制智能化时间控制器包括硬件和软件硬件部分包括继电器,存储器和显示器接口芯片软件部分,主要是主程序设计软硬件结合在一起,先调试子程序,然后逐级叠加调试,最后系统调试通过时间控制系统可以准确的显示时间,在定时时间到时发出悦耳的铃声提醒同学们按时上下课毕业设计开题报告
一、课题设计(论文)目的及意义通过收集相关资料,方案的比较确定,有关数据的计算及各元件参数的确定,电路图纸的设计绘制,论文的撰写等有关过程深化和综合了基础课、专业课,熟悉小型系统的设计全过程,掌握逆变电源的设计步骤及设计方法,深入进行与本专业有关的基本设计训练,培养分析问题、解决问题的能力通过这次设计,深入了解本专业及相关专业的知识,从而巩固了所学的专业基础知识,并培养了独立思考的能力,更有助于我们提高理论知识的学习与掌握,提高动手能力,在设计过程中尽可能联系实际生活,使系统的设计指标达到预定指标,并兼顾经济合理的要求,并为以后工作和学习打下坚实的基础
二、课题设计(论文)提纲
(1)收集相关资料并仔细研读和思考
(2)提出几种设计方案,对提出的设计方案进行比较和论证,确定最佳设计方案
(3)对设计方案进行数学建模,通过相关数学推导计算,确定相关元器件的参数及型号
(4)硬件电路的设计与调试
(6)整机连调及性能测试
(7)整理资料,编写设计论文
三、课题设计(论文)思路、方法及进度安排
(1)针对现实中的问题提出问题
(2)对问题进行分析整理并与所学课程联系,通过所学知识提出解决问题的可行方案
(3)在所提出的方案中,筛选出优化方案
(4)确定需要选购的元器件
(5)根据所设计原理图焊接电路
(6)设计软件程序并调试硬件电路参考文献
[1]林华兵编著.MCS-51单片机原理及应用.武汉华中科技大学出版社,
2003.6
[2]先锋工作室编著.单片机程序设计实例.清华大学出版社,
2003.1
[3]陈明荧编著.8051单片机课程设计实训教材.清华大学出版社,
2003.3
[4]王晓明、曾红编著.单片机教程.东北大学出版社,
2001.12
[5]张洪润、蓝清华编著.单片机应用技术教程.清华大学出版社,
1997.11
[6]求是科技、勒达编著.单片机应用系统开发实例导航.人民邮电出版社,
2003.10
[7]南建辉、熊鸣、王军茹编著.MCS-51单片机原理及应用实例.清华大学出版社,
2004.3
[8]苏凯、刘庆国、陈国平编著.MCS-51系列单片机系统原理与设计.冶金工业出版社,
2003.3
[9]白驹珩、雷晓平编著.单片计算机及其应用.成都电子科技大学出版社,
1997.12
[10]徐爱钧彭秀华编著.单片机高级C51应用程序设计.电子工业出版社,
1998.6
[11]李东生、张勇、许四毛编著.99SE电路设计技术入门与应用.北京电子工业出版社,
2002.12
[12]王勇、陈爱弟、蔡明军、任安宏编著.98实用指南.西安西安电子科技大学出版社,
1999.7
[13]袁涛编著.单片机C高级语言程序设计及其应用.清华大学出版社,
2001.10目录摘要………………………………………………………3毕业设计开题报告…………………………………………4参考文献…………………………………………………5第一章总体设计方案………………………………………
71.1芯片比较………………………………………………
71.2总体设计及设计原理……………………………………14第二章硬件设计…………………………………………
142.1单片机部分……………………………………………
142.2存储器部分……………………………………………
182.3显示部分………………………………………………
272.4电源与复位电路部分……………………………………
282.5电铃和继电器部分……………………………………
292.6按键部分……………………………………………30第三章 软件设计……………………………………313.1主程序设计…………………………………………
313.2子程序设计…………………………………………31第四章硬件设计…………………………………………33第五章系统安装与调试……………………………………34结束语…………………………………………………35第一章 总体方案设计
1.1芯片比较
1.
1.1单片机选型 单片机厂商琳琅满目,产品性能各异常用的单片机有很多种Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、台湾Winbond华邦W78系列、荷兰Pilips的PCF80C51系列、Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等我们最终选用了ATMEL公司的AT89C52单片机AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和FLASH存储单元,功能强大AT89C52单片机适用于许多较为复杂控制应用场合
1.
1.2显示器接口芯片的选择 LED显示器接口芯片的选择常用的显示器接口芯片有CD4511,CD4513,MC14499,8279,MAX7219,74HC164等,它们的功能有
1.CPU接受来自键盘的输入数据,并作预处理;
2.数据显示的管理和数据显示器的控制CD4511是BCD锁存,7段译码,驱动器,但在显示6和9时,显示为b和q,不是很好看CD4513是BCD锁存,7段译码驱动器消隐,但现在市面上不好买MC14499为串行输入BCD码——十进制译码驱动器,用它来构成单片机应用系统的显示器接口,可以大大减少I/O口线的占用数量但是,由片内震荡器经过四分频的信号,经位译码后只能提供4个位控信号,使信号的采集受到限制;并且,MC19944的价格偏高,也不经济同样,8279为INTEL公司生产的通用键盘/显示器接口芯片,其内部设有16*8显示数据RAM,若采用8279管理键盘和显示器,可以减少软件程序,从而减轻主机的负担,但我们同时也发现,由于其功能比较强大,不可避免将会使外围设备与操作过程复杂化,同时价格比较贵对比一下MAX7219和74HC164其占用资源少,且不需复杂的驱动电路但MAX7219虽然比较好用,且一片能驱动四个数码管,但对于我们设计的系统来说,不需要很多数码管,此外MAX7219相对74HC164的价格也比较贵,所以我们最终选用74HC164,下面对MAX7219作一下介绍特点1采用3线串行接口传送数据;2内部有8字节显示静态RAM和6个特殊功能寄存器,相当于14个字节的RAM单元它们是可寻址的,即可以有选择的任意写入;3只需一个外部电阻即可调节LED的段电流,并且允许程控方式LED通电的占空比而可方便的调节LED显示的亮度,或用于模拟亮度显示;4可LED显示器的扫描个数;5有不译码和B码两种显示模式,这种选择可做到位控,即各LED显示器可以有不同的显示方式译码或不译码;6含硬件动态扫描显示控制,可设置低功耗方式,可进行图条显示引脚图如图2-1说明 引脚名称作用1DIN串行数据输入在CLK上升沿时,数据被装入内部16位移位寄存器235–81011DIG0–DIG7八个数字驱动器线路,来自共阴极显示器的反向电流MAX7219当关闭的时候拉位输出到V+.当关闭的时候MAX7221的位驱动器是高阻抗状态49GND地(两个GND引脚必须被连接在一起)12LOAD装载数据输入串行数据的最后16位被锁存在LOAD的上升沿CS片选输入当/CS是低电平时穿行数据被装载到移位寄存器中在/CS上升沿时串行数据的最后16位被锁存13CLK串行时钟输入10MHz的最大比率在CLK上升沿时,数据被转移到内部移位寄存器在CLK下降沿时,数据从DOUT输出在MAX7221中只有/CS是低电平时CLK输入被激活14–1720–23SEGA–SEGGDP七段驱动和小数点驱动电源电流显示在MAX7219中,当段驱动器被关闭,它就被接到地当关闭以后MAX7221的段驱动器成高阻状态18ISET通过一只电阻器RSET连接VDD来设置最高段电流(查阅选择RSET电阻器部分)19V+正供给电压连接到+5V24DOUT串行数据输出进入DIN的数据
16.5个时钟周期以后在DOUT有效这个引脚常被用来链接MAX7219/MAX7221,没有高阻状态 A.工作原理简介a.数据(含地址)接收 MAX7219采用串行寻址方式,在传送的串行数据中包含有RAM的地址按照时序的要求,单片机将16位二进制数逐位发送DIN端,在CLK上升延到来之前DIN必须有效,在CLK的每个上升延,DIN被串行逐位移入MAX7219内部的16位穿行寄存器中设最先移入的数据是D15最后移入的数据是D0则移入16位串行寄存器的数据是D15--D0为了有选择的将数据写入8个显示RAM或6个特殊功能寄存器,D0—D15中,D8—D11四位作为RAM和特殊功能寄存器的地址,D0—D7作为写入显示数据或控制字与并行数据传送相比,MAX7219串行接收D0—D15并存放到16位串行寄存器中的过程,相当于并行传送中,将并行数据和地址送到数据和地址总线上的过程数据装载 16位接收寄存器将收到的D0—D7位数据写入RAM或特殊功能寄存器是在数据装载信号控制下完成的图3-8是MAX7219的数据接收装载(写入)时序图,由图可知,LOAD必须在15个CLK下降延前由高变低,在16个CLK同时或之后由低变高(上升延)在LOAD的上升延,8位数据D0—D7写入以4位二进制数D8—D11位地址的RAM或特殊功能寄存器中b.显示扫描 当显示模式设定后,写入显示RAM的数据将在控制器的控制下,按设定的显示模式,以动态扫描方式进行显示MAX7219内部显示RAM及特殊功能寄存器显示RAM(地址*1—*8)地址为*1H的RAM数据控制接D0引脚的显示器,地址为*2H的RAM数据控制接D1引脚的显示器B.译码方式寄存器(地址*9H)该寄存器的8位二进制数的各位值分别控制着8个LED显示器的译码方式当高电平时选择BCD-B码译码模式,当低电平时选择不译码模式B码译码的显示自行与现实数据的关系如下b.显示数据(十六进制) 0 1 2 3 4 5 6 7 8 9 A B C D E FB码字型 0 1 2 3 4 5 6 7 8 9 –E H L P *其中,*代表全灭小数点不译码,它由显示数据的D7位控制C.扫描界限寄存器(地址*BH)该寄存器的D0—D3位数据设定值为0—7,设定值表示显示器动态扫描个数为1—8D.停机寄存器(地址*CH)当位D0=0时,MAX7219处于停机状态;当D0=1时,处于正常工作状态显示测试寄存器(地址*FH)当位D0=0时,MAX7219按设定模式正常工作;当D0=1时,处于测试状态在该状态下,不管MAX7219处于什么模式,全部LED将按最大亮度接通显示亮度寄存器(地址*AH)及两度的调解或控制亮度可通过硬件和软件两种方法调解或控制
1.
1.3存储器的选择 为了改善主CPU的资源与时序的分配,我们对AT89C51进行串行数据存储器的扩展常用的存储芯片有很多,如AT93C46/56/66,X5045经过比较选择,最终选用了XICOR公司的X5045 X5045把三种常用的功能看门狗定时器,电压控制和EEPROM组合在单个封装之内这种组合降低了系统的成本并减少了对电路板空间的要求看门狗定时器对微控制器提供了独立的保护系统低VCC检测电路可以保护系统免受低电压的影响,同时X5045是串行EEPROM具有简单的三总线工作的串行外设接口,是一种有独特功能的高性能价格比存储器件 AT93C46/56/66是ATMEL公司推出的低功耗、低电压电可擦除的可编程只读存储器它采用CMOS技术和FairchildSemiconductor公司的Mi-croWire工业标准3线串行接口,具有1Kb/2kB/4kB的容量,并可通过ORG管脚配置成128*8/256*8/512*8或64*16/128*16256*16等结构该系列存储器可靠性高,能够重复写100万次,数据可以保存100年不丢失;采用8脚PDIP/SOIC封装和14脚SOI封装(SOI封装为JEDEC和EIAJ标准),与并行的EEPROM相比,AT93C46/56/66可大大节省印制板空间,且接线简单,因而在多功能的精密测试仪中具有广阔的前途引脚功能CS片选信号高电平有效,低电平时进入等待模式在连续的指令之间,CS信号必须持续至少250ns的低电平,才能保证芯片正常工作CLK串行时钟信号在CLK的上升沿,操作码、地址和数据位进入器件或从器件输出在发送序列时,CLK最好不停止,以防止读/写数据的错误DI串行数据输入可在CLK的同步下输入开始位、操作码、地址位和数据位DO串行数据输出在CLK同步下读周期时,用于输出数据;而在地址擦/写周期或芯片擦/写周期时,该端用于提供忙/闲信息VSS接地VCC接+5V电源ORG存贮器构造配置端该端接VCC或悬空时,输出为16位;接GND时,输出为8位指令及时序A.地址擦指令(ERASE)该指令用于强迫指定地址中所有数据位都为“1”一旦信息在DI端上被译码,就需使CS信号保持至少250ns的低电平,然后将CS置为高电平,这时,DO端就会指示“忙”标志DO为“0”,表示编程正在进行;DO为“1”,表示该指定地址的寄存器单元已擦完,可以执行下一条指令B.擦/写允许指令(EWEN)由于在上电复位后AT93C46/56/66首先将处于擦/写不允许状态故该指令必须在所有编程模式前执行,一旦该指令执行后,只要外部没有断电就可以对芯片进行编程C.地址写指令(WRITE)写指令时,先写地址,然后将16位的或8位数据写入到指定地址中当DI端输出最后一个数据位后,在CLK时钟的下一个上升沿以前,CS必须为低,且需至少保持250ns,然后将CS置为高电平需要说明的是写周期时,每写一个字节需耗时4msD.地址读指令(READ)读指令用于从指定的单元中把数据从高位到低位输出至DO端,但逻辑“0”位先于数据位输出读指令在CLK的上升沿触发,且需经过一段时间方可稳定为防止出错,建议在读指令结束后,再输出2-3个CLK脉冲E.芯片擦指令(ERAL)该指令可将整个存贮器阵列置为1,其它功能与地址擦指令相同F.芯片写指令(WRAL)该指令可将命令中指定的数据写入整个存贮器阵列,其它功能与地址写指令相同该指令周期所花费时间的最大值为30msG.擦/写禁止指令(EWDS)使用该指令可对写入的数据进行保护,操作步骤与擦/写允许指令相同
1.
1.4继电器的选择 继电器是我们生活中常用的一种控制设备,通俗的意义上来说就是开关,在条件满足的情况下关闭或者开启继电器的开关特性在很多的控制系统尤其是离散的控制系统中得到广泛的应用从另一个角度来说,由于为某一个用途设计使用的电子电路,最终或多或少都需要和某一些机械设备相交互,所以继电器也起到电子设备和机械设备的接口作用 最常见的继电器要数热继电器,通常使用的热继电器适用于交流50Hz、60Hz、额定电压至660V、额定电流至80A的电路中,供交流电动机的过载保护用它具有差动机构和温度补偿环节,可与特定的交流接触器插接安装 时间继电器也是很常用的一种继电器,它的作用是作延时元件,通常它可在交流50Hz、60Hz、电压至380V、直流至220V的控制电路中作延时元件,按预定的时间接通或分断电路可广泛应用于电力拖动系统,自动程序控制系统及在各种生产工艺过程的自动控制系统中起时间控制作用 在控制中常用的中间继电器通常用作继电控制,信号传输和隔离放大等用途此外还有电流继电器用来限制电流、电压继电器用来控制电压、静态电压继电器、相序电压继电器、相序电压差继电器、频率继电器、功率方向继电器、差动继电器、接地继电器、电动机保护继电器等等正是有了这些不同类型的继电器,我们才有可能对不同的物理量作出控制,完成一个完整的控制系统 除了传统的继电器之外,继电器的技术还应用在其他的方面,比如说电机智能保护器是根据三相交流电动机的工作原理,分析导致电动机损坏的主要原因研制的,它是一种设计独特,工作可靠的多功能保护器,在故障出现时,能及时切断电源,便于实现电机的检修与维护,该产品具有缺相保护,短路、过载保护功能,适用于各类交流电动机,开关柜,配电箱等电器设备的安全保护和限电控制,是各类电器设备设计安装的优选配套产品该技术安装尺寸、接线方式、电流调整与同型号的双金属片式热继电器相同是直接代替双金属片式热继电器的更新换代的先进电子产品而其真正的原理还是继电器技术继电器技术发展到现在,已经和计算机技术结合起来,产生了可编程控制器的技术可编程控制器简称作PLC它是将微电脑技术直接用于自动控制的先进装置它具有可靠性高,抗干扰性强,功能齐全,体积小,灵活可扩,软件直接、简单,维护方便,外形美观等优点;以往继电器控制的电梯有几百个触点控制电梯的运行有一个触点接触不良,就会引起故障,维修也相当麻烦,而PLC控制器内部有几百个固态继电器,几十个定时器/计数器,具备停电记忆功能,输入输出采用光电隔离,控制系统故障仅为继电器控制方式的10%正因为如此,国家有关部门已明文规定从1997年起新产电梯不得使用继电器控制电梯,改用PLC微电脑控制电梯 可以看出,继电器技术在日常生活中无所不在,而且和电脑的紧密结合更加增强了它的活力,使得继电器为我们的生活更好地服务
1.2总体设计及系统原理经比较我们选定单片机芯片为AT89C52,存储器芯片为X5045在确定系统的大体形式之后,画出本系统的结构布局,电路原理如图2-2所示 第二章 硬件设计
2.1单片机部分
2.
1.1AT89C52特点●与MCS-51产品指令和引脚完全兼容●8K字节可重擦写FLASH闪存●1000次擦写周期●全静态操作0Hz-24MHz●三级加密程序存储器●256X8字节内部RAM●32个可编程I/O口线●3个16位定时/计数器●8个中断源●可编程串行UART通道●低功耗空闲和掉电模式功能特性概述 AT89C52提供以下标准功能8K字节FLASH闪存,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式空闲方式停止CPU工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位AT89C52的芯片管脚图如图3-1引脚功能说明VCC——电源电压GND——地P0口——P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻在FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻P1口——P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输出口作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流与AT89C51不同之处是,P
1.0和P
1.1还可分别作为定时/计数器2的外部计数输入(P
1.0/T2)和输入(P
1.1/T2EX),参见下表FLASH编程和程序校验期间,P1接收低8位地址P
1.0和P
1.1的第二功能引脚号功能特性P
1.0T2(定时/计数器2外部计数脉冲输入),时钟输出P
1.1T2EX(定时/计数2捕获/重装载触发和方向控制)P2口——P2是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容FLASH编程或校验时,P2亦接收高位地址和一些控制信号 P3口——P3口是一组带有内部上拉电阻的8位双向I/O口P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口此时,被外部拉低的P3口将用上拉电阻输出电流 P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表所示 端口引脚第二功能P
3.0RXD串行输入口P
3.1TXD串行输出口P
3.2INTO外中断0P
3.3INT1外中断1P
3.4TO定时/计数器0P
3.5T1定时/计数器1P
3.6WR外部数据存储器写选通P
3.7RD外部数据存储器读选通 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号 RST——复位输入当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位 ALE/PROG——当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节 一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的要注意的是每当访问外部数据存储器时将跳过一个ALE脉冲对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG) 如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作该位置位后,只有一条MOVX和MOVC指令才能将ALE激活此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效 PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号 EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)需注意的是如果加密位LB1被编程,复位时内部会锁存EA端状态 如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令 FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp
2.
1.2单片机硬件资源分配P2.4连接按键P2.5连接按键P2.6连接按键P2.7连接按键P3.4连接蜂鸣器P3.5接继电器P1.4连接X5045的SO端P1.5连接X5045的/CS端P1.6连接X5045的CLK端P1.7连接X5045的SI端
2.2存储器部分 在上一章我已选定了存储器芯片X5045,下面对其作进一步的介绍特点 可编程的看门狗定时器上电复位及低VCC检测,即在上电和VCC低于检测门限时,输出复位信号输出复位高电平有效,直至VCC=1V复位信号仍有效SPI接口方式,最高可达1MHZ的串行时钟频率 512*8位串行EEPROM 低功耗CMOS,3mA工作电流,10uA备用电流 电源电压
2.7V-
5.5V 分块锁定,可保护1/4,1/2或所有EEPROM列 防止偶然性写保护 高可靠性,数据可保存100年,每字节可擦除次数可达到10万次 可编程的复位门限需要加高电压(15-18V加在WP引脚)及一个专门的时序 8引脚小型DIP封装图如图3-2引脚说明 CS1片选输入 SO2串行输出 SI3串行输出 SCK4串行时钟输入 WP5写保护输入 Vss6接地 Vcc7电源电压 RESET8复位输出使用说明串行输出(SO)SO是一个推/拉串行数据输出引脚,在读周期时间内,数据从这个引脚输出,串行时钟脉冲下降沿时数据输出串行输入(SI)SI是串行数据输入引脚,所有的操作码,字节,地址及数据都通过这个引脚写入存储器,串行时钟脉冲上升沿时,数据被锁存串行时钟(SCK)串行时钟控制串行总线为数据的输入和输出计时,SI引脚的操作码,地址或数据在时钟输入上升沿时被锁存,SO引脚的数据在时钟输入上升沿时被改写片选(/CS) 当/CS为高电平时X5043/45被检测SO输出引脚处于高阻抗状态,除非内部写操作在进行中的时候,X5045将处于后备电源模式/CS为低电平时,可以使X5943/45处于工作电源模式,应特别注意,在电源上电以后,需要在开始任何操作以前完成/CS引脚上高电平到低电平的转换写保护(/WP) 当/WP为低电平时,对于X5045不能完成非易失性写操作,但是在其他方面工作正常当/WP被拉成高电平时,所有的功能,包括非易失性写操作都能正常工作当/WP变成高电平,/CS仍然是低电平时,将中断对X5045的写操作,如果内部写周期已经开始,/WP变成低电平将对写操作没有影响复位(RESET) X5045的RESET分别工作在高电平/低电平,对外输出一直工作到VCC降至最小电压以下,将一直工作200ms直到VCC升高大于最小电压如果看门狗定时时间已定,/CS保持高电平或低电平的时间超过看门狗的定时时间,RESET也同样有效当/CS下降沿时可使看门狗定时器复位工作原理 X5045是设计成直接与许多微控制器系列的同步串行外设接口(SPI)相接的512*8EEPROMX5045包括一个8位指令寄存器,可以通过SI输入来访问,数据在SCK上升延由时钟同步输入,在整个工作期间内,/CS必须低电平且/WP输入必须是高电平复位电源给X5045上电将使复位电路有效,这个电路使RESET引脚有效,RESET可以阻止系统微处理机在不充足的电压或振荡器稳定之前开始操作,当VCC超过装置的Vtrip200ms(理论值)电路将解除RESET,允许资料处理机开始处理代码设定Vtrip电压时序(VCC=要设定的值)低电压控制 在操作过程中,X5045监测VCC标准并检测RESET,如果提供的电压低于预先设置的最小Vtrip值,在电源供电不足或节电状态,RESET会发信号阻止微处理机操作,RESET信号有效一直到电压降至1V并且仍有效到VCC恢复并超过Vtrip200ms看门狗定时 看门狗电路通过检测WDI输入来监测微处理机的工作情况,微处理机应定期切换//CS/WDI引脚以防止RESET信号有效,在看门狗定时时间终止之前应完成//CS/WDI引脚从高电平到低电平的切换状态寄存器的两种非易失性控制位的状态决定看门狗的定时时间,微处理机可以改变看门狗的位,如果微处理机没有作用,看门狗定时器的控制位将不会改变,甚至在所有电源不能供电的状态下VCC入口复位程序 X5045载有标准的VCC初始电压Vtrip,在正常的操作和存储条件下,这个值将不能改变,然而,在应用过程中有的地方初始电压不一定非常准确或需要更高精度的初始电压,X5045的入口将被调整使用高电压控制信号设置Vtrip值 这个时序常用来把Vtrip值设置成更高的电压值,例如当前Vtrip值为
4.4V,新的值为
4.6V,次程序将直接进行转换如果新设置的值低于当前值,在设置新值之前必须先复位设置新的Vtrip值,把理想的初始电压值加到VCC引脚上,给/WP引脚加上编程电压Vp,发送WREN指令,接着写数据00H到地址01H,在写操作时/CS变成高电平,启动Vtrip编程时序,当/WP变成低电平时完成操作复位初始电压 此时序常被用来把Vtrip设置成原始电压例如如果当前Vtrip值为
4.4V,新的Vtrip值必须为
4.0V,然而Vtrip需要被复位当Vtrip值被复位以后,新的Vtrip值将低于
1.7V这个程序常用来把电压设置成更低的值复位Vtrip,把至少3V的电压加到VCC引脚上,给/WP引脚加上编程电压Vp,发送WREN指令,接着写数据00H到地址03H,在写操作时/CS变成高电平,启动Vtrip编程时序,当/WP变成低电平时完成操作复位门电压电路(VCC3V,/WP=15—18V)SPI串行存储 芯片的存储部分是CMOS串行EEPROM排列及Xicor的分块锁存保护这个排列在内部被作为8位指令寄存器该装置具有SPI接口,软件协议可以通过四条总线进行操作 该芯片利用Xicor的所有的指令写单元,可以提供每字节擦写次数最少为100万次数据可最少保存100年 该芯片被设计成直接连接许多通用微处理机的SPI接口 该芯片包括一个8位的指令寄存器来控制该装置的操作指令代码通过SI输入写入该装置有两条写指令需要指令字节,有两条读指令需要指令字节开始数据的输出,剩余的指令需要一条字节,一个八位的地址,数据字节所有的指令,地址和数据位都需要SCK输入计时,所有的指令,地址和数据都首先被转换成MSB时钟和数据定时 SI引脚的输入数据在/CS变成低电平以后,SCK的第一个上升沿时被锁存,SO上的数据在SCK下降沿时被输出,SCK是固定的,允许使用者终止适中,也可以重新开启恢复操作,在整个操作过程中/CS必须保持低电平X5045的全部指令名,指令格式和操作说明如下表所示 X5045指令集指令指令格式操作说明WREN00000110设置写使能锁存器,允许写操作WRDI00000100设置写使能锁存器,禁止写操作RDSR00000101读状态寄存器WRSR00000001写状态寄存器,块锁定位WRITE0000A8010把数据写入开始所选地址中READ0000A8011从开始所选地址中读出数据 指令寄存器可以通过SI输入来访问,所用指令,地址与数据都以MSB在前的方式传送写使能锁存器 该装置包含一个写使能锁存器,这个锁存器在写操作开始之前必须先设置WREN指令可以设置锁存器,WRID指令可以使锁存器复位,在上电以后,完成一个有效的字节,页或者是状态寄存器写周期,锁存器将自动复位如果/WP变成低电平锁存器也将复位,当发布WREN,WRDI,RDSR命令发送字节地址和数据是没有必要的(图3-10)写使能/不能锁存时序状态寄存器 状态寄存器包括四个非易失性控制位,两个易失性状态位控制位可以设置看门狗定时器的操作,存储块锁存保护,状态寄存器被设计成“状态记录员”状态寄存器(缺省状态为30H)7654321000WD1WD0BL1BL0WELWIP写入程序位(WIP)是一个易变性的、只读位,指示装置的是否忙于内部非易变性写操作使用RDST指令可以使WIP位被读出当设置为1时,非易变性写操作在进行中,当设置为0时,进行中没有写操作 写使能锁存位(WEL)指示“写使能”锁存的状态当WEL为1时,锁存器被置位;当WEL为0时,锁存器被复位WEL是一个易变性的、只读位WREN指令可以设置WEL位,WROS指令可以使WEL位复位 块锁存位BL0和BL1,设置块锁定保护的标准这些非易变位可以用WRSR指令编程,允许使用者保护存储器序列的1/4,1/2,全部或空被块锁存保护排列的任一部分只能读不能写它将保护到BL位被改变使存储器部分不能块锁存保护状态寄存器位序列地址保护BL1BL0X5043/X504500无01$180-$1FF10$100-$1FF11$000-$1FF看门狗定时位WD0和WD1,选择看门狗定时溢出时间,用WRSR指令可以对这些非易变位编程状态寄存器位看门狗定时时间溢出 (典型值)WD1WD
0001.4s01600ms10200ms11不确定读状态寄存器 读状态寄存器,把/CS降为低电平来选择该装置,接着发送8位RDSR指令状态寄存器的内容被转移到SO引线上,通过CLK计时状态寄存器在任何时间都可以被读出,甚至在写周期过程中写状态寄存器 在写数据到写状态寄存器之前,先发布WREN指令来设置“写使能”锁存器(WEL)首先使/CS变为低电平,对该装置定时WREN指令,再把/CS拉成高电平再次把/CS拉成低电平,在8位数据之后,进入WRSR指令这8位数据与状态寄存器的内容一致当/CS变为高电平时操作结束如果在WREN和WRSR之间/CS没有变成高电平,WRSR指令将无效芯片保护矩阵WREN命令 (WEL)芯片引脚 (WP) 存储块状态寄存器BL0BL1WD0WD1被保护的区域不被保护的区域0X被保护被保护被保护X0被保护被保护被保护11被保护写使能写使能写状态寄存器时序读存储序列 当从EEPROM存储序列中读时,首先把/CS拉成低电平以选择芯片,8位READ指令被传输到芯片中,接着是8位的地址READ指令的第3位选择芯片的高位或地位,在READ代码和地址被发送以后,在选择的地址中且存储在存储器中的数据被转移到SO引线上存储器下一个地址存储的数据通过继续提供时钟脉冲可以被读出每一个数据的字节被转移以后地址将自动增加到更高的地址当达到最高地址,地址计算器变为000,允许读周期无限的继续当把/CS引脚拉成高电平时,读操作停止写存储序列 在写数据到存储器序列之前,先发布WREN指令来设置“写使能”锁存器(WEL)首先使/CS变为低电平,对该装置定时WREN指令,再把/CS拉成高电平再次把/CS拉成低电平,在8位地址之后,进入WRITE指令,接着数据就被写入WRITE指令的第3位包含地址位A8,可以选择序列的高位或低位如果在WREN和WRITE之间/CS没有变成高电平,WRITE指令将无效WRITE指令至少需要16个时钟周期,CS在整个操作过程中必须保持低电平操作者可以继续写入16字节的数据唯一的限制是这16个字节必须存在同一页中一页的地址开始于地址[xxxxx0000],结束于地址[xxxxx1111]如果字节地址达到了该页的最后一个字节,并且时钟仍然继续,计算器将返回到该页的第一个地址,写在以前写过的数据上 为了写操作(字节或页写)能被完成,在时钟周期内被写入的最后的数据字节的0位以后CS必须被拉成高电平如果它在任何时间没有被拉成高电平,写操作将不能完成 在写过程中跟随着一个状态寄存器或存储序列写时序,状态寄存器可以被读入来检查WIP位非易变写过程中WIP处于高电平图3-9存储序列时序
2.3显示部分 本仪器利用89C52单片机串行口和廉价的74HC164集成块实现多个LED显示的一种简单方法,利用该方法设计的多路LED显示系统具有硬件结构简单、软件编程容易和价格低廉的特点下面简单的介绍一下74HC164特点
(1)与门串行输入;
(2)完全的缓冲时钟脉冲和串行输入;
(3)直接清除 显示程序图引脚图如图11 这些8位移位寄存器的特点是具有与门串行输入和不同步的清除输入(CLR)门电路串行输入A和B允许对输入数据的完全控制;低电平加在输入端可以抑制新数据的进入;高电平输入能使输入有效串行输入的数据当CLK是高电平或低电平时可以改变 89C52单片机串行口方式0为移位寄存器方式,外接3片74LS164作为3位LED显示器的静态显示接口,把89C51的RXD作为数据输出线,TXD作为移位时钟脉冲74LS164为TTL单向8位移位寄存器,可实现串行输入,并行输出其中A、B(第
1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信号时可并接T(第8脚)为时钟输入端,可连接到串行口的TXD端每一个时钟信号的上升沿加到T端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74LS164中R(第9脚)为复位端,当R=0时,移位寄存器各位复0,只有当R=1时,时钟脉冲才起作用Q1…Q8(第3-6和10-13引脚)并行输出端分别接LED显示器的hg···a各段对应的引脚上在给出了8个脉冲后,最先进入74LS164的第一个数据到达了最高位,然后再来一个脉冲,第一个脉冲就会从最高位移出,搞清了这一点,下面让我们来看电路,6片7LS164首尾相串,而时钟端则接在一起,这样,当输入8个脉冲时,从单片机RXD端输出的数据就进入到了第一片74LS164中了,而当第二个8个脉冲到来后,这个数据就进入了第二片74LS164,而新的数据则进入了第一片74LS164,这样,当第六个8个脉冲完成后,首次送出的数据被送到了最左面的164中,其他数据依次出现在第
一、
二、三片74LS164中
2.4电源与复位电路部分
2.
4.1电源部分 本次设计应用的电压有+5V220V交流电源经变压器整流,滤波后分别进入芯片7805,产生+5V,这些电源的具体应用情况如下+5V电源:单片机及外围电路所用电源+9V电源:压电喇叭所用电源
2.
4.2复位电路 当MCS-5l系列单片机的复位引脚RST全称RESET出现2个机器周期以上的高电平时,单片机就执行复位操作如果RST持续为高电平,单片机就处于循环复位状态根据应用的要求,复位操作通常有两种基本形式上电复位和上电或开关复位 上电复位要求接通电源后,自动实现复位操作常用的上电复位电路如图3-12a中左图所示图中电容C1和电阻R1对电源十5V来说构成微分电路上电后,保持RST一段高电平时间,由于单片机内的等效电阻的作用,不用图中电阻R1,也能达到上电复位的操作功能,如图3-12a中右图所示 要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位常用的上电或开关复位电路如图3-14b所示上电后,由于电容C3的充电和反相门的作用,使RST持续一段时间的高电平当单片机已在运行当中时,按下复位键K后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作根据实际操作的经验,下面给出这两种复位电路的电容、电阻参考值图3-12a中Cl=10-30uF,R1=1kΩ图3-12b中C2=1uF,Rl=lkΩ,R2=10kΩ本系统的复位电路采用上电复位
2.5电铃和继电器部分 当定时时间到了,压电喇叭则发出一阵声响,时间到时发出一阵声响,按下K4键可以停止声响也可以启动继电器,由继电器可以控制放音机
2.6按键部分 按键设定部分比较简单,因为本系统按键少,所以在设计上采用了独立按键方式,程序的编制上也采用了简单的扫描方式程序执行后工作指示灯LED闪动,表示程序开始执行,七段显示器显示“0000”,按下操作键K1-K4动作如下操作键K1设置现在的时间;操作键K2显示闹铃设置时间;操作键K3设置闹铃时间;操作键K4闹铃ON/OFF设置,设为ON时连续3次发出哔的一声,设为OFF时发出哔的一声;设置现在的时间或是闹铃时间设置如下操作键K1设整时;操作键K2设整分;操作键K3设置完成;至此,分七部分将硬件电路介绍完毕,将介绍该仪器的软件设计第三章 软件设计 单片机作息时间控制的动作利用时间计时处理来做秒计数,当所设置的时间到了,则发出一阵声响,启动继电器,由继电器可以控制放音机开启或关闭单片机定时器负责定时的计数,不会因为按键处理而中断时间秒数的增加,时,分,秒数据是存在变量内并写入七段显示器的缓冲区内,而由显示器扫描程序中定时扫描而显示出时间3.1主程序设计 在主控程序循环中主要工作为扫描是否有按键,若有按键则应做相应的功能处理,同时也扫描显示器显示时间数据,并检查所设置的时间是否到了,(图4-1)为主程序控制的工作流程时间计时处理程序是等过了1S后,则更新时间数据,将最新的时,分,秒的数据转换为数字数据并显示在七段显示器上程序中是这样判断是否过了1S的设一旧秒数变量,当新旧秒数变量不一样时,则表示已过了1S,要做相关程序时间处理了 图4-
13.2子程序设计主要控制子程序说明如下●T0_INT定时器0计时中断程序每隔5ms中断一次;●DELAY延时子程序;●DELAY1控制七段显示器延时时间;●LED_BL工作LED闪动控制;●SCAN1七段显示器扫描一遍;●LOAD_DATA加载七段显示器显示数据“0”;●INIT初始化控制变量;●INIT_TIMER初始化定时器接口,使用定时器0模式0计时;●TIME_PRO更新时分秒数据;●CONV1将分及秒的数据转化为七段显示器显示数据并写入显示内存内;●CONV将时及分的数据转换为七段显示器显示数据并写入显示内存内;●SET_TIME设置现在的时间包括小时及分钟;●TIME_OUT过了1S后则更新时间并检查定时时间是否到了;●LOOK_ATIME查看已设置的定时时间;●CONVA转换定时时间时分数据为七段显示器显示数据并写入显示内存内;●SET_ATIME设置定时时间ORG00HLJMPSTART程序开始ORG03HRETI软件抗干扰ORG0BHLJMPINTT0定时器0的中断服务程序ORG13HRETI软件抗干扰ORG1BHLJMPINTT1定时器1的中断服务程序ORG23HRETI软件抗干扰SDABITP
3.0I2C协议定义的两跟线SCLBITP
3.1SDA数据SCL时钟CSBITP
3.4A/D转换器的选通线LOCKBITP
3.5E2PROM的写允许线OPEBITP
3.7执行器的输入控制LINE1BITP
1.3LINE2BITP
1.2键盘的两跟行线其中显示分四路,第一个和第二个数码管显示的是时,第三个和第四个数码管显示分流程图如下第四章硬件设计基本硬件的原理(下图),整个电路由主控电路显示电路,键盘电路,接口电路,电源电路组成.系统硬件原理图第五章系统安装与调试5.1软件调试采用模块化程序设计思想,首先调试子程序,然后逐级叠加调试5.2系统调试结束语在本次毕业设计中,我得到了指导老师张洪顺的热心指导自始至终关心督促毕业设计进程和进度帮助解决毕业设计中遇到的许多问题还不断向我们传授分析问题和解决问题的办法,并指出了正确的努力方向,使我在毕设过程中少走很多弯路同时,他还提供给我们专门的各种设备及场所,在调试过程中能够有充足的时间在这里非常感谢张老师的指导和帮助,并致以诚挚的谢意!同时,身边的同学给了我许多的帮助在此,我向身边关心我的同学致以诚挚的谢意!另外,系里的领导和老师也给了我们必要的指导,我也向系和年级的领导们表示衷心的感谢!最后感谢学院对我这几年的培养毕业设计(论文)指导教师意见书系别填表日期年月日学生姓名学号班级设计(论文)题目意见指导教师职称工作单位毕业设计(论文)答辩委员会评语系别填表日期年月日学生姓名学号班级设计(论文)题目答辩成绩毕业设计(论文)答辩委员会评语毕业设计(论文)答辩委员会成员签字姓名职称工作单位签字山东华宇职业技术学院毕业设计论文答辩记录表系答辩日期年月日学生姓名专业班级学号毕业设计论文题目指导教师
一、答辩委员会组成答辩委员会主任委员
二、答辩会议记录摘要
三、答辩委员会评语(学生毕业设计论文质量与水平、分析论证能力、综合应用能力、表达能力、回答问题情况、是否达到毕业生设计论文水平及建议等)
四、学生毕业设计(论文)成绩评定1指导教师评定成绩_______分2答辩委员会评定成绩_______分3综合评定毕业设计论文成绩五级制_______答辩委员会主任签名记录人签名年月日备注。