基于-单片机数字温度控制系统_第1页
基于-单片机数字温度控制系统_第2页
基于-单片机数字温度控制系统_第3页
基于-单片机数字温度控制系统_第4页
基于-单片机数字温度控制系统_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、-. z摘要本课题设计以AT89C52单片机为核心,采用相应的传感器设计了一种温度控制系统。该系统可对温度等关键数据进展自动监控。本文完成了系统的硬件组成构造图和相关软件程序框图,并详细说明了本套系统的工作原理。系统采用单总线传感器网络设计思想。其中温度传感器都以智能终端的形式挂接到单总线上,多条单总线汇总到一起,由一台数据采集器集中控制,每台数据采集器负责一定区域的温度监测。数据采集器的核心部件为单片机,主要完成对其所连接传感器件的测量与控制以及与主机的通信等功能。关键字:AT89C52 传感器 温度控制系统目录 TOC o 1-3 h z u HYPERLINK l _Toc2640960

2、60第一章 绪论 PAGEREF _Toc264096060 h - 1 -HYPERLINK l _Toc2640960611.1 课题研究的目的和意义 PAGEREF _Toc264096061 h - 1 -HYPERLINK l _Toc2640960621.2 温度数据采集现状以及开展方向 PAGEREF _Toc264096062 h - 1 -HYPERLINK l _Toc264096063第二章 系统总体方案设计 PAGEREF _Toc264096063 h - 3 -HYPERLINK l _Toc2640960642.1工程设计目标 PAGEREF _Toc264096

3、064 h - 3 -HYPERLINK l _Toc2640960652.2元件选择 PAGEREF _Toc264096065 h - 3 -HYPERLINK l _Toc264096066主控芯片 PAGEREF _Toc264096066 h - 3 -HYPERLINK l _Toc264096067温度采集模块 PAGEREF _Toc264096067 h - 4 -HYPERLINK l _Toc264096068显示模块 PAGEREF _Toc264096068 h - 5 -HYPERLINK l _Toc264096069智能报警模块 PAGEREF _Toc2640

4、96069 h - 6 -HYPERLINK l _Toc264096070第三章 系统主要元件简介 PAGEREF _Toc264096070 h - 7 -HYPERLINK l _Toc2640960713.1 温度传感器 DS18B20 PAGEREF _Toc264096071 h - 7 -HYPERLINK l _Toc2640960723.1.1 DS18B20 简介 PAGEREF _Toc264096072 h - 7 -HYPERLINK l _Toc2640960733.1.2 DS18B20 的部构造 PAGEREF _Toc264096073 h - 8 -HYPE

5、RLINK l _Toc2640960743.2AT89S52单片机 PAGEREF _Toc264096074 h - 11 -HYPERLINK l _Toc2640960753.3液晶显示器LCD1602 PAGEREF _Toc264096075 h - 13 -HYPERLINK l _Toc264096076第四章 温度控制系统原理及分析 PAGEREF _Toc264096076 h - 18 -HYPERLINK l _Toc2640960774.1系统总体流程图 PAGEREF _Toc264096077 h - 18 -HYPERLINK l _Toc2640960794.

6、2 系统各个局部电路设计 PAGEREF _Toc264096079 h - 19 -HYPERLINK l _Toc264096080单片机主控电路设计 PAGEREF _Toc264096080 h - 19 -HYPERLINK l _Toc264096081按键电路设计 PAGEREF _Toc264096081 h - 20 -HYPERLINK l _Toc264096082液晶显示电路 PAGEREF _Toc264096082 h - 22 -HYPERLINK l _Toc264096083温度检测电路 PAGEREF _Toc264096083 h - 27 -HYPERL

7、INK l _Toc264096084输出控制电路 PAGEREF _Toc264096084 h - 29 -HYPERLINK l _Toc264096085报警电路 PAGEREF _Toc264096085 h - 32 -HYPERLINK l _Toc264096086第五章 调 试 PAGEREF _Toc264096086 h - 33 -HYPERLINK l _Toc264096087结 论 PAGEREF _Toc264096087 h - 34 -HYPERLINK l _Toc264096088参考文献 PAGEREF _Toc264096088 h - 35 -HY

8、PERLINK l _Toc264096089致 PAGEREF _Toc264096089 h - 37 -HYPERLINK l _Toc264096090附录 PAGEREF _Toc264096090 h - 38 -. z第一章 绪论1.1 课题研究的目的和意义温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立准确的数学模型,从而导致控制系统性能不佳,

9、甚至出现控制不稳定、失控现象。传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不良而影响正常工作。控制领域还大量采用传统的PID控制方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。采用数字温度传感器DS18B20,因其部集成了A/D转换器,使得电路构造更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加准确。数字温度传感器DS18B20只用一个引脚即可与单片机进展通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。由于DS18B20芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B2

10、0做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字温度传感器DS18B20进展围的温度检测。1.2 温度数据采集现状以及开展方向最早的也是最简单的实现对温度的监测是采用人工的方式,这种方式不仅效率低,劳动时间长,而且会由于抽样的不具代表性使得监测结果失去其原有的意义。该方式还有一个弊端其应用场所有很大的局限性,提取存有炸药等危险品的仓库温度数据的工作人员还要承当一定的风险。后来随着电子技术的出现与进步,科研人员开场采用温度传感器代替原始的温度计,开发出了以单片机为核心的监测系统,并佐以接口芯片将结果显示在LED 数码显示管上,单片机可直接控制打印监测数据。这种方式在很大程度上提高了工

11、作效率,并扩展了应用围。第二章 系统总体方案设计如图2-1所示此温度控制系统先是温度感应原件进展温度采集,A/D转换后送入到单片机然后显示输出和智能温度报警,如果需要修改温度参数或者是查看设置和其他功能,则由键盘控制电路输入。温度采集键盘控制单片机AT89S52显示输出智能报警A/D转换图2-1 系统总体方案2.1工程设计目标设计工业温度控制系统,应可实现实时温度检测,近程和远程数据传输,液晶显示,键盘控制电路,可设定监控温度上下限,过限报警电路,过压保护,可持续工作,掉电复位,具有高可靠性和低生产本钱,低功耗,高精度等特性。2.2元件选择2.2.1主控芯片方案一:采用数字逻辑电路。本系统有功

12、能设置、数据装入、定时、显示、声音提示多个功能模块。各个状态保持或转移的条件依赖于键盘控制信号。由于键盘控制信号繁多,系统的逻辑状态以及相互转移更是复杂,用纯粹的数字电路或小规模的可编程逻辑电路实现该系统有一定的困难,需要用规模的可编程逻辑电路。这样,系统复杂且难以实现。因此,本设计并未采用这种方案。方案二:采用单片机作为整个控制系统的核心。鉴于市场上常见的51系列8位单片机的售价比拟低廉,本设计采用了AT89S52单片机系统。具体方案如下:首先,利用单片机多中断源的协调处理能力,通过扫描接收键盘送来的信号,确认功能设置,实现数据装入,利用单片机部定时器倒数设置时间,利用中断动态扫描控制显示电

13、路,用单片机I/O口控制外部继电器以及提示电路。由此可知,采用方案二较为合理,降低开发难度。2.2.2温度采集模块方案一低电压10位数字温度传感器AD7314ADI公司新近推出的AD7314是一种采用8引脚SOIC封装的完整温度监测系统。它包含一个带隙式温度传感器和10位模数转换器ADC,具有温度监测的能力,其数字化温度读数分辨率为0.25。AD7314带有一个与SPI,QSPI和MICRO-WIRETM协议兼容的灵活串行接口,允许它与数字信号处理器DSP和大多数微控制器方便地连接。它具有低的电源电流特性,这使其适合各种应用,包括个人计算机、办公设备和消费类电子。它的另一个特点是包含一个部温度

14、传感器,在3585温度围测量精度为2,电源电压围为2.65V2.9V,并且采用小外形8引脚SOIC封装。另外,它还具有待机工作方式的特点,可将功耗电流进一步降低到最大值为1A。AD7314非常适合那些低功耗、低电压是主要考虑因素的便携式和电池供电的应用场合。这些应用包括移动、消费类电子、个人计算机和过程控制设备。缺点是价格比拟昂贵。方案二热电偶传感器热电偶传感器具有价廉、精度高、构造简单、测量围宽(通常从- 50 + 1600 )及反响快速的优点。热电偶传感器输出的电压信号较为微弱(只有几毫伏到几十毫伏) , 因此在进展A/ D 转换之前必须进展信号调理, 由高放大倍数的电路将它放大到A/ D

15、 转换器通常所要求的伏特级电平。一般采用热电偶调理模板或调理模块来完成这项工作最为便捷, 而自行设计、制作仪表放大器则较为繁琐且较难保证精度。方案三可编程分辨率一线数字温度传感器DS18B20DS18B20 是由美国DALLAS 公司提供的一种单总线系统的数字温度传感器,它可提供二进制9 位温度信息,分辨率为0. 5 ,可在- 55 + 125 的围测量温度。从中央处理器到DS18B20 仅需连接一条信号线和地线,其指令信息和数据信息都经过单总线接口与DS18B20 进展数据交换。DS18B20 完成读、写和温度变换所需的电源可以由数据线本身提供,也可以由外部供应。并且,每个DS18B20 有

16、唯一的系列号,因此同一条单总线上可以挂接多个DS18B20 ,构成主从构造的多点测温传感器网络。此特性可普遍应用在包括环境监测、建筑物和设备的温度场测量,以及过程监视和控制中的温度检测中。由比拟可知,选用方案二相比照拟廉价的DS18B20更好,能提高A/ D 转换精度的同时确保信号完整性,较少开发难度。2.2.3显示模块方案一采用液晶显示。液晶显示的优点是显示的容多,可以提供中文显示,背景光亮度可调,硬件接线少。缺点是价格昂贵,且容易烧毁,必须加限流电阻。方案二采用动态数码管显示。优点是显示时间较为清晰,远距离也能看清。而且价钱廉价,一个四位动态数码管才四块钱,大大节省了本钱。缺点是电路接线较

17、多,显示容少,只能显示数字,不能显示中文。考虑到显示与本钱,采用方案二较为适宜2.2.4智能报警模块方案一、采用语音芯片实现语音提示。语音芯片优点是能输出各种录制好的声音,输出容易丰富。缺点是电路复杂,价钱贵,而且要先录制才能播放。方案二、采用蜂鸣器输出双频音提示。优点是电路简单,价钱廉价。考虑本钱与本设计只需要一种工作完成的提示,用简单的蜂鸣器电路已经足够,应选择方案二。第三章 系统主要元件简介3.1 温度传感器 DS18B20系统中温度测试点的数据采集由 Dallas 公司的单总线数字温度传感器 DS18B20 完成。DS18B20具有3引脚TO92小体积封装形式;温度测量围为55125,

18、可编程为9位12位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。3.1.1 DS18B20 简介1独特的单线接口方式,只需一个接口引脚即可通信;2每一个 DS18B20 都有一个唯一的 64 位 ROM 序列码;3在使用中不需要任何外围元件;4可用数据线供电,电压围:+3.0V+5.5 V;5测温围

19、:-55 +125 ,在-10+85围精度为0.5,分辨率 0.0625。等效的华氏温度围是-67F+257F;6通过编程可实现 912 位的数字读数方式。温度转换成 12 位数字信号所需时间最长为 750ms,而在 9 位分辩模式工作时仅需 93.75ms;7用户可自设定非易失性的报警上下限值;8告警搜索命令可识别和定位那些超过报警限值的 DS18B20;9支持多点组网功能,多个 DS18B20 可以并联在唯一的三线上,实现多点测温。10电源极性接反时,DS18B20 不会因发热而烧毁,但不能正常工作。3.1.2 DS18B20 的部构造DS18B20 采用 3 引脚 TO92 小体积封装,

20、其部构造如图 3-1 所示,主要由 4 局部组成:64 位 ROM 序列码、温度传感器、非易失性的温度报警触发器 TH 和 TL、配置存放器。图 3-1 DS18B20 的部构造ROM 中的 64 位序列码是出厂前被光刻好的,它可以看作是该 DS18B20 的地址序列码,每个 DS18B20 的 64 位序列码均不一样。如图 3-2 所示,64 位光刻 ROM 的排列是:开场 8 位是单线产品系列编码比方 DS18B20 的编码是 28h,DS1820 的编码是 10h,DS2438 的编码是 26h,同一型号的单总线器件的编码一样。接着的 48 位是该 DS18B20唯一的序列号,最后 8

21、位是前面 56 位的循环冗余校验码CRC=*8+*5+*4+1。单总线器件的序列号唯一性特点,保证了在一根总线上可以挂接多个单总线器件的实现。8位CRC编号48位序列号8位产品系列编码MSB LSB MSB LSB MSB LSB(最高有效位) (最低有效位)图 3-2 64 位 ROM 构造示意图如图 3-3 所示,DS18B20 的部存储器包括一个高速暂存便笺式RAM 和一个非易失性 EEPROM高温触发器 TH、低温触发器 TL 和配置存放器。暂存存储机制有利于在单线通信时确保数据的完整性。数据通常首先写入暂存存储器,在那里它可以被读回。当数据被校验后,复制暂存存储器的命令把数据传送到非

22、易失性 EEPROM。这一过程确保了更改存储器时数据的完整性。同时非易失性 EEPROM 也保证了 TH、TL 与配置存放器容的掉电不丧失,器件每一次上电时这三个字节的容被重置到高速暂存 RAM 对应的空间。图 3-3 DS18B20 的存储器组织高速暂存存储器是按9个8位字节存储器来组织的。其中第 0、1个字节为只读型字节,分别包含测得温度信息的低位和高位字节,第 2 和第 3 个字节是 TH 和 TL 的易失性拷贝,在每一次上电复位时被刷新。如果在使用 DS18B20 的过程中不对其施加告警搜索命令,则第 2 和第 3 个字节可用作通用用户存储器,在本系统中即作为通用存储器使用,定义这两个

23、字节存储该温度传感器在系统中的序号,为每个温度传感器分配的序号在系统中是唯一的。第 4 个字节为配置存放器,接着的三个字节为器件部使用而保存,不可对其施加写命令。第8 个字节为只读型字节,它是前面所8个字节的循环冗余校验字节CRC。Bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 0 R1 R0 1 1 1 1 1图 3-4 配置存放器其中配置存放器的构造如图 3-4,R1 和 R0 用于确定温度值的数字转换分辨率,DS18B20 工作时按此存放器中的分辨率将温度转换为相应精度的数值。如表 3-1 所示DS18B20 出厂时被设置为 12 位。表 3-1 R1 和

24、 R0 模式表R1R0分辨率最大的温度转换时间009-bit93.75ms0110-bit187.5ms1011-bit375ms1112-bit750ms由表 3-1 可见,设定的分辨率越高,所需要的温度数据转换时间就越长。本系统中对于各 DS18B20 的配置存放器都没有进展修改,即采用其出厂时的配置,使得采集到的温度值分辨率可到达 12bit。当 DS18B20 接收到温度转换命令后,开场启动转换。转换完成后的温度值以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的第 0,1 字节。主机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以 0.0625 /LSB 形式

25、表示。3.2AT89S52单片机为适应系统的模块化设计,本系统控制芯片采用了intel公司的51系列高性能单片机,为了满足大存,高速率和通用性等要求,选择了AT89S52单片机。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能: 8k字

26、节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断构造,全双工串行口,片晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停顿工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM容被保存,振荡器被冻结,单片机一切工作停顿,直到下一个中断或硬件复位为止。图3-5为单片机AT89S52的引脚图,AT89S52为40引脚芯片,采用直插式封装,其中20引脚接地线,40引脚接供电电源,其它引脚功能略。图3-5 AT89S52引脚图AT89S

27、52主要性能与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器1000次擦写周期全静态操作:0Hz33Hz三级加密程序存储器32个可编程I/O口线三个16位定时器/计数器八个中断源全双工UART串行通道低功耗空闲和掉电模式掉电后中断可唤醒看门狗定时器双数据指针掉电标识符3.3液晶显示器LCD160211602LCD主要技术参数显示容量为162个字符;芯片工作电压为4.55.5V;工作电流为2.0mA5.0V;模块最正确工作电压为5.0V;字符尺寸为2.954.35WHmm。2接口,信号说明1602LCD采用标准的14引脚无背光或16引脚带背光接口,各引脚接口说明见表表3-2 16

28、02液晶接口引脚定义编号符号引脚说明编号符号引脚说明1VSS电源地9D2Date I/O2VDD电源正极10D3Date I/O3VL液晶显示偏压信号11D4Date I/O4RS数据/命令选择端V/L12D5Date I/O5R/W读/写选择端H/L13D6Date I/O6E使能信号14D7Date I/O7D0Date I/O15BLA背光源正极8D1Date I/O16BLK背光源负极1、2 组电源 一组是模块的电源 一组是背光板的电源 均为5V 供电。2、VL 是调节比照度的引脚调节此脚上的电压可以改变黑白比照度3、RS 是很多液晶上都有的引脚 是命令/数据选择引脚 该脚电平为高时表

29、示将进展数据操作;为低时表示进展命令操作。4、RW 也是很多液晶上都有的引脚 是读写选择端 该脚电平为高是表示要对液晶进展读操作;为低时表示要进展写操作。5、E 同样很多液晶模块有此引脚 通常在总线上信号稳定后给一正脉冲通知把数据读走,在此脚为高电平的时候总线不允许变化。6、D0D7 8 位双向并行总线,用来传送命令和数据。7、BLA是背光源正极,BLK是背光源负极。3控制器接口说明根本操作时序见表 读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=

30、H,R/W=L,D0D7=数据,E=高脉冲输出无对此液晶操作主要有以下几种方法。1 写命令包括但不限于初始化、调节显示位置、去除显示2 写数据 (把一个字符的ASC 码写入液晶使其显示)3 读忙信号液晶乃低速设备,每次操作前应该测试忙信号,确定其不忙时再操作41602LCD的指令码命令码此液晶上电的时候需要初始化 典型的指令码是38H,也就是上电的时候需要 调用 void write_cmd(unsigned char mand)这个函数写指令码,用法是write_cmd(0*38);执行完这个函数可以把液晶初始化成16*2 显示5*7 的点阵8 位总线接口。以下指令码用法一样。此液晶支持的指

31、令码有指令码功能00111000设置162显示,57点,8位数据接口解释:就是0*38 的命令指令码功能00001DCBD=1 开显示;D=0 关显示C=1 显示光标;C=0 不显示光标B=1 光标闪烁;B=0 光标不显示000001NSN=1 当读或写一个字符后地址指针加一,且光标加一N=0 当读或写一个字符后地址指针减一,且光标减一S=1 当写一个字符,整屏显示左移N=1 或右移N=0,以得到光标不移动而屏幕移动的效果。S=1 当写一个字符,整屏显示不移动解释:第一行指令主要能完成的功能是 控制液晶显示否,光标显示否,光标闪烁否.共有以下8 种指令0000100008H关液晶显示 光标不闪

32、烁 不显示光标位置0000100109H关液晶显示 光标不闪烁 显示光标位置000010100AH关液晶显示 光标不闪烁 不显示光标位置000010110BH关液晶显示 光标不闪烁 显示光标位置000011000CH开液晶显示 光标不闪烁 不显示光标位置000011010DH开液晶显示 光标不闪烁 显示光标位置000011100EH开液晶显示 光标不闪烁 不显示光标位置000011110FH开液晶显示 光标不闪烁 显示光标位置解释:第二行指令主要能完成的功能是写完字符 光标或屏幕移动方向指令码功能80H+地址码0-27H,40H-67H设置数据地址指针解释: 用该指令码可以把光标移动到想要的位

33、置这是虚拟的液晶显示图 表示2 行16 列显示 方框中的数字表示当前位置的指针80H81H82H83H84H85H86H87H88H89H8AH8BH8CH8DH8EH8FHC0HC1HC2HC3HC4HC5HC6HC7HC8HC9HCAHCBHCCHCDHCEHCFH例如: 只要调用write_cmd(0*82) ;函数就能把光标挪到第1 行第3 列的位置根本操作时序指令码功能01H显示清屏:1.数据指针清零 2.所有显示清零02H显示回车:1数据指针清零四章 温度控制系统原理及分析4.1系统总体流程图系统的工作流程如图4-1,首先器件上电复位,温度检测芯片DS18B20检测当前温度。单片机

34、从DS18B20中读出温度值,并与DS18B20非易失性存储器中的TH,TL值比拟其中TH为设定温度最高值,TL为设定温度最低值,并显示输出当前温度值,如果发生超限,即智能报警。注意,除非电路掉电复位,又或者是温度恢复正常,否则报警器不会停顿。当超限报警后,我们可以通过键盘控制电路进展温度上下限调节,使温度报警解除。键盘控制电路可以显示当前设置的上下限温度值,以及修改温度值。上电复位温度检测单片机AT89S52智能报警显示输出键盘控制温度修正图4-1 系统总体流程图在实际环境中,我们就要注意此时环境温度已经超过了我们预定值,为了不造成损失我们要做好必要的防措施。4.2 系统各个局部电路设计4.

35、2.1单片机主控电路设计图4-2 单片机外围主控电路单片机主控电路如图4-3所示包括电源复位电路和晶体振动电路。复位电路的根本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。当开关RST闭合后经过一小段时间的延时后单元稳定,RST端口变为高电平,产生复位信号,单片机复位。图4-3 晶振电路晶振电路图4-3:*TAL1和*TAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片振荡器。石晶振荡和瓷振荡均可采用。如采用外部时钟源驱动器件,*TAL2应不接。有余输入至

36、部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的上下电平要求的宽度。晶振与单片机的脚*TAL0和脚*TAL1构成的振荡电路中会产生偕波(也就是不希望存在的其他频率的波),这个波对电路的影响不大,但会降低电路的时钟振荡器的稳定性. 为了电路的稳定性起见,ATMEL公司建议在晶振的两引脚处接入两个10pf-50pf的瓷片电容接地来削减偕波对电路的稳定性的影响,晶振所配的电容在10pf-50pf之间都可以。在许可围,C1,C2值越低越好,C值偏大虽有利于振荡器的稳定,但将会增加起振时间。应使C2值大于C1值,这样可使上电时,加快晶振起振。C1,C2不是必须的,很

37、多三脚的贴片晶振或振部有集成电容。4.2.2按键电路设计图4-54 按键电路按键电路如图4-4所示,按键电路一端接地,另一端接单片机P1口,当按键K01,K02,K03,K04有按下状态,则立刻有信号从P1口进入单片机,单片机做出响应。K01按键接P1.4口,当单片机复位后,P1口全部为高电平。当K01按键按下,P1.4变为低电平,信号输入到单片机,单片机使与温度传感器DS18B20相连的数据线P3.3产生低电平,而且在0到15us期间,必须使P3.3重新拉到高电平,即可在信号线P3.3读取出DS18B20的温度存储器的值,并且必须在P3.3上升到高电平后的T2时刻前读取温度值T1到T2期间D

38、S18B20输出温度值,T2之后上拉电阻把其重新拉回高电平。但是这只是对传感器的位读取操作,用循环指令即可以实现对传感器存储器的读取操作。温度传感器DS18B20的读取时序如图4-5所示。T0T1T215us60us图4-5 DS18B20读取时序图单片机对DS18B20的读取程序:1读位操作读出的位储存到CRDBIT:PUSH B ;保存BPUSH A ;保存AMOV B,*23 ;设置时间常数CLR P1.0 ;读开场T0 时刻NOP ;1usNOP ;1usNOP ;1usNOP ;1usSETB Pl.0 ;释放总线MOV A,P1 ;P1 口读到AMOV C,EOH ;P1.0 容C

39、NOP ;1usNOP ;1usNOP ;1usNOP ;1usRDDLT: DJNZ B,RDDLT ;等待46usSETB P1.0POP APOP BRET2读取字节储存到A中RDBYTE:PUSH B ;保存BRLOP MOV B,*8H ;设置读位数ACALL RDBIT ;调读1 位子程序RRC A ;把读到位在C 中并依次送给ADJNZ B,RLOP ;8 位读是否完POP B ;恢复BRET其他按键操作过程一样,先是按键产生信号,单片机承受不同信号后向DS18B20发出读取或写入信号,当DS18B20承受信号后响应,产生相应的修改,并把数据传送到非易失性存储器中写入TH和TL时

40、。4.2.3液晶显示电路液晶显示电路如图4-7所示,液晶显示器LCD1602通过P0.0P0.7数据线和单片机相连,进展温度数据显示。图4-6 液晶显示电路LCDI602控制指令:LCDI602有11个控制指令,其功能见表4-1表4-1 LCD1602控制功能指令功能1清屏清DDRAM和AC值2归位AC0,光标、画面回HOME位3输入方式设置设置光标、画面移动方式4显示开关控制设置显示、光标及闪烁开、关5光标,画面位移光标、画面移动,不影响DDRAM6功能设置工作方式设置初始化指令7CGRAM地址设置设置CGRAM地址。A5A0=03FH8DDRAM地址设置DDRAM地址设置9读BF及AC值读

41、忙标志BF值和地址计数器AC值10写数据数据写入DDRAM或CGRAM11读数据从DDRAM或CGRAM数据读出1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的,如表4-2所示。表4-2 LCD1602指令控制字指令RSR/WD7D6D5D4D3D2D1D01清屏00000000012归位000000001*3输入方式设置00000001I/DSH4显示开关控制0000001DCB5光标,画面位移000001S/CR/L*6功能设置00001DLNF*7CGRAM地址设置0001字符发生存储器地址ACC8DDRAM001显示数据存储器地址ADD9读BF及AC值01BF计数器

42、地址AC10写数据10要写的数据11读数据11读出的数据1602 液晶显示器采用57 点阵,可以显示2 行,每行16 个字。采用标准的16 脚接口,VSS为电源地,VDD 接5V,V0 为液晶显示屏比照度调整端,接电源正极时比照度最弱,接地时比照度最高。RS 为存放器选择端,高电平时选择数据存放器、低电平时选择指令存放器。RW 为读写信号线,高电平时进展读操作,低电平时进展写操作。当RS 和RW 同为低电平时可以写入指令或显示地址;当RS 为低电平、RW 为高电平时可以读忙信号;当RS 为高电平、RW 为低电平时可以写入数据。E 端为使能端,当RW 为高电平时,E 端为高电平可执行读操作;当R

43、W 为低电平时,E 端从高电平跳变成低电平可执行写操作。DB0DB7 为8 位双向数据线。LCD1602液晶显示器数据线DB0DB7连接单片机P0口,3条控制线RS,RW,E分别接P20,P21,P22。VO可连接一5K电位器来调节显示器比照度。第15脚可连接一个1K电阻或电位器来调节显示器亮度。液晶显示器初始化:SET_LCD: ;对 LCD 做初始化设置及测试 CLR LCD_EN CALL INIT_LCD ;初始化 LCD CALL STORE_DATA ;将自定义字符存入LCD的CGRAM RETINIT_LCD: ;8位I/O控制 LCD 接口初始化 MOV A,*38H ;双列显

44、示,字形5*7点阵 CALL W call delay1 MOV A,*38H CALL W call delay1 MOV A,*38H CALL W call delay1 MOV A,*0CH ;开显示,显示光标,光标不闪烁 CALL W call delay1 MOV A,*01H ;去除 LCD 显示屏 CALL W call delay1 RET4.2.4温度检测电路图4-7 温度检测电路如图4-7所示,温度检测器件DS18B20通过数据线DS连接单片机的P3.3口,Vdd接电源正极,通过R3连接到P3.3口。这是传感器外接电源的接法,另一种接法是直接DS连接P3.3,VCC和GN

45、D接地,这个叫做寄生电源,即DS18B20的供电电源是单片机的P3.3口,但是这样接法要保证DS18B20在温度转换的时候P3.3必须为高电平,而且要至少持续500ms,也就是说,P3.3口在DS18B20数据转换的时候就不能传送任何数据。相对来说运用外接电源的方法,P3.3数据线就可以在任何时候不受限制的传送数据。另外由图可见外接了一个4.7K的电阻R3,这个主要是因为在DS18B20温度转换执行Convert T命令的时候最少要消耗1MA的电流,这时候P3.3口可能没有足够的能量提供,就需要外接的VCC通过R3提供能量。开场复位DS18B20跳过Rom命令温度转换命令延时1S读出温度数据输

46、入单片机完毕图4-8 温度采集程序框图单片机和DS18B20之间的信号传送如图4-8所示。DS18B20复位有两种形式,一是掉电,此时DS18B20没用供电能源,故不能工作,当重新接上电源后恢复工作。二是当单片机P3.3持续低电平超过480ms的时候,DS18B20产生复位,所以当单片机由于*些原因使得P3.3长时间低电平的时候会使DS18B20复位,使系统产生不稳定。当DS18B20复位后单片机发送一条Skip Rom命令,使得单片机跳过对DS18B20的检测,Skip Rom命令的作用就是单片机对DS18B20的识别,当有多片DS18B20时这个命令就可以区分出不同的DS18B20,从而使

47、单片机对不同的DS18B20发出指令。系统中只有一片DS18B20故不必采用Skip Rom命令而直接发送执行命令即可。单片机直接发送温度转换命令,此时单片机或外接电源必须提供足够的电流最少1mA,持续时间为500ms。因DS18B20温度转换时间长达500ms。之后由单片机发出读数据命令,从DS18B20中读出温度数据,并在液晶显示器中显示。DS18B20初始化子程序:RESET:PUSH B ;保存B 存放器PUSH A 保存A 存放器MOV A,*4 ;设置循环次数CLR P1.0 ;发出复位脉冲MOV B,*250 ;计数250 次DJNZ B,$ ;保持低电平500usSETB Pl

48、.0 ;释放总线MOV B,*6 ;设置时间常数CLR C ;清存在信号标志WAITL: Pl.0,WH ;假设总线释放跳出循环DJNZ B,WAITL ;总线低等待DJNZ ACC,WAITL;释放总线等待一段时间SJMP SHORTWH: MOV B,*111WH1: ORL C,P1.0DJNZ B,WH1 ;存在时间等待SHORT: POP APOP BRET输出控制电路通过控制双向导通可控硅的导通百分比来控制电阻丝两端的电压的,以便到达连续控制温度的目的,这样使控制精度得到了保证,双向可控硅串在50Hz交流电源和加热丝电路中,只要在给定周期里改变可控硅开关的接通时间,就能到达改变加热

49、功率的目的,从而实现温度调节,如图4-9所示图4-9可控硅调功器输出功率与通断电时间的关系 对于这样的执行机构,单片机只要输出能控制可控硅通断电时间的脉冲信号就可以了。因此可用一条I/O线与可控硅的控制端相连接,并通过程序实现输出导通脉冲的宽度和导通时间.为了到达过零触发的目的,需要交流电过零检测电路,此电路输出对应于50Hz交流电压过零时刻的脉冲,作为触发双向可控硅的同步脉冲,使可控硅在交流电压过零时刻触发导通。因此,在本系统中采用了双向导通晶闸管来控制电热丝两端的电压。由于控制对象是大电流大功率负载因而采用了晶闸管来控制输出功率。双向晶闸管是一种大功率半导体器件,它与普通单向晶闸管的不同之处在于它能保证电流在两个方向流通,它的特点是:1控制极G上无信号时,晶闸管两端呈高阻抗,管子截止。2管子两端电压超过15V时,无论极性如何,便可利用G触发其导通。3工作与交流时,当每一半周交替时,纯阻负载能恢复截止。另外还须用到光耦合双向可控硅驱动器,它是单片机输出与双向可控硅之间的接口器件,它由输入和输出两局部组成,输入局部是砷化

温馨提示

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

评论

0/150

提交评论