恒温箱控制系统的设计毕业设计内容摘要:

12位数据 ,存储在 18B20的两个比特的 RAM中 ,二进制中的前面 5 位符号 ,如果测得的温度大于 0,这 5位为 0,只要将测到的数值乘于 即可得到实际温度。 如果温度小于 0,这 5位为 1,测到的数值需要取反加 1再乘于 即可得到实际温度 . 例如 +125℃的数字输出为 07D0H,+℃的数字输出为 0191H,的数字输出为 FF6FH,55℃的数字输出为 FC90H. 表 TEMPERATURE DIGITAL OUTPUT (Binary) DIGITAL OUTPUT (Hex) +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 LS Byte MS Byte 7 0℃ 0000 0000 0000 0000 0000h ℃ 1111 1111 1111 1000 FFF8h ℃ 1111 1111 0101 1110 FF5Eh ℃ 1111 1110 0110 1111 FE6Fh 55℃ 1111 1100 1001 0000 FC90h *The poweron reset value of the temperature register is +85℃ DS18B20 的外形及引脚说明 外形如图。 1( GND):地 2( DQ):单线运用的数据输入输出引脚 3( VDD):可选的电源引脚 DS18B20 内部结构 DS18B20 的内部结构如图 3所示。 图 8 DS18B20 温度传感器的存储器 DS18B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可电擦的 E2RAM,后者存放高温度和低温度触发器 TH、 TL 和结构寄存器 . 暂存存储器包含了 8个连续字节 ,前两个字节是测得的温度信息 ,第一个字节的内容是温度的低八位 ,第二个字节是温度的高八位。 第三个和第四个字节是 TH、TL 的易失性拷贝 ,第五个字节是结构寄存的易失性拷贝 ,这三个字节的内容在每一次上电复位时被刷新。 第六、七、八个字节用于内部计算。 第九个字节是冗余检验字节。 表 寄存器内容 字节地址 温度最低的数字位 0 温度最高的数字位 1 高温限值 2 低温限值 3 保留 4 保留 5 计数剩余值 6 每度计数值 7 CRC校验 8 该字节各位的意义如下 : 图 9 TM R1 R0 1 1 1 1 1 低五位一直都是 1,TM 是测试模式位 ,用于设置 DS18B20 在工作模式还是在测试模式 ,在 DS18B20出厂时该设置为 0,用户不要去改动 .R1和 R0用来设置分辨率 ,如下表所示 (DS18B20 出厂时被设置为 12位 ) 表 R1 R0 分辨率 温度最大转换时间 0 0 9 位 0 1 10 位 1 0 11 位 375ms 1 1 12 位 750ms 根据 DS18B20的通讯协议 ,主机控制 DS18B20完成温度转换必须经过三个步骤 :每一次读写之前都要对 DS18B20 进行复位 ,复位成功后发送一条 ROM 指令 ,最后发送 RAM 指令 ,这样才能对 DS18B20 进 行预定的操作 .复位要求主 CPU 将数据线下拉500微秒 ,然后释放 , DS18B20 收到信号后等待 16~60 微秒左右 ,后发出 60~240 微秒的存在低脉冲 ,主 CPU 收到此信号表示复位成功 . 表 指令 约定代码 功能 读 ROM 33H 读 DS1820ROM 中的编码 (即读 64 位地址 ) 符合 ROM 55H 发出此命令之后 ,接着发出 64位 ROM 编码 ,访问单线总线上与该编码相对应的 DS1820 使之作出响应 ,为下一步对该 DS1820的读写作准备 搜索 ROM 0F0H 用于确定挂接在同一条总线上 DS1820 的个数 和识别 64 位 ROM地址 ,为操作各器件作好准备 10 跳过 ROM 0CCH 忽略 64位 ROM 地址 ,直接向 DS1820 发温度变换指令 ,适用于单片工作 . 告警搜索命令 0ECH 执行后 ,只有温度超过设定值上限或下限的片子才作出响应 . 表 指令 约定代码 功能 温度变换 44H 启动 DS1820 进行温度转换 ,转换时间最长为 500ms(典型为 200ms),结果存入内部 9 字节 RAM 中 读暂存器 0BEH 读内部 RAM中 9字节的内容 写暂存器 4EH 发出向内部 RAM的第 3,4字节写上 ,下限温度数据命 令 ,紧跟该命令之后 ,是传输两字节数据 . 复制暂存器 48H 将 RAM 中的第 3,4 字内容复制到 EEPRAM 中 . 重调 EEPRAM 0B8H 将 EEPRAM 中内容恢复到 RAM 中的第 3,4 字节 . 读供电方式 0B4H 读 DS18B20的供电模式 ,寄生供电时 DS18B20发送“ 0” ,外接电源供电, DS18B20 发送“ 1” DS18B20 的特性 DS18B20 可以程序设定 9~12 位的分辨率,精度为177。 ℃。 可选更小的封装方式,更宽的电压适用范围。 分辨率设定,及用户设定的报警温度,存储在 EEPROM,掉电后依然保存。 DS18B20 的性能是新一代产品中最好的。 性能价格比也非常出色。 DS1822 与 DS18B20 软件兼容,是 DS18B20 的简化版本,省略了存储用户定义 11 报警温度,分辨率参数的 EEPROM,精度降低为177。 2℃。 适用于对性能要求不高,成本控制严格的应用,是经济型产品。 表 型号 工作电压 分辨率 精度 EEPROM 软件兼容性 封装 采集模块 DS18B20 ~ 9~12位 177。 ℃ 有 与DS1820部分兼容 SOIC,TO92 LTM8000系列 表 序号 项目 指标 1 温度传感器 DS18B20 数字温度传感器 2 温度精度 177。 ℃( 10~+85℃范围内) 3 测温范围 55℃ ~+125℃ 4 温度分辨率 12位( ℃) 5 测温速度 750ms( 12 位分辨率) 6 电源要求 3V~ 7 通讯电缆 三芯屏蔽电缆 8 支持通讯电缆长度 300m 9 运行环境 55℃ ~+125℃ 10 外型尺寸 ψ 6mm 11 材质 不锈钢 DS18B20 工作原理 DS18B20 的读写时序和测温原理与 DS1820 相同 ,只是得到的温度值的位数因 12 分辨率不同而不同,且温度转换时的延时时间由 2s 减为 750ms。 DS18B20 的读写时序如下 : PROC WRITE WRITE: MOV R2,8 CLR C WR1: CLR DQ MOV R7,6 DJNZ R7,$ RRC A MOV DQ,C MOV R7,23 DJNZ R7,$ SETB DQ NOP DJNZ R2,WR1 SETB DQ RET。 读一个字节 ,出口 :A=读入的字节 PROC DREAD DREAD: MOV R2,8 READL: CLR C SETB DQ NOP NOP CLR DQ NOP NOP NOP SETB DQ。 产生时间片 MOV R7,7 DJNZ R7,$ MOV C,DQ MOV R7,23 DJNZ R7,$ RRC A DJNZ R2,READL。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。