微型计算机控制技术课程设计报_第1页
微型计算机控制技术课程设计报_第2页
微型计算机控制技术课程设计报_第3页
微型计算机控制技术课程设计报_第4页
微型计算机控制技术课程设计报_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

微型计算机控制技术课程设计报摘要随着现代科技的快速发展,时间的不断流逝,从观太阳、摆钟到现在的电子时钟,人类凭借非凡的智慧不断研究,又创造出新的纪录。美国DALLAS公司推出了一种具有涓细电流充电能能力的低功耗实时时钟时钟芯片DS1302。它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于可调电子日历采用直观的数字显示,可以同时显示年、月、日、星期、时、分、秒信息,还具有时间校准等功能。该电路采用AT89C51单片机作为核心,功耗小。用LCD1602液晶显示,较直观。综上所述此可调电子日历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景关键词时钟电路DS1302、LCD1602、单片机AT89C51目录摘要2第一章系统概述411设计要求412基本要求413系统基本方案选择和论证4131单片机芯片的选择方案和论证4132显示模块选择方案和论证5133时钟芯片的选择方案和论证5134温度芯片的选择方案和论证5第二章系统的硬件设计与实现621电路设计框图622系统硬件概述623主要单元电路的设计7231主控制模块的设计7232时钟电路模块的设计10233显示模块的设计11234按键模块的设计12235温度采集模块的设计12第三章系统的软件设计1331主程序流程图1332按键扫描子程序1433LCD初始化子程序1634DS18B20子程序18结束语19致谢词19参考文献19第1章系统概述11设计要求具有年、月、日、星期、时、分、秒等功能;具备年、月、日、星期、时、分、秒校准功能;具备温度测量功能12基本要求以DS1302实时时钟芯片和液晶显示屏LCD1602为基础设计一个电子钟,要求时间和日期可调整,按键采用5个按键;至少在PROTEUS上调试通过。13系统基本方案选择和论证131单片机芯片的选择方案和论证AT89C52是一个低电压,高性能CMOS8位单片机,片内含8KBYTES的可反复擦写的FLASH只读程序存储器和256BYTES的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS51指令系统,片内置通用8位中央处理器和FLASH存储单元,AT89C52单片机在电子行业中有着广泛的应用。132显示模块选择方案和论证方案一采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以不用此种作为显示。方案二采用LED数码管动态扫描,虽然LED数码管价格适中,但要显示多个数字所需要的个数偏多,功耗较大,所以也不用此种作为显示。方案三采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,与普通数码管相比功耗较小,硬件连接简单。所以显示部分采用1602液晶显示。133时钟芯片的选择方案和论证方案一直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二采用DS1302时钟芯片实现时钟,DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,工作电压为25V55V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。134温度芯片的选择方案和论证DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。14电路设计最终方案决定综上各方案所述,对此次作品的方案选定采用AT89C52作为主控制系统;LCD1602液晶作为显示;DS1302提供时钟;DS18B20作为温度采集模块。第2章系统的硬件设计与实现21电路设计框图如图所示DS18B20温度采集模块温度采集模块DS1302时钟采集模块AT89C52主控制模块块按键处理模块LCD1602显示模块图21电路设计框图22系统硬件概述本电路是由AT89C52单片机为控制核心,具有在线编程功能,低功耗;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,工作电压为25V55V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能,本电路采用DS1302单字节传送方式实现与主控机之间数据的传送;显示部分由1602构成;另外,采用DS18B20温度采集模块,耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。各模块拼接组合,电路总体设计图如下所示图22电路总体设计图23主要单元电路的设计231主控制模块的设计AT89C52为8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8XC52相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHZ晶振。RST/VPD(9脚)为复位输入端口,外接电阻电容组成的复位电路。P0P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(3239脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。主要功能特性1、兼容MCS51指令系统2、8K可反复擦写大于1000次)FLASHROM;3、32个双向I/O口;4、256X8BIT内部RAM;5、3个16位可编程定时/计数器中断;6、时钟频率024MHZ;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。引脚说明P0口0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流IIL。与AT89C51不同之处是,P10和P11还可分别作为定时/计数器2的外部计数输入(P10/T2)和输入(P11/T2EX)。P2口P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流IIL。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口输出P2锁存器的内容。FLASH编程或校验时,P2亦接收高位地址和一些控制信号。P3口P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能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仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需注意的是如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。FLASH存储器编程时,该引脚加上12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。XTAL1振荡器反相放大器的及内部时钟发生器的输入端。XTAL2振荡器反相放大器的输出端。AT89C52引脚图如下所示AT89C52引脚图232时钟电路模块的设计1DS1302的性能特性图232示出DS1302的引脚排列图,其中VCC1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由VCC1或VCC2两者中的较大者供电。当VCC2大于VCC102V时,VCC2给DS1302供电。当VCC2小于VCC1时,DS1302由VCC1供电。X1和X2是振荡源,外接32768KHZ晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在VCC大于等于25V之前,RST必须保持低电平。中有在SCLK为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。如图232所示图232DS1302的引脚图2DS1302数据操作原理DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲。DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM1,对时间进行读/写时,CK0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。DS1302的日历、时间寄存器内容“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,“WP”必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。233显示模块的设计1LCD1602的基本参数及引脚功能LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表233所示编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表233引脚接口说明表第1脚VSS为地电源。第2脚VDD接5V正电源。第3脚VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄器。第5脚R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚D0D7为8位双向数据线。第15脚背光源正极。第16脚背光源负极。2LCD1602液晶显示如图1所示图1LCD1602液晶显示234按键模块的设计根据设计要求需要选择五个独立按键分别为选择、加、减、确定、复位,按键模块如图2所示图2按键模块设计235温度采集模块的设计DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。如图235所示图235DS18B20的外形及管脚排列DS18B20工作原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2S减为750MS。DS18B20测温原理如图3所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。图3DS18B20测温原理第3章系统的软件设计31主程序流程图如图31所示开始初始化LCD、时间日期、温度处理程序允许LCD显示读取时间、温度LCD显示LCD关闭YESNO扫描按键时间设定日期设定图31主程序流程图32按键扫描子程序调整时间用4个调整按钮,1个作为选择控制用,另外3个分别作为加调整,减调整和确定用,另加1个复位键。时间调整程序流程图如图32所示开始按键有效,进入秒调整子程序等待按键子程序加键有效减键有效秒加1秒减1按键有效,进入分调整子程序等待按键子程序加键有效减键有效分加1分减1按键有效,进入星期调整子程序等待按键子程序加键有效减键有效星期加1星期减1按键有效,进入时调整子程序等待按键子程序加键有效减键有效时加1时减1按键有效,进入日调整子程序等待按键子程序加键有效减键有效日加1日减1按键有效,进入月调整子程序等待按键子程序加键有效减键有效月加1月减1按键有效,进入年调整子程序等待按键子程序加键有效减键有效年加1年减1按键有效,跳出时间调整子程序,进入主循环程序结束图32时间调整程序流程图按键扫描子程序如下VOIDUPKEY/升序按键UP1IFUP0|WIRELESS_21MDELAY8SWITCHCOUNTVOIDDOWNKEY/降序按键DOWN1IFDOWN0|WIRELESS_31MDELAY8SWITCHCOUNTVOIDSETKEY/模式选择按键SET1IFSET0|WIRELESS_41MDELAY8COUNTCOUNT1/SETKEY按一次,COUNT就加1DONE1/进入调整模式WHILESET0WHILEWIRELESS_41VOIDKEYDONE/按键功能执行UCHARSECONDIFFLAG0/关闭时钟,停止计时WRITE13020X8E,0X00/写入允许TEMPREAD13020X80WRITE13020X80,TEMP|0X80WRITE13020X8E,0X80/禁止写入FLAG133LCD初始化子程序LCD初始化程序流程图如图33所示图33LCD初始化程序流程图LCD初始化子程序如下/初始化LCDVOIDLCD_INITIALLCDEN0LCD_WRITELCD_COMMAND,0X38/8位数据端口,2行显示,57点阵LCD_WRITELCD_COMMAND,0X38LCD_SETDISPLAYLCD_SHOW|LCD_NO_CURSOR/开启显示,无光标LCD_WRITELCD_COMMAND,LCD_CLEAR_SCREEN/清屏LCD_SETINPUTLCD_AC_UP|LCD_NO_MOVE/AC递增,画面不动/液晶字符输入的位置VOIDGOTOXYUNSIGNEDCHARX,UNSIGNEDCHARYIFY0LCD_WRITELCD_COMMAND,0X80|XIFY1LCD_WRITELCD_COMMAND,0X80|X0X40/将字符输出到液晶显示VOIDPRINTUNSIGNEDCHARSTRWHILESTR0LCD_WRITELCD_DATA,STRSTR写指令0X38,显示模式设置写指令,显示光标写指令,光标移动清屏34DS18B20子程序程序和流程图如下所示VOIDTEMP_TO_STR/温度数据转换成液晶字符显示TEMPBUFFER0TEMP_VALUE/100/十位TEMPBUFFER1TEMP_VALUE100/个位TEMPBUFFER20XDF/温度符号TEMPBUFFER3CTEMPBUFFE

温馨提示

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

评论

0/150

提交评论