




已阅读5页,还剩89页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江科技学院本科毕业设计 论文 1 浙浙 江江 科科 技技 学学 院院 本本科科学学生生毕毕业业设设计计 论论文文 题题 目目 基于基于 DS18B20DS18B20 的智能温度检测系统的智能温度检测系统 浙江科技学院本科毕业设计 论文 2 摘摘 要要 本文主要讨论了当今温度传感器的发展方向 介绍了用单片机控制的 基于 数字温度传感器 DS18B20 的温度测量系统 重点阐述了 DS18B20 的工作原理 指令 系统 单片机与 DS18B20 之间的接口 数据传递 通信协议 建立了基于 DS18B20 的单点 多点温度测量系统 最后用 RS232 总线实现了测温系统与 PC 机的通讯 实 现了温度的实时检测与显示 关键字 关键字 DS18B20 多点温度测量 通讯 AbstractAbstract After mainly discussing the development direction of current temperature sensor the paper introduces the temperature measurement system based on the digital temperature sensor DS18B20 which is controlled by 89S52 single chip microcomputer The working princip1e of the DS18B20 instruction sets data transmission the interface and the communication protoco1 between the DS18B20 and single chip microcomputer is expounded specially The detail design project and concrete implementation of the single and multiple temperature measurement system which is made up of DS18B20 and 89S52 single chip microcomputer are discussed The temperature measurement system can communicate with PC by RS232 bus which can be realized the measurement and display of temperature in the real time in this paper KeywordsKeywords DS18B20 multipoint temperature measurement communication 浙江科技学院本科毕业设计 论文 3 目录目录 摘摘 要要 I 1 1 绪论绪论 1 1 2 2 几种常用温度传感器的原理及发展几种常用温度传感器的原理及发展 2 2 2 1 引言 2 2 2 传感器的分类 2 2 3 传感器的原理及发展 2 2 3 1 传统的分立式温度传感器 热电偶传感器 2 2 3 2 集成 IC 温度传感器 3 2 4 智能温度传感器发展的新趋势 5 2 4 1 提高测温精度和分辨力 5 2 4 2 增加测试功能 5 2 4 3 总线技术的标准化与规范化 6 2 4 4 可靠性及安全性设计 6 2 4 5 虚拟温度传感器和网络温度传感器 7 2 5 小结 7 3 3 DS18B20DS18B20 测温系统的设计测温系统的设计 8 8 3 1 现实测温遇到的问题 8 3 2 方案论证及比较 8 3 3 DS1820 数字温度传感器的原理与构 造 9 3 3 1 DS18B20 的内部结构 10 3 3 2 DS18B20 温度传感器的存储器 11 3 4 DS1820 单点测温系统设计 14 3 4 1 CPU 模块 14 3 4 2 数据采集模块 15 3 4 3 显示模块 15 3 4 4 系统软件设计 15 浙江科技学院本科毕业设计 论文 4 3 5 DS18B20 多点测温系统的设计 25 3 5 1 硬件说明 25 3 5 2 软件设计 25 4 4 DS1820DS1820 测温系统与测温系统与 PCPC 上位机通上位机通 讯讯 2929 4 1 RS 232C 介 绍 29 4 2 RS232 硬件接口设计 30 4 2 1 硬件说明 30 4 3 程序设计 31 4 3 1 单片机内通信程序的设计 31 4 3 2 PC 机内通信程序的设 计 32 5 5 总总 结结 38 致致 谢谢 39 参考文献参考文献 40 附录附录 1 1 4141 附录附录 2 2 6868 浙江科技学院本科毕业设计 论文 5 1 1 绪绪 论论 温度是一个基本的物理量 自然界中的一切过程无不与温度密切相关 随着科学技术的不断进步与发展 温度传感器的种类日益繁多 应用逐渐广泛 并且开始 由模拟式向着数字式 单总线式 双总线式和三总线式方向发展 而数字温度传感器更因适用 于各种微处理器接口组成的自动温度控制系统具有可以克服模拟传感器与微处理器接口时需要 信号调理电路和 A D 转换器的弊端等优点 被广泛应用于工业控制 电子测温计 医疗仪器等 各种温度控制系统中 其中 比较有代表性的数字温度传感器有 DS1820 MAX6575 DS1722 MAX6635 等 在工业过程控制和检测过程中 温度是最重要的参数之一 很多情况下需要进行温度的现 场测量 而在众多的温度传感器中 智能温度传感器 DS18B20 将温度传感器 A D 转换器 寄存 器 接口电路集成在一个芯片中 可实现直接数字化输出 测试及控制功能强 传输距离远 抗干扰能力强 微型化 微功耗 可适配各种微控制器 MCU 或微型计算机进行数据处理及温 度控制 在很多智能化的温度传感器中 大多使用同步串行总线技术 如 Philips SMBus Intel SPI Motorola Microwire Plus NSC 等串行总线协议 而 DS18B20 采用的是单线 1 Wire 总线协议 单线 1 Wire 是 DALLAS 公司的一项专有技术 它采用一根信号线实现 信号的双向传输 具有接口简单 节省 I O 口线 便于扩展和维护等优点 随着现代信息技术的飞速发展和传统工业改造的逐步实现 能够独立工作的温度检测和显 示系统已经应用于诸多领域 传统的温度检测以热敏电阻为温度敏感元件 热敏电阻成本低 但需要后续信号处理电路 而且热敏电阻的可靠性相对较差 测量温度的准确度低 检测系统 的精度差 我们选用了美国 DALLAS 公司最新推出的 DS18B20 数字式温度传感器 DS18B20 是 DS1820 的更新产品 它与传统的热敏电阻温度传感器不同 它能够直接读出被测温度并且可根 据实际要求通过简单的编程实现 9 12 位的数字值读数方式 可以分别在 93 75ms 和 750ms 内将 温度值转化 9 位和 12 位的数字量 因而使用 DS18B20 可使系统结构更趋简单 可靠性更高 在本设计中我使用智能温度传感器 DS18B20 构建温度检测系统 该系统实现了温度的实时 检测及监测 检测数据精度高 范围大 浙江科技学院本科毕业设计 论文 6 2 2 几种常用温度传感器的原理及发展几种常用温度传感器的原理及发展 2 12 1 引言引言 科学技术离不开测量 测量的目的就是要获得被测对象的有关物理或化学性质的信息 以 便根据这些信息对被测对象进行评价或控制 完成这一功能的器件就我们称之为传感器 传感 器是信息技术的前沿尖端产品 被广泛用于工农业生产 科学研究和生等领域 尤其是温度传 感器 使用范围广 数量多 居各种传感器之首 温度传感器的发展大致经历了以下 3 个阶段 1 传统的分立式温度传感器 含敏感元件 主要是能够进行非电量和电量之间转换 2 模拟集成温度传感器 控制器 3 智能温度传感器 目前 国际上新型温度传感器正从模拟式向数字式 由集成化向智能化 网络化的方向发展 2 22 2 传感器的分类传感器的分类 传感器分类方法很多 常用的有 2 种 一种是按被测的参数分 另一种是按变换原理来分 通常按被测的参数来分类 可分为热工参数 温度 比热 压力 流量 液位等 机械量参数 位移 力 加速度 重量等 物性参数 比重 浓度 算监度等 状态量参数 颜色 裂纹 磨损等 温度传感器属于热工参数 温度传感器按传感器于被测介质的接触方式可分为 2 大类 一类是接触式温度传感器 一 类是非接触式温度传感器 接触式温度传感器的测温元件与被测对象要有良好的热接触 通过 热传导及对流原理达到热平衡 这时的示值即为被测对象的温度 这种测温方法精度比较高 并在一定程度上还可测量物体内部的温度分布 但对于运动的 热容量比较小的 或对感温元 件有腐蚀作用的对象 这种方法将会产生很大的误差 非接触测温的测温元件与被测对象互不接触 目前最常用的是辐射热交换原理 此种测温 方法的主要特点是可测量运动状态的小目标及热容量小或变化迅速的对象 也可测温度场的温 度分布 但受环境的影响比较大 2 32 3 传感器的原理及发展传感器的原理及发展 2 3 12 3 1 传统的分立式温度传感器传统的分立式温度传感器 热电偶传感器热电偶传感器 浙江科技学院本科毕业设计 论文 7 热电偶传感器是工业测量中应用最广泛的一种温度传感器 它与被测对象直接接触 不受 中间介质的影响 具有较高的精确度 测量范围广 可从 50 1600 进行连续测量 特殊的 热电偶如金铁 镍铬 最低可测到 269 钨 铼最高可达 2800 热电偶传感器主要按照热电效应来工作 将两种不同的导体 A 和 B 连接起来 组成一个闭 合回路 即构成感温元件 如图 2 1 所示 当导体 A 和 B 的两个接点 1 和 2 之间存在温差时 两者之间便产生电动势 因而在回路中形成一定大小的电流 这种现象即称为热电效应 也叫 温差电效应 热电偶就是利用这一效应进行工作的 热电偶的一端是将 A B 两种导体焊接在一 起 称为工作端 置于温度为 t 的被测介质中 另一端称为参比端或自由端 放于温度为 t0 的 恒定温度下 当工作端的被测介质温度发生变化时 热电势随之发生变化 将热电势送入计算 机进行处理 即可得到温度值 图 2 1 热电偶两端的热电势差可以用下式表示 Et E t E t0 式中 Et 热电偶的热电势 E t 温度为 t 时的热电势 E t0 温度为 t0 时的热电势 当参比端的温度 t0 恒定时 热电势只于工作端的温度有关 即 Et f t 当组成热电偶的热电极的材料均匀时 其热电势的大小与热电极本身的长度和直径无关 只与 热电极的成分及两端的温度有关 2 3 22 3 2 集成集成 IC IC 温度传感器温度传感器 2 3 2 12 3 2 1 模拟集成温度传感器模拟集成温度传感器 集成传感器是采用硅半导体集成工艺而制成的 因此亦称硅传感器或单片集成温度传感器 模拟集成温度传感器是在 20 世纪 80 年代问世的 它是将温度传感器集成在一个芯片上 可完 浙江科技学院本科毕业设计 论文 8 成温度测量及模拟信号输出功能的专用 IC 模拟集成温度传感器的主要特点是功能单一 仅测量 温度 测温误差小 价格低 响应速度快 传输距离远 体积小 微功耗等 适合远距离测温 控测 不需要进行非线性校准 外围电路简单 目前在国内外仍普遍应用的一种集成传感器 下面介绍一种具有高灵敏度和高精度的 IC 温度传感器 AN6701 AN6701 的原理图如图 2 2 所示 它由温度检测电路 温度补偿电路以及缓冲放大器 3 部分 组成 图 2 2 IC 温度传感器的检测电路是利用晶体管对两个发射极的电流密度差产生基极 发射极之间的 电压差 VbC 的原理而工作的 图 2 3 所示为温度检测及温度补偿电路图 图 1 2 中 T1 T5 为 检测电路 T8 T11 及 RC 组成的电路产生正比其绝对温度的电流 该电流通过 T12 和 T13 注入 T7 即可获得对应于注入电流的补偿温度 RC 为外接电阻 使传感器的校准比较方便 浙江科技学院本科毕业设计 论文 9 图 2 3 2 3 2 22 3 2 2 智能温度传感器智能温度传感器 传感器 亦称数字温度传感器 是在 20 世纪 90 年代中期问世的 它是微电子技术 计算机 技术和自动测试技术 ATE 的结晶 目前 国际上已开发出多种智能温度传感器系列产品 智能 温度传感器内部都包含温度传感器 A D 转换器 信号处理器 存储器 或寄存器 和接口电路 有的产品还带多路选择器 中央控制器 CPU 随机存取存储器 RAM 和只读存储器 ROM 智能 温度传感器的特点是能输出温度数据及相关的温度控制量 适配各种微控制器 MCU 并且它是 在硬件的基础上通过软件来实现测试功能的 其智能化和谐也取决于软件的开发水平 2 42 4 智能温度传感器发展的新趋势智能温度传感器发展的新趋势 21 世纪后 智能温度传感器正朝着高精度 多功能 总线标准化 高可靠性及安全性 开 发虚拟传感器和网络传感器 研制单片测温系统等高科技的方向迅速发展 2 4 12 4 1 提高测温精度和分辨力提高测温精度和分辨力 21 世纪 90 年代中期最早推出的智能温度传感器 采用的是 8 位 A D 转换器 其测温精度较 低 分辨力只能达到 1 目前 国外已相继推出多种高速度 高分辨力的智能温度传感器 所 用的是 9 12 位 A D 转换器 分辨力一般可达 0 5 0 0625 由美国 DALLAS 半导体公司新研 制的 DS1624 型高分辨力智能温度传感器 能输出 13 位二进制数据 其分辨力高达 0 03125 测温精度为 0 2 为了提高多通道智能温度传感器的转换速率 也有的芯片采用高速逐次逼 近式 A D 转换器 以 AD7817 型 5 通道智能温度传感器为例 它对本地传感器 每一路远程传感 器的转换时间分别仅为 27 s 9 s 2 4 22 4 2 增加测试功能增加测试功能 温度传感器的测试功能也在不断增强 例如 DS1629 型单线智能温度传感器增加了实时日 历时钟 RTC 使其功能更加完善 DS1624 还增加了存储功能 利用芯片内部 256 字节的 E2PROM 存储器 可存储用户的短信息 另外 智能温度传感器正从单通道向多通道的方向发展 这就为研制和开发多路温度测控系统创造了良好条件 传感器都具有多种工作模式可供选择 主要包括单次转换模式 连续转换模式 待机模式 有的还增加了低温极限扩展模式 操作非常简便 对某些智能温度传感器而言 主机 外部微处 理器或单片机 还可通过相应的寄存器来设定其 A D 转换速率 典型产品为 MAX6654 分辨力及 浙江科技学院本科毕业设计 论文 10 最大转换时间 典型产品为 DS1624 2 4 32 4 3 总线技术的标准化与规范化总线技术的标准化与规范化 智能温度传感器的总线技术也实现了标准化 规范化 所采用总线主要有单线 1 Wire 总 线 I2C 总线 SMBus 总线和 SPI 总线 温度传感器作为从机可通过专用总线接口与主机进行通 信 2 4 42 4 4 可靠性及安全性设计可靠性及安全性设计 A D 转换器大多采用积分式或逐次比较式转换技术 其噪声容限低 抑制混叠噪声及量化噪 声的能力比较差 新型智能温度传感器 例如 TMP03 204 LM74 LM83 普遍采用了高性能的 式 A D 转换器不仅能滤除量化噪声 而且对外围元件的精度要求低 由于采用数字反馈方式 因此比较器的失调电压及零点漂移都不会影响温度的转换精度 这种智能温度传感器兼有抑制 串模干扰能力强 分辨力高 线性度好 成本低等优点 为了避免在温控系统受到噪声干扰时产生误动作 在 AD7416 7417 7817 LM75 76 MAX6625 6626 等智能温度传感器的内部 都设置了一个可编程的 故障排队 fault queue 计数器 专用于设定允许被测温度值超过上 下限的次数 仅当被 测温度连续超过上限或低于下限的次数达到或超过所设定的次数 n n 1 4 时 才能触发中断端 若故障次数不满足上述条件或故障不是连续发生的 故障计数器就复位而不会触发中断端 这 意味着假定 n 3 时 那么偶然受到一次或两次噪声干扰 都不会影响温控系统的正常工作 76 型智能温度传感器增加了温度窗口比较器 非常适合设计一个符合 ACPI Advanced Configuration and Power Interface 即 先进配置与电源接口 规范的温控系统 这种系 统具有完善的过热保护功能 可用来监控笔记本电脑和服务器中 CPU 及主电路的温度 微处理 器最高可承受的工作温度规定为 tH 台式计算机一般为 75 高档笔记本电脑的专用 CPU 可达 100 一旦 CPU 或主电路的温度超出所设定的上 下限时 INT 端立即使主机产生中断 再通 过电源控制器发出信号 迅速将主电源关断起到保护作用 此外 当温度超过 CPU 的极限温度 时 严重超温报警输出端 T CRIT A 也能直接关断主电源 并且该端还可通过独立的硬件判断 电路来切断主电源 以防主电源控制失灵 上述三重安全性保护措施已成为国际上设计温控系 统的新观念 为防止因人体静电放电 ESD 而损坏芯片 一些智能温度传感器还增加了 ESD 保护电路 一 般可承受 1000 4000V 的静电放电电压 通常是将体等效于由 100pF 电容 1 2k 电阻串联而成 浙江科技学院本科毕业设计 论文 11 的电路模型 当人体放电时 TCN75 型智能温度传感器的串行接口端 中断 比较器信号输出端 和地址输入端均可承受 1000V 的静电放电电压 LM83 型智能温度传感器则可随 4000V 的静电放 电电压 最新开发的智能温度传感器 例如 MAX6654 LM83 还增加了传感器故障检测功能 能自 动检测外部晶体管温度传感器 亦称远程传感器 的开路或短路故障 MAX6654 还具有选择 寄存 阻抗抵消 Parasitic Resistance Cancellation 英文缩写为 PRC 模式 能抵消远程传感器 引线阻抗所引起的测温误差 即使引线阻抗达到 100 也不会影响测量精度 远程传感器引线 可采用普通双绞线或者带屏蔽层的双绞线 2 4 52 4 5 虚拟温度传感器和网络温度传感器虚拟温度传感器和网络温度传感器 虚拟传感器是基于传感器硬件和计算机平台 并通过软件开发而成的 利用软件可完成传 感器的标定及校准 以实现最佳性能指标 最近 病因 B这是关于单个 DS18B20 的测温程序 数据脚为 P3 3 晶振是 11 0592MHZ 温度传感器 18B20 采用器件默认的 12 位转化 最大转化时间要 750 毫秒 内存分配声明 TEMPER L EQU 29H 用于保存读出温度的低字节 浙江科技学院本科毕业设计 论文 23 TEMPER H EQU 28H 用于保存读出温度的高字节 T DF EQU 27H FORMAT 后的小数部分 DECIMAL FRACTION 半字节的温度小数 存在低四位 T INTEGER EQU 26H FORMAT 后的整数部分 INTEGER 将两字节的温度整合成 1 字节 FLAG1 BIT 50H 位地址 50H 是字节 2AH 的最低位 用作是否检测到 DS18B20 的标志位 KEYFLAG EQU 24H 选通位 DEL EQU 40H A BIT EQU 20H 十位数存放内存位置 B BIT EQU 21H 个位数存放内存位置 C BIT EQU 22H 个位小数 D BIT EQU 23H 十位小数 ORG 0000H LJMP 0100H ORG 0100H MAIN LCALL INIT RS232 LCALL T CONVERSION 调用读温度子程序 LCALL T FORMAT 将读出的 2 字节温度格式化 LCALL DISPLAY 调用 LED 显示子程序 LCALL PASS 调用传送子程序 LJMP MAIN DS18B20 的温度转换子程序 T CONVERSION LCALL INIT 1820 JB FLAG1 T C0 RET T C0 MOV A 0CCH LCALL WRITE 1820 MOV A 44H LCALL WRITE 1820 LCALL DISPLAY 延时 750 毫秒 浙江科技学院本科毕业设计 论文 24 LCALL INIT 1820 MOV A 0CCH LCALL WRITE 1820 MOV A 0BEH LCALL WRITE 1820 LCALL READ 1820 RET DS18B20 复位初始化程序 INIT 1820 SETB P3 3 NOP CLR P3 3 MOV R0 2 INIT0 MOV R1 250 DJNZ R1 DJNZ R0 INIT0 SETB P3 3 NOP MOV R0 15 INIT1 JNB P3 3 INIT3 DJNZ R0 INIT1 LJMP INIT4 INIT3 SETB FLAG1 LJMP INIT5 INIT4 CLR FLAG1 LJMP INIT6 INIT5 MOV R0 120 DJNZ R0 INIT6 SETB P3 3 浙江科技学院本科毕业设计 论文 25 RET 写 DS18B20 的子程序 WRITE 1820 MOV R2 8 WR0 CLR P3 3 MOV R3 6 DJNZ R3 RRC A MOV P3 3 C MOV R3 20 DJNZ R3 SETB P3 3 NOP NOP DJNZ R2 WR0 SETB P3 3 RET 读 DS18B20 的程序 READ 1820 MOV R4 2 MOV R1 TEMPER L RE0 MOV R2 8 RE1 SETB P3 3 NOP NOP CLR P3 3 NOP NOP SETB P3 3 MOV R3 5 浙江科技学院本科毕业设计 论文 26 DJNZ R3 MOV C P3 3 MOV R3 20 DJNZ R3 RRC A DJNZ R2 RE1 MOV R1 A DEC R1 DJNZ R4 RE0 RET 整合读出的两字节温度 T FORMAT MOV A 0FH ANL A TEMPER L MOV T DF A MOV A TEMPER L SWAP A MOV TEMPER L A MOV A TEMPER H SWAP A MOV R0 TEMPER L XCHD A R0 MOV T INTEGER A RET LED 显示的子程序 DISPLAY MOV A T INTEGER MOV B 10 DIV AB MOV A BIT A 浙江科技学院本科毕业设计 论文 27 MOV B BIT B MOV A T DF MOV R0 C BIT MOV R2 2 D0 MOV B 10 MUL AB MOV B 16 DIV AB MOV R0 A INC R0 MOV A B DJNZ R2 D0 LEDDISPLAY MOV DEL 200 DSY MOV R0 20H MOV R1 02H LOOP MOV P2 R1 MOV A R0 MOV DPTR TABLE MOVC A A DPTR MOV P0 A LCALL D1MS INC R0 MOV A R1 RL A MOV R1 A JNB ACC 5 LOOP 浙江科技学院本科毕业设计 论文 28 DJNZ DEL DSY RET TABLE DB 0C0H 0F9H 0A4H 0B0H 099H 092H 082H 0F8H 080H 090H 二进制到 ASCII 码转换 PASS MOV A 30H ORL A BIT A 传送到 PC 上位机 LCALL TX CHAR ORL B BIT A LCALL TX CHAR ORL C BIT A LCALL TX CHAR ORL D BIT A LCALL TX CHAR RET 1MS 延时 D1MS MOV R7 250 LOOP0 NOP NOP DJNZ R7 LOOP0 RET 1S 延时 D1S MOV R6 4 LOOP2 MOV R5 250 LOOP1 LCALL D1MS DJNZ R5 LOOP1 DJNZ R6 LOOP2 RET INIT RS232 浙江科技学院本科毕业设计 论文 29 MOV SCON 50H MOV TMOD 20H 定时器 T1 工作方式 2 MOV TH1 0FDH SETB TR1 SETB TI RET TX CHAR JNB TI CLR TI MOV SBUF A RET END 3 53 5 DS18B20DS18B20 多点测温系统的设计多点测温系统的设计 DS18B20 是 DALLAS 公司生产的单总线数字温度传感器 可以通过在单线上串接多个 DS18B20 来达到多点测温和降低硬件复杂 DS18B20 多点测温系统硬件原理图如下所示 4 7K R1 5 P3 3 DQ 2 GND 1 VCC 3 U1 DS1820 DQ 2 GND 1 VCC 3 U2 DS1820 DQ 2 GND 1 VCC 3 U3 DS1820 DQ 2 GND 1 VCC 3 U4 DS1820 DQ 2 GND 1 VCC 3 U5 DS1820 DQ 2 GND 1 VCC 3 U6 DS1820 3 5 13 5 1 硬件说明硬件说明 将多个 DS18B20 串接在 89S52 的 P3 3 上 采用电源供电 利用上拉电阻 R1 保证温度信息 的正常传送 由于多个 DS18B20 串接在同一口上 在获取温度信息时需进行 ROM 匹配 以保证 所获取的温度信息与目标相同 同时在系统硬件上可以通过扩展键盘来进行传感器的片选 浙江科技学院本科毕业设计 论文 30 3 5 23 5 2 软件设计软件设计 每一片 DSl820 在其 ROM 中都存有其唯一的 48 位序列号在出厂前已写入片内 ROM 中主机在 进入操作程序前必须逐一接入 18B20 用读 ROM 33H 命令将该 18B20 的序列号读出并记录 当主 机需要对众多在线 18B20 的某一个进行操作时 首先要发出匹配 ROM 命令 55H 紧接着主机 提供 64 位序列 包括该 18B20 的 48 位序列号 之后的操作就是针对该 18B20 的 而所谓跳 过 ROM 命令即为之后的操作是对所有 18B20 的 框图中先有跳过 ROM 即是启动所有 18B20 进 行温度变换之后 通过匹配 ROM 再逐一地读回每个 18B20 的温度 数据在 18B20 组成的测温系 统中 主机在发出跳过 ROM 命令之后再发出统一的温度转换启动码 44H 就可以实现所有 18B20 的统一转换 再经过 1s 后就可以用很少的时间去逐一读取这种方式使其 T 值往往小于传统方 式 由于采取公用的放大电路和 A D 转换器只能逐一转换显然通道数越多这种省时应就越明显 初始化 跳过ROM匹配 变换温度 等待1S 初始化 设置DS18B20个数 B 匹配ROM 读温度 存在缓冲区指针增 1 初始化 B 1 0 否 是 浙江科技学院本科毕业设计 论文 31 多路测温程序框图 DS18B20 序列号获得 读出 DS18B20 序列号应用程序 P3 3 接 DS18B20 ORG 0000H AJMP MAIN ORG 0020H MAIN MOV SP 60H CLR EA 使用 DS18B20 一定要禁止任何中断产生 LCALL INT 初始化 DS18B20 MOV A 33H LCALL WRITE 送入读 DS18B20 的 ROM 命令 LCALL READ 开始读出当前 DS18B20 序列号 MOV 40H A LCALL READ MOV 41H A LCALL READ MOV 42H A LCALL READ MOV 43H A LCALL READ MOV 44H A LCALL READ MOV 45H A LCALL READ MOV 46H A LCALL READ MOV 47H A 浙江科技学院本科毕业设计 论文 32 SETB EA SJMP INT 初始化 DS18B20 子程序 CLR EA L0 CLR P3 3 DS18B20 总线为低复位电平 MOV R2 200 L1 CLR P3 3 DJNZ R2 L1 总线复位电平保持 400us SETB P3 3 释放 DS18B20 总线 MOV R2 30 L4 DJNZ R2 L4 释放 DS18B20 总线保持 60us CLR C 清存在信号 ORL C P3 3 JC L0 存在吗 不存在则重新来 MOV R6 80 L5 ORL C P3 3 JC L3 DJNZ R6 L5 SJMP L0 L3 MOV R2 240 L2 DJNZ R2 L2 RET WRITE 向 DS18B20 写操作命令子程序 CLR EA MOV R3 8 写入 DS18B20 的 bit 数 一个字节 8 个 bit WR1 SETB P3 3 MOV R4 8 RRC A 把一个字节 data A 分成 8 个 bit 环移给 C 浙江科技学院本科毕业设计 论文 33 CLR P3 3 开始写入 DS18B20 总线要处于复位 低 状态 WR2 DJNZ R4 WR2 DS18B20 总线复位保持 16us MOV P3 3 C 写入一个 bit MOV R4 20 WR3 DJNZ R4 WR3 等待 40us DJNZ R3 WR1 写入下一个 bit SETB P3 3 重新释放 DS18B20 总线 RET READ CLR EA MOV R6 8 连续读 8 个 bit RE1 CLR P3 3 读前总线保持为低 MOV R4 4 NOP SETB P3 3 开始读总线释放 RE2 DJNZ R4 RE2 持续 8us MOV C P3 3 从 DS18B20 总线读得一个 bit RRC A 把读得的位值环移给 A MOV R5 30 RE3 DJNZ R5 RE3 持续 60us DJNZ R6 RE1 读下一个 bit SETB P3 3 重新释放 DS18B20 总线 RET END 注意事项 DS18B20 虽然具有测温系统简单 测温精度高 连接方便 占用口线少等优点 但在实际应 用中也应注意以下几方面的问题 1 较小的硬件开销需要相对复杂的软件进行补偿 由于 DS18B20 与微处理器间采用串行数 浙江科技学院本科毕业设计 论文 34 据传送 因此 在对 DS18B20 进行读写编程时 必须严格的保证读写时序 否则将无法读取测 温结果 2 在 DS18B20 的有关资料中均未提及单总线上所挂 DS18B20 数量问题 容易使人误认为可 以挂任意多个 DS18B20 在实际应用中并非如此 当单总线上所挂 DS18B20 超过 8 个时 就需要 解决微处理器的总线驱动问题 这一点在进行多点测温系统设计时要加以注意 3 连接 DS18B20 的总线电缆是有长度限制的 试验中 当采用普通信号电缆传输长度超过 50m 时 读取的测温数据将发生错误 当将总线电缆改为双绞线带屏蔽电缆时 正常通讯距离可 达 150m 当采用每米绞合次数更多的双绞线带屏蔽电缆时 正常通讯距离进一步加长 这种情 况主要是由总线分布电容使信号波形产生畸变造成的 因此 在用 DS18B20 进行长距离测温系 统设计时要充分考虑总线分布电容和阻抗匹配问题 4 在 DS18B20 测温程序设计中 向 DS18B20 发出温度转换命令后 程序总要等待 DS18B20 的返回信号 一旦某个 DS18B20 接触不好或断线 当程序读该 DS18B20 时 将没有返回信号 程序进入死循环 这一点在进行 DS18B20 硬件连接和软件设计时也要给予一定的重视 浙江科技学院本科毕业设计 论文 35 4 4 DS18B20DS18B20 测温系统与测温系统与 PCPC 上位机通讯上位机通讯 4 14 1 RS 232CRS 232C 介绍介绍 RS 323C 标准是美国 EIA 电子工业联合会 与 BELL 等公司一起开发的 1969 年公布的通信协 议 它适合于数据传输速率在 0 20000b s 范围内的通信 这个标准对串行通信接口的有关问 题 如信号线功能 电器特性都作了明确规定 由于通行设备厂商都生产与 RS 232C 制式兼容 的通信设备 因此 它作为一种标准 目前已在微机通信接口中广泛采用 RS 232C 使用 3 到 25V 表示数字 1 使用 3V 到 25V 表示数字 0 RS 232C 在空闲时处 于逻辑 1 状态 在开始传送时 首先产生一起始位 起始位为一个宽度的逻辑 0 紧随其 后为所要传送的数据 所要传送的数据有最低位开始依此送出 并以一个结束位标志该字节传 送结束 结束位为一个宽度的逻辑 1 状态 PC 机一般使用 8250 或 16550 作为串行通讯的控制器 使用 9 针或 25 针的接插件将串行口 的信号送出 该插座的信号定义如下 DB 25 DB 9 信号名称 方向 含 义 2 3 TXD 输出 数据发送端 3 2 RXD 输入 数据接收端 4 7 RTS 输出 请求发送 计算机要求发送数据 5 8 CTS 输入 清除发送 MODEM 准备接收数据 6 6 DSR 输入 数据设备准备就绪 7 5 SG 信号地 8 1 DCD 输入 数据载波检测 20 4 DTR 输出 数据终端准备就绪 计算机 22 9 RI 输入 响铃指示 以上信号在通讯过程之中可能会被全部或部分使用 最简单的通讯仅需 TXD 及 RXD 及 SG 即 可完成 其他的握手信号可以做适当处理或直接悬空 至于是否可以悬空这视乎你的通讯软件 比如说 如果使用 DOS 所提供的 BIOS 通讯驱动程序 那么 这些握手信号则需要做如下处理 浙江科技学院本科毕业设计 论文 36 因为 BIOS 的通讯驱动使用了这些信号 如果使用自己编写的串行驱动程序则可以完全不使用这 些握手信号 4 24 2 RS232RS232 硬件接口设计硬件接口设计 1 1 2 2 3 3 4 4 5 5 6 6 DD CC BB AA Title NumberRevisionSize B Date 2006 5 10Sheet of File C Documents and Settings Sheet2 SchDocDrawn By C1 1 VS 2 C1 3 C2 4 C2 5 VS 6 T2OUT 7 R2IN 8 R2OUT 9 T2IN 10 T1IN 11 R1OUT 12 R1IN 13 T1OUT 14 GND 15 VCC 16 MAX232 U8 1 2 3 4 5 6 7 8 9 11 10 D Connector 9 J1 1uf C7 1uf C4 1uf C6 1uf C5 1uf C3 5 P3 0RXD P3 1TXD 图 4 1 4 2 14 2 1 硬件说明硬件说明 89S52 单片机通过串行通讯口与 PC 机 RS232 串口实现通信的硬件接口电路如图 4 1 所示 由于 PC 系列微机串行口为 RS232C 标准接口 与输入 输出均采用 TTL 电平的 89S52 单片机 在接口规范上不一致 因此 TTL 电平到 RS232 接口电平的转换采用 MAXIM 公司的 MAX232 标准 RS232 接口芯片 该芯片可以用单电压 5V 实现 RS232 接口逻辑 1 3V 15V 和逻辑 0 3V 15V 的电平转换 采用简单的三线制串行通讯接口 无需硬件握手和软件握手 浙江科技学院本科毕业设计 论文 37 4 34 3 程序设计程序设计 4 3 14 3 1 单片机内通信程序的设计 二进制到 ASCII 码转换 PASS MOV A 30H ORL A BIT A 传送到 PC 上位机 LCALL TX CHAR ORL B BIT A LCALL TX CHAR ORL C BIT A LCALL TX CHAR ORL D BIT A LCALL TX CHAR RET INIT RS232 MOV SCON 50H MOV TMOD 20H 定时器 T1 工作方式 2 MOV TL1 0FDH MOV TH1 0FDH SETB TR1 SETB TI RET TX CHAR JNB TI CLR TI MOV SBUF A RET 浙江科技学院本科毕业设计 论文 38 4 3 24 3 2 PCPC 机内通信程序的设计机内通信程序的设计 4 3 2 14 3 2 1 PCPC 机程序界面设计机程序界面设计 PC 机程序界面采用 Windows 窗口模式 考虑到程序的实用性与友好性 提供了串口选择 温 度曲线实时显示 温度实时显示等功能 程序界面如下所示 4 3 2 24 3 2 2 程序代码程序代码 Option Explicit Dim NowX As Integer 现在的 X 轴位置 Dim MaxPlotNo As Long 最长的 X 轴范围 Dim PreValue As Single 前一个测量值 当选择通信端口的 Combo 控件被选中后激活此事件 若用户改变通信端口时 关闭通信端口 Private Sub cmbCOM Click 若通信端口号码和现在的选择一样时就不必理会 直接跳出此子程序 If cmbCOM ListIndex 1 MSComm1 CommPort Then Exit Sub 浙江科技学院本科毕业设计 论文 39 Timer1 Enabled False 关闭定时器 TimeDelay 100 If MSComm1 PortOpen Then MSComm1 PortOpen False 关闭通信端口 End If lblMsg Caption 已停止检测并关闭通讯端口 cmdOpenCOM Enabled True 允许使用 打开通信端口 按钮 End Sub 单击 结束 按钮后激活此事件 使用 End 命令将系统结束 Private Sub cmdEnd Click End End Sub 单击 打开通信端口 按钮后激活此事件 将 MSComm 控件的参数设置好 并打开 激活 开始检测 按钮 Private Sub cmdOpenCOM Click 判断端口号码是否落在 1 16 之间 If cmbCOM ListIndex 0 And cmbCOM ListIndex PreValue 0 01 Then picVoltage Line NowX ValueStr RGB 255 0 0 由上一次的位置画至此点 Else picVoltage Line NowX ValueStr RGB 0 0 255 由上一次的位置画至此点 End If End If PreValue ValueStr NowX NowX 1 位置加 1 If NowX MaxPlotNo Then NowX 0 超过范围则数值归零 End Sub Declare Function GetTickCount Lib kernel32 As Long Sub TimeDelay t As Long 时间延迟子程序 单位是毫秒 ms Dim TT it will send back a 1 if it is powered from the VDD pin If the master receives a 0 it knows that it must supply the strong pullup on the DQ line during temperature conversions See Memory Command Functions section for more detail on this command protocol STRONG PULLUP FOR SUPPLYING DS18B20 DURING TEMPERATURE CONVERSION Figure 2 USING VDD TO SUPPLY TEMPERATURE CONVERSION CURRENT Figure 3 OPERATION MEASURING TEMPERATURE The core functionality of the DS18B20 is its direct to digital temperature sensor The resolution of the DS18B20 is configurable 9 10 11 or 12 bits with 12 bit readings the factory default state This 浙江科技学院本科毕业设计 论文 52 equates to a temperature resolution of 0 5 0 25 0 125 or 0 0625 Following the issuance of the Convert T 44h command a temperature conversion is performed and the thermal data is stored in the scratchpad memory in a 16 bit sign extended two s complement format The temperature information can be retrieved over the 1 Wire interface by issuing a Read Scratchpad BEh command once the conversion has been performed The data is transferred over the 1 Wire bus LSB first The MSB of the temperature register contains the sign S bit denoting whether the temperature is positive or negative Table 2 describes the exact relationship of output data to measured temperature The table assumes 12 bit resolution If the DS18B20 is configured for a lower resolution insignificant bits will co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年第一学期小学语文教研组教师培训计划
- 2025年新能源销售经理工作总结及计划
- 新人教版五年级数学上册学科融合教学计划
- 竹木加工绿色技术趋势-洞察及研究
- 小学四年级班主任心理辅导工作计划
- 贵州民族大学《篮球主项与实践Ⅰ》2023-2024学年第一学期期末试卷
- 场共同合作合同书
- 天津市宁河区2024年数学七年级第一学期期末考试模拟试题含解析
- 护理新手试用期自培自练计划
- 河北农业大学《学术道德规范与论文写作》2023-2024学年第一学期期末试卷
- NB/T 10751-2021矿用往复式气动注浆泵
- 装卸搬运课件
- GB/T 18391.2-2009信息技术元数据注册系统(MDR)第2部分:分类
- GB/T 16924-2008钢件的淬火与回火
- 基础护理学:肌内注射
- 静脉输液(最终版)
- 药品电子监管码管理sop
- 2018年上海高考历史试题及答案
- 医疗器械直调管理制度
- 中储粮内控管理地图手册
- 银行不良贷款责任认定及问责管理工作实施细则
评论
0/150
提交评论