《单片机应用技术项目教程项目六任务课件2》由会员分享,可在线阅读,更多相关《单片机应用技术项目教程项目六任务课件2(19页珍藏版)》请在金锄头文库上搜索。
1、项目六测控系统设计任务2数字温度计设计任务内容利用单片机AT89C51作为控制器,利用数字温度传感器DS18B20作为温度采集器,设计一个数字温度计,可以实时采集环境温度。学习目标1.了解常用的温度传感器2.掌握单总线协议规范及应用方法3.掌握温度传感器DS18B20的应用,会设计接口电路并编写控制代码4.巩固液晶显示器LCD1602的接口电路设计和程序设计方法知 识 点知识点一常见的温度传感器知识点二单总线协议规范与应用方法知识点三DS18B20的数据格式 温度传感器是用来将温度信号转变成电信号的一种转换元件,通常用于对温度和与温度有关的参量进行电子测量。常见的温度传感器有以下几种:1热电阻
2、 热电阻传感器主要是利用电阻值随温度变化而变化这一特性来测量温度及与温度有关的参数,适用于温度检测精度要求比较高的场合,可测量-200+500范围内的温度。目前较为广泛的热电阻材料为铂、铜、镍等。知识点一 常见的温度传感器2热敏电阻 热敏电阻是一种电阻值随温度变化的半导体传感器。它适用于测量微小的温度变化,在一些精度要求不高的测量和控制装置中得到广泛应用。 热电阻和热敏电阻两种传感器都将温度转换成电阻的变化,在应用中,通常还需信号处理电路,将电阻的变化转换为电压值或电流值,经A/D转换后进行间接的测量。知识点一 常见的温度传感器3热电偶 热电偶是一种能将温度信号转换为电压信号的传感器。它的价格
3、低廉,易于更换,有标准接口,而且具有很大的温度量程,使用较为广泛。 在应用中,热电偶将温度信号转换为电压信号后,经A/D转换后进行间接测量。知识点一 常见的温度传感器4集成温度传感器 集成电路温度传感器是将作为感温器件的温敏晶体管及其外围电路集成在同一单片上的温度传感器。与分立元件的温度传感器相比,这种新型温度传感器的最大优点在于小型化,使用方便和成本低廉,成为半导体温度传感器的主要发展方向之一。 DS18B20就是DALLAS公司生产的一款单总线接口的数字温度传感器,测量范围为:-55至+125,分辨率可设置为912位。知识点一 常见的温度传感器 单总线是Maxim全资子公司DALLAS的一
4、项专有技术,与串行数据通信方式不同,它采用单根信号线,既传输时钟,又双向传输数据。在使用中具有节省I/O口线资源、结构简单、成本低廉、便于扩展和维护等诸多优点。 DS18B20就是单总线的典型应用芯片。下面就以DS18B20为例,介绍单总线协议规范及应用。知识点二 单总线协议规范与应用方法1DS18B20的接口电路 单总线芯片常用的是3引脚封装和10引脚封装。这里以3引脚封装为例。DS18B20的芯片封装如图6.11所示,其中DQ为单总线引脚。在控制和通信过程中,主控芯片通过它进行时钟和数据的传送,使用时需要外接一个4.7k的上拉电阻,保证总线的闲置状态为高电平。与单片机的典型接口电路如图6.
5、12所示,使用单片机的P1.0口与DS18B20的数据线连接。知识点二 单总线协议规范与应用方法图6.11 DS18B20芯片封装图6.12 DS18B20接口电路图2单总线协议通信命令 单总线因采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的,具有独特的接线方式,因而其通信协议也与普通的串行通信方式不同。典型的单总线命令序列如下: 初始化; ROM命令,跟随要交换的数据; 功能命令,跟随要交换的数据; 每次访问单总线器件,都必须严格遵循这个命令序列,若出现混乱,则单总线器件不会响应主机。知识点二 单总线协议规范与应用方法 DS18B20的部分ROM命令和功能命令如下,其余请自己查
6、阅芯片手册知识点二 单总线协议规范与应用方法3单总线协议通信时序 为了实现数据和信号的输入输出,单总线协议规定了三种不同的通信时序:初始化时序、读时序和写时序。而AT89C51单片机在硬件上并不支持单总线协议,因此,只能采用软件方法模拟单总线的协议时序,从而完成与DS18B20之间的通信。 单总线协议中将主机作为主设备,单总线器件作为从设备。每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回传数据,则是在执行写命令之后,主机再次启动读时序完成数据的接收。数据和命令的传输都是以低位在先的串行方式进行。下面分别结合时序,完成单片机模拟时序的控制代码。知识点二 单总线协议规范与
7、应用方法(1)初始化时序 在初始化时,单片机先将DQ设置为低电平,维持至少480s后,再将其变成高电平,即提供一个480sT960s的复位脉冲。等待1560s后,检测DQ是否变为低电平,若已变为低电平,则表明初始化成功,等待至少480s后,即可进行下一步操作。否则,器件不存在或者已经损坏故障。知识点二 单总线协议规范与应用方法(2)写时序 DS18B20写字节书序如图6.14所示。单片机先将DQ设置为低电平,延时15s后,将待写的数据以串行格式送一位至DQ端,DS18B20将在60sT120s时间内接收一位数据。发送完一位数据后,将DQ状态再次拉回到高电平,并保持1s的恢复时间,然后再写下一位
8、数据。知识点二 单总线协议规范与应用方法(3)读时序 当单片机准备从DS18B20读取每一位数据时,应先发出启动读时序脉冲,即将DQ总线设置为低电平,保持1s以上时间后,再将其设置为高电平。启动后等待15s,以便DS18B20能可靠地将温度数据传送到DQ引脚上。然后单片机再开始读取DQ总线上的结果。单片机在完成读取每位数据后至少要保持1s的回复时间。而完成整个字节读取后,要等待至少45s的时间。知识点二 单总线协议规范与应用方法 DS18B20温度传感器是一个直接数字化的温度传感器,可将-55至+125之间的温度值按9位、10位、11位、12位的分辨率进行量化。传感器上电后默认的值是12位的分辨率。当DS18B20接收到单片机发出的温度转换命令0x44后,便开始进行温度的采集和转换操作。 12位的测量结果以二进制补码形式存放,如图6.16所示,分为高低8位两个字节分别存放于两个RAM单元,其中前面的5位S为符号位。知识点三 DS18B20的数据格式任务实施任务实施课后练习课后练习 选择4位数码管显示的方式,重新完成本任务的硬件和软件设计。