当前位置:首页 > 基于单片机的炉温温度控制系统设计
河南理工大学毕业设计论文
显示5x10的点阵字符。
指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。
指令9:读忙信号和光标地址。BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:写数据。 指令11:读数据。
1602液晶显示模块可以和单片机AT89C51直接连接,其连接图如图2-5所示。
图2-5 1602液晶模块与8951单片机连接图
液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,表2-3是1602的内部显示地址。
13
河南理工大学毕业设计论文 表2-3 1602液晶模块内部显示地址图
1 1 00 2 40
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 09 0A 0B 0C 0D 0E 0F 49 4A 4B 4C 4D 4E 4F
01 02 03 04 05 06 07 08 41 42 43 44 45 46 47 48
比如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H)。
2.3.3 DS18B20数字温度传感器
DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点[14]。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20的性能特点:
(1)DS18B20采用DALLAS公司独特的“单线(1-Wire)总线”专有技术,通过串行通信接口(I/O)直接输出被测温度值(9位二进制数,含符号位)。
(2)测温范围是—55~+125℃。其分辩力为0.5℃,但若采用高分辨力模式,分辩力可达0.1℃。温度/数字量转换时间的典型值为200ms,最大值为500 ms。
(3)内含64位经过激光修正的只读存储器ROM,扣除8位产品系列号和8位循环冗余校验码CRC之后,产品序号占48位。出厂前就作为DS18B20唯一的产品序号,存入其ROM中,在构成大型温控系统时,允许在单线总线上挂接多片DS18B20。
(4)适配各种单片机或系统机。
(5)用户可分别设定各路温度的上、下限并写入随机存储器RAM中。利用报警搜索命令和寻址功能,可迅速识别出发生了温度越限报警的器件。
(6)内含寄生电源。该器件既可以由单线总线供电,也可选用外部+5V电源(允许电压范围是3.4~5.5V),进行温度/数字转换时的工作电流约为1.5mA,待机电流仅为25μA,典型功耗为5mW。 DS18B20的引脚及其功能介绍:
PR—35封装的DS18B20的引脚排列图如图2-6所示。
14
河南理工大学毕业设计论文
图2-6 DS18B20的引脚排列图
DS18B20详细引脚功能描述如表2-4所示。
表2—4 DS18B20引脚功能描述
序号 名称 1 2
GND
引脚功能描述 地信号
DQ 数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电
源下,也可以向器件提供电源。
3
VDD 可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。
DS1820的工作原理:
DS1820的内部结构如图2-7所示。由图2-7可知,DS1820由三个主要数字器件组成:① 64bit闪速ROM;②温度传感器;③非易失性温度报警触发器TH和TL。
DQ 64位R 内部Vdd 存储器和控制逻辑 OM和单总线端口 存 储 器 温度传感器 上触发TH 下触发LH 高速暂存器 8位CRC产生器
电源Vdd 检测 图2-7 DS1820内部结构图
15
河南理工大学毕业设计论文
DS18B20内部的64bit闪速ROM结构如图2-8所示。
8bit校验CRC 48bit序列号 8bit工厂代码(10H) MSB LSB MSB LSB MSB LSB
图2-8 DS1820内部的64bit闪速ROM结构图
当总线为高电平时,DS1820从总线上获得能量并储存在内部电容上。当总线为低电平时,由电容向DS1820供电。
DS1820的测温原理:内部计数器对一个受温度影响的振荡器的脉冲计数,低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振荡器的脉冲无法通过门电路。计数器设置为-55℃时的值,如果计数器到达0之前,门电路未关闭,则温度寄存器的值将增加,这表示当前温度高于-55℃。同时,计数器复位在当前温度值上,电路对振荡器的温度系数进行补偿,计数器重新开始计数直到回零。如果门电路仍然未关闭,则重复以上过程。温度表示值为9bit,高位为符号位,其结构如下图2-9所示[15]。
MSB LSB
1 1 1 0 0 1 1 1 0 图2-9 温度表示值9bit结构图
对DS1820的使用,多采用单片机实现数据采集。处理时,将DS1820信号线与单片机一位口线相连,单片机可挂接多片DS1820,从而实现多点温度检测系统。
系统对DS1820的操作以ROM命令和存储器命令形式出现。 (1)ROM命令代码及其含义
?READROM命令代码[33H]:如果只有一片DS1820,可用此命令读出其序列号,若在线DS1820多于一个,将发生冲突。
?MATCHROM命令代码[55H]:多个DS1820在线时,可用此命令匹配一个给定序列号的DS1820,此后的命令就针对该DS1820。
?SKIPROM命令代码[CCH]:此命令执行后的存储器操作将针对在线的所有DS1820。
?SEARCHRDH命令代码[F0H]:用以读出在线的DS1820的序列号。
?ALARMSEARCH命令代码[ECH]:当温度值高于TH或低于TL中的数值时,此命令可以读出报警的DS1820。 (2)存储器操作命令代码及其含义
16
共分享92篇相关文档