基于at89c51的温控制系统设计使用ds18b20温度控制内容摘要:

真工具 Proteus 和单片机编程软件 Keil 实现了系统软、硬件的交互仿真,并结合液晶显示器 1602C、DS18B20 和 STC89C52RC 单片机开发板进行了电路焊接和调试,实现了课题设计目的。 验码,这也是多个 DSl8B20 可以采 用 一线进行通信的原因。 64 位激光 ROM 的机构如表 1所示: 表 1 64位激光 ROM的结构 8位 CRC编号 48位 序列号 8位 产品系列编码 MSB LSB MSB LSB MSB LSB DSl8B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可 电擦除 EEPRAM。 后者用于存储 TH, TL值。 数据先写入 RAM,经校验后再传给 EEPRAM。 而配置寄存器为高速暂存器中的第 5 个字节,他的内容用与确定温度值 的数字转换分辨率,DSl8B20 工作时按此寄存器中的分辨率将温度转换为相应精度 的数值。 低 5位一直都是1, TM是测试模式位,用 于设置 DSl8B20 在工作模式还是在 测试模式。 如表 2 所示。 在DSl8B20 出厂时该位被设置为 0,用户不要去改动, Rl 和 R0 决定温 度转换精度位数。 表 2 字节各位的定义 TM R1 R0 1 1 1 1 1 由表 3可见, 设 定的分辨率越高,所需要的温度数据转换时间就越长。 因此, 在实际应用中要在分辨率和转换时间权衡考虑。 高速暂存存储器除了配置寄存器外,还有其他 8个字节组成,其分配如表 4 所示。 其中温度信息 (第 l, 2字节 ), TH 和 TL 值第 3,4节,第 6~ 8字节,表现为全 逻辑 1;第 9字节读出的是前 面所有的 8字节的 CRC 码,可用来保证通信正确。 表 3 数据分辨率和转换时间 R1 R0 分辨率 温度最大转换时间/ms 0 0 9 0 1 10 1 0 11 1 1 12 当 DSl8B20 接收到温度转换命令后,开始启动转换 ,如表 4 所示。 转换完成后的温度值就 以 16 位带符号扩展到二进制补码形式储存在高速暂存存储器的第 l, 2 字节。 单片机可通过单线接口读到该数据,读取时低位在前面,高位在后,数据格式以 ℃/ LSB 形 式表示。 对应的温度计算:当符号位 S=0 时,直接将二进制位转 换为十进制;当 S=1时,先将补码变换为原码,再计算十进制值。 表 4 码制转换 温度低位 温度高位 TH TL 配置 保留 保留 保留 8位 CRC 在 DSl8B20 完成温度变换之后,温度值与贮存 TH和 TL 内的触发值相比较因 为这些寄存器仅仅是 8 位,所以 ℃ 位在比较时被忽略。 TH 或 TL 的最高有较位直接 对应于l6 位温度奇存器的符号位。 如果温度测量的结果高于 TH或低于 TL,那么 器件内告警标志将置位。 每次温度测量更新此标志。 只要告警标志置位, DSl8B20 将对告警搜索命令做出响应。 这允许并联连接许多 DSl8B20,同时进行温度测量。 如果某处温度超过极限,那么可以识别出正在告警的器件并立即将其读出而不必读 出 非告警的器件。 部分温度转换如表 5所示 : 表 5 部分温度 转换 值 温度 输入( 2进制) 输出( 16进制) +125℃ 0000 0111 1101 0000 07D0H +85℃ 0000 0101 0101 0000 0550H +℃ 0000 0001 1001 0001 0191H +℃ 0000 0000 1010 0010 00A2H +℃ 0000 0000 0000 1000 0008H 0℃ 0000 0000 0000 0000 0000H ℃ 1111 1111 1111 1000 FFF8H ℃ 1111 1111 0101 1110 FF5EH ℃ 1111 1111 0101 1110 EE6FH 55℃ 1110 1110 0110 1111 FE90H DSl8B20 具体参数及工作方式 参数特性: ( 1) 独特的单线接口只需 l个接口引脚即可通信 ( 2) 多点综合测温能力使分布式温度检测应用得以简化 ( 3) 不需要外部元件 ( 4) 可用数据线供电 ( 5) 需备份电源 ( 6) 测量范围从 55℃ 至 +125℃ 增量值为 0. 5℃ ( 7) 以 9位数字值方式读出温度 ( 8) 在 1秒 (典型值 )内把温度变换为数字 ( 9) 用户可定义的非易失性的温度告警设置 ( 10) 告警搜索命令识别和寻址温度在编定的极限之外的器件温度告警情况 ( 11) 应用范围包 括恒温控制工业系统消费类产品温度计或任何热敏系统 极限参数: ( 1) 任何引脚相对于地的电压 至 + ( 2) 运用温度 55℃ 至 +125℃ ( 3) 贮存温度 55。 C 至 +125℃ ( 4) 焊接温度 260℃ /l0秒 DS18B20 与单片机接口电路 如图 6所示,为单片机与 DS18B20 的接口电路。 DS18B20 只有三个引脚,一个接地,一个接电源,一个数字输入输出引脚接单片机的 口电源与数字输入输出脚间需要接一个 的电阻。 图 6 DS18B20与单片机接口电路 DSl8B20 使用中注意到事项: DSl8B20 虽然具有测温系统简单,测温精度高、连接方便、占用 I/ O 口线少等 优点,但在实际应用中也应注意以下问题: ( 1) 在实际片使用中发现,应使电源电压保持在 5v左右,如果电压过低,会使 所测得到温度与实际温度出现偏高现象,使温度输出定格在 85℃ ( 2) 连接 DSl8B20 的总线电缆是有长度限制的。 当采用普通信号电缆传输长度 超过 50m时,读取的测温数据发生错误,当采用双绞线带屏蔽电缆为总 线电缆时, 正常通讯距离可达 l50m,当采用每米胶合次数更多 的双绞线带屏蔽电缆时,正常通讯距离可以进一步加长。 这种情况主要由总线分布电容使信号波形产生畸变造成的。 因此,存进行长距离测量时要充分考虑总线分布电容和阻抗匹配问题。 LM016L 液晶显示器和单片机接口技术 LM016L 显示器简介 LM016L 字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式 LCD, VDD DS18B20 DQ GND 单 片 机 目前常用 16*1, 16*2, 20*2 和 40*2 行等的模块。 显示字符时, 由于 LM016L 内带字符发生器的控制器,可以让控制器工 作在文本方式,根据在 LCD 上开始显示的行列号及每行的列数找出显示 RAM 对应的地址,设立光标,在此送上该字符对应的代码 即可。 1602LCD 的基本参数及引脚功能 1602LCD 分为带背光和不带背光两种,基控制器大部分为 HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图 7所示。 图 7 LM016L结构图 LCD1602 主要技术参数: 容量 :162 个字 符 芯片工作电压 :— 工作电流 :() 模块最佳工作电压 : 字符尺寸 :(WH)mm 引脚功能说明 : 1602LCD 采用标准的 14 脚(无背光)或 16脚(带背光)接口,各引脚接口说明如表 6所示: 表 6引脚接口说明表 编号 符号 引脚说明 编号 符号 引脚说明 1 VSS 电源地 9 D2 数据 2 VDD 电源正极 10 D3 数据 3 VL 液晶显示偏压 11 D4 数据 4 RS 数 据 /命令选择 12 D5 数据 5 R/W 读 /写选择 13 D6 数据 6 E 使能信号 14 D7 数据 7 D0 数据 15 BLA 背光源正极 8 D1 数据 16 BLK 背光源负极 第 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端由高电平跳变成低电平时,液晶模块执行命令。 第 7~ 14 脚: D0~ D7 为 8位双向数据线。 第 15脚:背光源正极。 第 16脚:背光源负极。 LM016L 与单片机接口电路 系统 显示 电路由单片机 AT89C5字符液晶显示器 LM016L 和 1k 8的排组构成。 单片机实现对 LCD命令和显示数据的 读写控制功能, P0口作数据口,与 LM016L 的 D0~ D7相接,在 P0 口与 D0~ D7数据线之间分别接 8 个上拉电阻,以确保电路能够正常显示。 AT89C51 的 P1 口作为 LCD的控制线, ~ LM016L 的 RS、 RW 和 E端; LM016L的其它三个控制端 VDD 和 VSS、 VEE 分别接电源和地。 系统显示电路组成如图 8 所示。 X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 . 01P 1 . 12P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1A T 8 9 C5 1D714D613D512D411D310D29D18D07E6RW5RS4VSS1VDD2VEE3L C D 1L M 0 1 6 L23456789 1R P 11K 图 8 系统硬件电路组 成 键盘电路设计 行列式键盘与单片机接口电路 根据本设计需要,本系统采用 2 2 键盘实现对温度值和功能键的设定。 行列式键盘与单片机接口电路如图 9 所示, H0H1 为行线,接单片机 P2口的 、 口, L0L1 为列线,接单片机的 、 口。 初始化时键盘列线为高电平,行线为低电平。 列线上需接 10K的上拉电阻。 图 9 2 2键盘结构 Proteus 中 2 2 键盘的制作 首先在 Proteus 中画出键盘面板,如图 10 所示, 并指定键盘的左上角为坐标圆点,用软件中的坐标跟踪功能检测出面板按键的边长为 300mm 和中心坐标,分别为:( 300,400 )( 300,700)( 700,400)( 700, 700)。 图 10 2 2键盘面板 在 Proteus 中选中制作的面板右击鼠标,选 Make Device 选项,制作步骤如下图 11所示 : (a) (b) (c) (d)。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。