基于89c51单片机的测温系统-温度监控系统设计内容摘要:

公司已经停止生产 89CXX 系列的单片机,现在市面上的AT89CXX 多是停产前的库存产品。 LCD 显示器 1602 液晶模块内部的控制器共有 11 条控制指令,如表 所示: 序号 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清显示 0 0 0 0 0 0 0 0 0 1 2 光标返回 0 0 0 0 0 0 0 0 1 * 3 置输入模式 0 0 0 0 0 0 0 1 I/D S 4 显示开 /关控制 0 0 0 0 0 0 1 D C B 5 光标或字符移位 0 0 0 0 0 1 S/C R/L * * 6 置功能 0 0 0 0 1 DL N F * * 7 置字符发生存贮器地址 0 0 0 1 字符发生存贮器地址 8 置数据存贮器地址 0 0 1 显示数据存贮器地址 9 读忙标志或地址 0 1 BF 计数器地址 10 写数到 CGRAM 或DDRAM) 1 0 要写的数据内容 11 从 CGRAM 或 DDRAM 读数 1 1 读出的数据内容 陕西理工学院毕业论文 第 9 页 共 51 页 控制命令表 1602 液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。 (说明:1 为高电平、 0为低电平) 指令 1:清显示,指令码 01H,光标复位到地址 00H 位置。 指令 2:光标复位,光标返回到地址 00H。 指令 3:光标和显示模式设置 I/D: 光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。 高电平表示有效,低电平则无效。 指令 4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。 指令 5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。 指令 6:功能设置命令 DL:高电平时为 4 位总线,低电平时为 8 位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示 5x7 的 点阵字符,高电平时显示5x10 的点阵字符。 指令 7:字符发生器 RAM 地址设置。 指令 8: DDRAM 地址设置。 指令 9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令 10:写数据。 指令 11:读数据。 (二) LCD 管脚图 如 图 所示 : D714D613D512D411D310D29D18D07E6RW5RS4VSS1VDD2VEE3 图 LCD 管脚图 第 1 脚: VSS 为地电源。 第 2 脚: VDD 接 5V 正电源。 陕西理工学院毕业论文 第 10 页 共 51 页 第 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 脚:背光源负极。 DS18B20 DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。 DS18B20 的性能特点如下: •独特的单线接口仅需要一个端口引脚进行通信; •多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能; •无须外部器件; •可通过数据线供电,电压范围为 ~; •零待机功耗; •温度以9或12位数字; •用户可定义报警设置; •报警搜索命令识别并标志超过 程序限定温度(温度报警条件)的器件; •负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; DS18B20 采用3脚 PR- 35 封装或8脚 SOIC 封装。 DS18B20 的外形如图 所示: 陕西理工学院毕业论文 第 11 页 共 51 页 图 DS18B20 的外形 64位 ROM 的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48 位,最后8位是前面 56 位的 CRC 检验码,这也是多个 DS18B20 可以采用一线进行通信的原因。 温度报警触发器TH和TL,可 通过软件写入户报警上下限。 DS18B20 温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的 EERAM。 高速暂存 RAM 的结构为8字节的存储器,结构如图 3所示。 头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。 第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。 DS18B20 工作时寄存器中的分辨率转换为相应精度的温度数值。 该字节各位的定义如图3 所示。 低5位一直为1,TM是工作模式位,用于设置 DS18B20 在工作模式还是在测试模式, DS18B20 出厂时该位被设置为0,用户要去改动, R1 和R 0 定温度转换的精度位数,来设置分辨率。 DS18B20 字节定义 如表 所示 表 字节定义 陕西理工学院毕业论文 第 12 页 共 51 页 由表 , DS18B20 温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。 因此,在实际应用中要将分辨率和转换时间权衡考虑。 高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。 第9字节读出前面所有8字节的 CRC 码,可用来检验数据, 从而保证通信数据的正确性。 当 DS18B20 接收到温度转换命令后,开始启动转换。 转换完成后的温度值就以 16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。 单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以 ℃/ LSB 形式表示。 当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。 表 是一部分温度值对应的二进制温度数据。 表 温度 转换时间表。 表 温度转换时间表 DS18B20 完成温度转换后,就把测得的温度值与 RAM 中的 TH、 TL字节内容作比较。 若T> TH 或 T< TL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。 因此,可用多只 DS18B20 同时测量温度并进行报警搜索。 在 64 位 ROM 的最高有效字节中存储有循环冗余检验码( CRC)。 主机 ROM 的前 56 位R0R1000101119101112分辨率/ 位 温度最大转向时间/ m s9 3 . 7 51 8 7 . 53 7 57 5 0.... 温度 LSB 温度 MSB TH 用户字节 1 TL 用户字节 2 配置寄存器 保留 保留 保留 CRC TM R1 1R0 1 1 1 1 .... 陕西理工学院毕业论文 第 13 页 共 51 页 来计算 CRC 值,并和存入 DS18B20 的 CRC 值作比较,以判断主机收到的 ROM 数据是否正确。 DS18B20 的测温原理。 器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。 器件中还有一个计数门,当计数门打开时, DS18B20 就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。 计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将- 55℃所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在- 55℃所对应的一个基数值。 另外 ,由于 DS18B20 单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。 系统对 DS18B20 的各种操作按协议进行。 操作协议为:初使化 DS18B20(发复位脉冲)→发 ROM 功能命令→发存储器操作命令→处理数据。 硬件实现 DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时 DS18B20的 1脚接地, 2脚作为信号线, 3脚接电源。 另一种是寄生电源供电方式,如图 4 所示单片机端口接单线总线,为保证在有效的 DS18B20时钟周期内提供足够的电流,可用一个 MOSFET管来完成对总线的上拉。 (1)主控制器 单片机 AT89C51具有低电压供电和小体积等特点,两个端口刚好满足电路系统的设计需要,很合适携手特式产品的使用。 主机控制 DS18B20完成温度转换必须经过三个步骤:初始化、 ROM操作指令、存储器操作指令。 必须先启动 DS18B20开始转换,再读出温度转换值。 (2)显示电路 显示电路采用 SMCI602液晶显示模块芯片该芯片可显示 162 个字符,比以前的七段数码管 LED显示器在显示字符的数量上要多得多。 另外,由于 SMCl602芯片编程比较简单,界面直观,因此更加易于使用者操作和观测。 SMCl602芯片的接口信号说明如表 1所列。 陕西理工学院毕业论文 第 14 页 共 51 页 表 1 SMCl602芯片的接口信号说明 (3)温度检测电路 陕西理工学院毕业论文 第 15 页 共 51 页 DS18B20 最大的特点是单总线数据传输方式, DS18B20 的数据 I/O 均由同一条线来完成。 DS18B20 的电源供电方式有 2 种 : 外部供电方式和寄生电源方式。 工作于寄生电源方式时 , VDD 和 GND 均接地 , 他在需要远程温度探测和空间受限的场合特别有用 , 原理是当 1 W ire 总线的信号线 DQ 为高电平时 , 窃取信号能量给DS18B20 供电 , 同时一部分能量给内部电容充电 , 当 DQ为低 电平时释放能量为DS18B20 供电。 但寄生电源方式需要强上拉电路 , 软件控制变得复杂 (特别是在完成温度转换和拷贝数据到 E2PROM 时 ) , 同时芯片的性能也有所降低。 因此 , 在条件允许的场合 , 尽量采用外供电方式。 无论是内部寄生电源还是外部供电, I/O口线要接5KΩ左 右的上拉电。 在这里采用前者方式供电。 DS18B20与芯片连接电路如图 所示: 图 DS18B20与单片机的连接 当 DS18B20 处于写存储器操作和温度 A/D 转换操作时,总线上必须有强的上拉,上拉开启时间最大为 10us。 采用寄生电源供电方式时 VDD 端接地。 ( 1). 把 “ 单片机系统 ” 区域中的 - 用 8 芯排线连接到 “ 动态数码显示 ” 区域中的 D0D1D2D3D4D5D6D7 端子上。 陕西理工学院毕业论文 第 16 页 共 51 页 ( 2). 把 DS18B20 芯片插入 “ 四路单总线 ” 区域中的任一个插座中,注意电源与。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。