基于单片机的多功能智能定时器—硬件设计.doc_第1页
基于单片机的多功能智能定时器—硬件设计.doc_第2页
基于单片机的多功能智能定时器—硬件设计.doc_第3页
基于单片机的多功能智能定时器—硬件设计.doc_第4页
基于单片机的多功能智能定时器—硬件设计.doc_第5页
免费预览已结束,剩余13页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要 本系统为一款可以控制多路外设的定时器,采用通用的AT89C51为主芯片,通过3个74H138产生24路控制信号来控制继电器的通断来控制外设,继电器能达到隔离的作用。采用7位数码管为显示器件,使用单独的显示芯片MAX7219,采用独立按键方式,依次扫描各按键来索引定时外设。设计中还加入了看门狗,软件陷阱,等抗干扰技术,提高系统的稳定性。本定时器以其体积小,重量轻,使用方便非常适用于对精度要求不高,外设数量多的场合。 关键词 :单片机 定时 计时 抗干扰 15AbstractThis article designed a particular timer which may control the multi-channel peripherals, using the general AT89C51 primarily chip, and having 24 group control signal control relay make-and-break through the P1 mouth output for 3 74H138 to control the peripheral. The relay can achieve the isolated function. The timer uses 7 nixie tubes to demonstrate the component and two of them for the peripheral index position, and uses independent demonstration chip MAX7219, which may simplify the demonstration procedure, reduces Monolithic integrated circuit to take, and thus increases the precision of fixed time. It also uses two-pressed-keys-way (to add 1 and to reduce 1) to index fixed time peripheral. In the design there has been also joined the watch-dog, the software trap, and the anti-jamming technologies to enhance the stability of the system. This timer is small by its volume, light by its weight and easy by its operation, so it is suitable extremely to be applied some situations those the precision request is not high and the peripheral has a lot.Keywords :Monolithic integrated circuit,Severance,Fixed time, Control,anti-jamming 目 录1 绪论12 系统原理概述12.1硬件总体设计方案12.2 单片机介绍22.3 单片机定时原理22.4 单片机定时方式33 硬件设计43.1 单片机及外围电路43.2 显示电路53.4键盘电路73.5输出控制电路83.6抗干扰部分93.7 操作流程104 软件程序设计104.1 主程序104.2 显示子程序114.3 按键扫描程序114.4 定时时钟程序114.5 控制子程序124.6 软件抗干扰125 总结126 谢辞137 主要参考文献与资料 14附录图:151 绪论 定时器是机器运转中一个很重要的部分,其精度的高低直接关系到生产中生产线是否能按时完成生产量,其产品的质量的是否能够达到标准。尤其是在单片机广泛应用的今天,定时器的作用更是发挥的淋漓尽致,由于精度得到进一步的提升,所以大到工厂小到日常的闹钟,都有定时器的身影。但是专业的单片机定时器由于其设计精度高,电路复杂,后期维护麻烦,进而使得成本过高,不易推广。所以本文设计一种精度适当,电路简单,好维护,成本低的定时器,其功能足以满足人们日常生活的需要,从而能够更快的普及。 2 系统原理概述2.1硬件总体设计方案本系统采用目前比较通用的ATMEL公司的51系列单片机AT89C51,功能强大,即可以设置时间使被控制设备在指定时间动作,也可以检测设备工作时间并记录下来,供调试人员读取数据。已单片机为系统核心,采用12M晶振,分别控制显示,键盘,输出等。显示部分采用专用显示芯片MAX7219完成,来驱动7位共阴极数码管,两位显示秒,三位显示分,两位显示外设索引号。通过3片27LS138级联控制24路外设的工作,通过键盘输入设置的时间值。加入了光电隔离,过压保护,抗干扰电源,去偶电容等抗干扰技术,使电路更稳定。硬件总体设计框图如图1所示: AT89C51LED数码管显示键盘电路电源输入输出电路图1 硬件总体框图2.2 单片机介绍单片机即单片微型计算机,是把中央处理器、存储器、定时/计数器、输入输出接口都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。单片机是典型的嵌入式系统,能最好的满足面对控制对象,应用系统的嵌入,现场可靠运行以及非凡的控制品质要求。因此,单片机是发展最快,品种最多,数量最大的嵌入式系统。本文使用的是一块ATMEL公司的AT89C51单片机。兼容MCS-51指令系统,片内集成256字节数据存储器,其中128字节为用户使用位。4K程序存储器,完全可以满足一般工程的需求,两个16位定时器/记数器,5个中断。计数器以下为MCS-51单片机系统结构框图,如图2:频率基本源并行I/O口控制中断振荡及定时电路4K字节程序存储器128字节数据存储器2个16位定时器/记数器8051CPU64K字节总线扩展控制可编程I/O可编程串行口串行口图2 单片机内部结构图2.3 单片机定时原理 在单片机应用中,定时与记数的需求较多,为了使用方便并且增加单片机功能,就干脆把定时器电路集成在芯片中,称为定时器/计数器。MCS-51单片机内部就有两个定时器/计数器。 定时功能其实是通过计数器的计数来实现的,不过此时的计数脉冲来自单片机内,部,即每个机器周期产生一个计数脉冲,也就是每个机器周期计数器加1。由于机器周期等于12个振荡脉冲周期,因此计数频率为振荡频率的1/12。如果单片机采用12M晶振,则计数频率为1M,即每微秒计数器累加1。这样不但可以利用计数值算出定时时间,也可以反过来按定时时间要求计算出计数器的预置值。本文既是利用单片机内部固有的定时/计数器(t0和t1),根据单片机的震荡频率,计算出单片机定时器(t0或t1)的最大定时时间,由于最大定时时间仍无法满足系统需求,所以需要通过软件对定时器进行循环反复定时,以得到系统所需要的定时,秒,分,时,来控制设备的工作。2.4 单片机定时方式目前单片机定时主要有以下3种实现方式: (1)纯软件循环技术方式 这种方式需根据单片机的震荡频率计算出每条指令的指令周期,通过对执行的指令(通常是NOP指令)的循环执行,得到定时所需时间。如:在12兆晶震下,NOP指令的周期为1微秒,那么想的到1秒的定时时间就需对NOP循环执行1000次。由于这种定时方式的特点是时间精确且不需要外加硬件电路,但软件定时系统占用率高,所以本文不采用。(2)利用定时/计数器的定时方式 这种方式是通过对系统时钟脉冲的计数实现的,计数值通过程序设定,改变了记数值也就改变了定时时间。首先设置t0或t1的定时方式,当t0或t1溢出,系统产生定时中断,置中断位,可采用中断或查询方式。由于单片机内部定时器最大定时时间短,所以一般还需用程序对定时溢出进行计数,得到所需时间。定时时间计算方法如下: 定时时间T=机器周期(65536-记数初值) =(振荡周期12)(65536-记数初值)(3)利用单片机记数器的定时方式 这种方式其实是一个软硬件结合的定时方式,把定时器t0或t1设置为记数方式,由控制字TMOD 的C/T位来确定在这种方式下,计数脉冲来自外部引脚(T0对应P34脚,T1对应P35脚)。当T0脚(或T1脚)发生从高电平到低电平的跳变时,计数器加1。对外部信号进行记数,若外部输入为固定频率的信号,通过记数便可达到定时的作用,通过对初值寄存器付值即可得到所需的时间。 定时时间计算方法如下:定时时间=(外部信号周期12)(65536-记数初值)3 硬件设计3.1 单片机及外围电路MCS-51单片机内部有一个高增益反向放大器,其输入端为XTAL1,输出端为XTAL2,在芯片的外部通过这两个引脚跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个自激振荡器。电路中C1和C2取30P法瓷片电容。晶振越高则单片机的运行速度也就越快,但反过来,速度越快,对存储器速度要求越高,对印制电路板的工艺要求也越高,本系统晶振采用12M。电路如下:复位电路采用按键电平复位方式,复位端经电容与VCC电源相连,只要电源VCC的上升时间不超过1ms,就可实现自动上电复位,选用22微法电容与1k电阻可以达到此要求,用200欧姆电阻通过按键与电容并联,当按下按键时,对电容放电,实现手动复位。电路如下:由于单片机的4个I/O口中只有P0口为真正的双向口,输出电路是漏极开路电路,必须外接上拉电阻才能有高电平输出。单片机的31脚为EA端,为程序存储器控制信号,为低电平是,对ROM的操作限定在外部程序存储器,当为高电平,读ROM从内部存储器开始,并可延续到外部存储器。本系统无外接程序存储器,所以通过一个1k电阻与电源相连。以下图3为单片机外围电路图: 图3 单片机外围电路图3.2 显示电路本系统采用专用的显示芯片MAX7219配合7位数码管来显示时间值,该芯片是市场上比较流行的显示芯片,最多可以驱动8位的数码管,支持级连功能来驱动更多的数码管。并且可以通过设置控制字来选择工作方式,调节亮度,设置显示为数。该芯片采用了串行输入,节省了单片机有限的I/O口,使用方便。使用此芯片,省去了单片机控制显示的工作,只需直接输入地址和BCD码,显示码转换由芯片完成,内部会自动动态扫描,无需单片机编写扫描程序,可大大提高定时的精度。我们采用了7为数码管来显示,其中的5位显示的是定时时间值,三位为分值,两位为秒值,最大可以定时1000分钟,最后两位数码管显示当前定时的是哪个外设。芯片由标准COMS电压5V供电。其中第1脚为DIN串行数据数据输入端,第24脚为DOUT串行数据输出端,此端为多片MAX7219级连使用,输出数据接下一片的DIN端。第18脚为ISET段电流控制端,我们通过一个51k电阻接在电源上。第12脚为LOAD信号锁存控制端,也作为片选通信号端。第13脚为CLK时钟输入端,单片机输出的时钟信号由此输入。第14、16、20、23、21、15、17、22端分别为数码管的段驱动段。第2、11、6、7、3、10、5、8为8位数码管的位驱动端。其中DIN、LOAD和CLK端分别通过一个21p法电容接地,可以起到滤除干扰电流的作用。MAX7219内部含有自己的驱动电路,有能力驱动8位数码管的正常工作,并且内设保护电路,所以可直接与数码管相连而无须再另加驱动电路。另外芯片位驱动为低电平有效,所以数码管选用普通8断共阴极数码管。图4为MAX 7219时序图:D0D1D7D6D5D4D3D2LOADCLKDIN图4 MAX7219 时序图图5为显示部分电路图:图5 显示部分电路图3.3 电源电路电源电路采用基本的串联式稳压电路,有交流变压器,整流桥,滤波电容,稳压芯片7805和7812组成,可提供单片机的工作电压5v,和控制继电器电压12v。由于后面的电路有一定的损耗,所以交流变压器采用220V/18V隔离变压器,输入市电220v,输出18v交流电压。由四只二极管1N4007组成桥式整流电路,把双向波动电流变为单向波动电流,再通过滤波电容把电流变成接近直流状态,理论上滤波电容取大为好,但本系统采用一个耐压50v容量1000微法的电容已够用。然后通过一片7805和一片7812 即可得到稳定的5v和12v电压。图6为本系统的电源电路图:图6 电源电路图3.4键盘电路 键盘一般为两类,独立连接式和行列式两类,每一类又可分为编码和非编码方式。行列式是在几条横线与垂直线的交叉处以按键连接,若行线M条,列线N 条,则可组成M*N个按键。此方式适用于按键教多,但程序编写复杂。独立方式为按键直接与单片机I/O口线连接,当按键按下时,与之相连的口线机被清0(低电平),而平时为1(高电平),要判断是否有键按下,用单片机的位处理指令十分方便,此方式需要占用较多的I/O口线,又由于采用了专用的显示芯片MAX7219,只用了三根I/O口线就完成了显示的工作,节省了大量的单片机的I/O口线,所以为了程序编写方便,本系统采用此方式,用P0口与P2口的个别口线通过上拉电阻直接与按键相连,按键的另一端接地,即表示低电平有效。共12个按键,其中有数字键09和“加1”和“减1”键,用于外设序号索引键。3.5输出控制电路本系统可控制24个外设,由单片机 的5位输入位选择信号,5位地址可有32种输出,我们用其中的前24种,采用三片74HS138级连组成,74HS138为一个非常通用的3线-8译码,芯片中A2、A1、A0是输入端,输入三位二进制代码信号,Y0-Y7为译码输出端。表1为74HS138逻辑表。S1、S2、S3为选通端。只有当S1、S2、S3全部符合要求时,译码器才会工作,根据此原理,就可以实现多片74HS138的级连,实现更多的译码。本文为5线24译码,三片74HS138的A2、A1、A0端并联与单片机的P2.0、P2.1、P2.2连接,选通端的连接方法如图所示。当单片机有二进制码信号输出时,经译码器译码,相应的该位便会已低电平输出,其他位为高电平。由于是低电平,需经过三极管反向器变为高电平,来控制继电器的通断,从而控制外设的工作与否。输 入输 出S1 S2 S3 A2 A1 A0Y0 Y1 Y2 Y3 Y4 Y5 Y6Y70XXXXX11111111X1XXXX11111111XX1XXX111111111000000111111110000110111111100010110111111000111110111110010011110111100101111110111001101111110110011111111110表1 74HS138译码器逻辑真值表图7为控制部分电路图:图7 控制电路图3.6抗干扰部分单片机系统的可靠性由多种因素决定,其中系统抗干扰性能是可靠性的重要指标。工业环境有强烈的电磁干扰,因此必须采取抗干扰措施,否则难以稳定、可靠运行。工业环境中的干扰一般是以脉冲形式进入微机系统,渠道主要有三条,空间干扰(场干扰),电磁信号通过空间辐射进入系统。过程通道干扰,干扰通过与系统相连的前向通道、后向通道及与其它系统的相互通道进入。供电系统干扰,电磁信号通过供电线路进入系统。一般情况下空间干扰在强度上远小于其它两种,故微机系统中应重点防止过程通道与供电系统的干扰。抗干扰措施有硬件措施和软件措施。硬件措施如果得当,可将绝大部分干扰拒之门外,但仍然会有少数干扰进入微机系统,故软件措施作为第二道防线必不可少。由于软件抗干扰措施是以单片机为代价的,如果没有硬件消除绝大多数干扰,单片机将疲于奔命,无暇顾及正常工作,严重影响系统的工作效率和实时性。因此,一个成功的抗干扰系统是由硬件和软件相结合构成的。在输入和输出通道上采用光电隔离器来进行信息传输是很有好处的,它将微机系统与各种传感器、开关、执行机构从电气上隔离开来,很大一部分干扰将被阻挡。本系统中采用了光电隔离器4N33。采用一过压保护电路,以防引入高电压,伤害微机系统。过压保护电路由限流电阻和稳压管组成。原则上每个集成电路芯片都应安置一个0.01mF的陶瓷电容器,可以消除大部分高频干扰。3.7 操作流程(1)单片机上电复位后,数码管全显示0,并开始记时(2)按“加一“或”减一“键索引需要定时的外设(3)按数字键设定时间值,并在数码管显示(4)当有外设时间到,单片机自动输出译码信号使外设动作(5)当索引为00时,表是回到当前状态,数码管显示当前时间值。(6)外设检测模式时:所有外设改变工作状态以后,单片机自动记录时间,并存储,无需用户操作(7)按“加一“或”减一“键数码管最后两位作加一或减一操作,此时数码管前5位显示该外设的时间值,无时间值显示全0(8)当后两位数码管显示到00时,前5位数码管回到当前时间值的显示,即回到了表的状态。4 软件程序设计4.1 主程序初始化给有关单元赋初值,设定t0顶工作方式并赋予初值,初始化显示芯片并设置工作方式。分别调用显示子程序,定时程序和键盘扫描子程序,重复循环。图8为软件程序总体流程图: 按键扫描时间每到一秒N定时器累加调用显示子程序按键处理程序显示初始化单元初始化YNY图8 软件流程图4.2 显示子程序由于本系统采用专用的显示芯片MAX7219,此芯片为可编程芯片,内部寄存器可对芯片进行设置。所以需要对芯片写入控制字初始化,设定芯片工作方式。然后串行输入地址和数据,即可达到显示的功能。4.3 按键扫描程序由于采用了独立式的按键方式,每给口线接一个按键,所以程序设计简单,只要依次扫描各按键端口是否变为低电平,即可知道按键是否按下,在程序中加入去抖动延时程序,消除按键抖动。4.4 定时时钟程序由于本系统没有小时显示,只有秒和3位的分显示,最大999分59秒,每个时间用两个字节存储,如果按时,分,秒方式存储无法存下,所以这里采用已总秒数的方式存储,第一字节逢240进1(恰为4分),第二字节逢250复位。这样总存储最大值恰为1000分。设置T0的初始为50MS,并为37H,38H,39H赋予初始值0,37H内存储循环次数,38H内存储秒值,当满240时向38H进位,当进位够250时,则进行复位,此时达到最大值1000分钟。4.5 控制子程序当定时的时间值以秒的形式存储在单片机内部后,系统开始工作,程序依次把外设索引号加1,到24返回,通过算,得到相应存储区地址,取时间数据,与当前时间比较,若相同,则表示定时时间已到,产生控制信号,输出二进制码给译码器,使相应外设动作。4.6 软件抗干扰 采用软件看门狗和软件陷阱等抗干扰技术5 总结 本次设计的定时器是由89C51芯片为核心,配合相应的软程序,电路设计再附加看门软硬件抗干扰技术组成。能够具体实现基本的定时功能,控制外设功能,和调用查询定时功能。基本上能够实现定时后无人管理的理想工作状态。使用89C51中的程序设计和显示芯片的作用能精确定时,抗干扰技术使定时器在具体的使用中能使干扰减少到最低。整个定时器软件设计紧凑,电路控制精确、性能稳定,成本也较低廉。但是通过做此次的论文,对我自身却有很大的帮助,一方面

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论