温度数据采集系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章系统硬件设计

温度数据采集系统和接收显示硬件电路主要包含温度数据采集、发送、接收和显示等模块,温度数据采集采用数字式温度传感器DS18B20,数据的发送和接收采用无线数据收发模块PTR2000,整个系统采用单片机STC89C52进行各模块的协调控制,下面对各个模块进行介绍。

3.1 数字温度传感器DS18B20

3.1.1 DS18B20 的性能特点

DS18B20 是由DALLAS 半导体公司生产的单线型智能数字温度传感器,是新一代适配微处理器的智能温度传感器,广泛应用于工业、农业等领域,具有体积小、接口方便和传输距离远的特点,在一根通信线上可以挂很多个DS18B20,很方便。具有以下特点:

(1)具有独特的1-Wire 接口,只需要一个端口引脚就可以进行通信;

(2)具备多节点能力,能够简化分布式温度检测应用中的设计;

(3)不需要外部元件;

(4)可以直接从数据线供电,电源电压范围在3~5.5V;

(5)在待机状态下可以不消耗电源电量;

(6)测量温度范围在-55~+125℃;

(7)在-10~+85℃时测量精度在±0.5℃;

(8)可以用程序设定9~12 位分辨率;

(9)用户可根据需要定义温度的上下限报警设置。

DS18B203 脚封装的管脚排列图如图3.1.1 所示。

图 3.1.1 DS18B20 管脚排列图

DS18B20 只有三个引脚。其中,引脚1 和3 分别是GND 和VDD,引脚2 是DQ 端,是用于数据信息的输入和输出。当给DS18B20 加电后,单片机可以通过DQ 端写入命令,并可以读出含有温度信息的数字量。在使用寄生电源情况下,可以向DS18B20 提供电源。

3.1.2 DS18B20 的内部结构

DS18B20的内部框图如图3.1.2所示。

图3.1.2 DS18B20的内部框图

DS18B20主要由64位ROM、温度传感器、非易失性温度报警触发器TH和TL及暂存器四部分组成。64位ROM存储器具有独一无二的序列号,可以看作是该DS18B20的地址系列号,是在出厂前就被光刻好的。暂存器各字节具有不同的意义,0和1字节是用于存储温度传感器数字输出的温度寄存器;2字节和3字节分别是非易失性上限报警触发寄存器(TH)和下限报警触发寄存器(TL);4字节的配置寄存器能够用来设置温度转换的精度;

5、6和7字节作为内部保留使用。DS18B20有两种供电方式,可以使用寄生电源供电,也可以使用外部电源。在使用寄生电源的时候,不用外部电源,而是在总线为高时由DQ端提供电源,同时向内部电容充电,以求在总线拉低时为DS18B20提供电量。上电后,DS18B20进入空闲状态;当MCU向DS18B20发出Convert T [44h]的命令后,DS18B20 向MCU传送转换状态,开始温度测量和A/D转换。温度数据以带符号位的补码形式存储在温度寄存器中,温度寄存器格式如图3.1.3所示。

图3.1.3 DS18B20温度寄存器格式

温度的正负值是由符号为来说明的,正为0,负为1。表3.1给出一部分数字数据与温度的对应关系。

表3.1 DS18B20温度与数据对应关系

3.1.3 DS18B20芯片ROM指令表

Read ROM(读ROM)[33H] (方括号中的为16进制的命令字)

这个命令允许总线控制器读到DS18B20的64位ROM。只有当总线上只存在一个DS18B20的时候才可以使用此指令,如果挂接不止一个,当通信时将会发生数据冲突。

Match ROM(指定匹配芯片)[55H]

这个指令后面紧跟着由控制器发出了64位序列号,当总线上有多只DS18B20时,只有与控制发出的序列号相同的芯片才可以做出反应,其它芯片将等待下一次复位。这条指令适应单芯片和多芯片挂接。

Skip ROM(跳跃ROM指令)[CCH]

这条指令使芯片不对ROM编码做出反应,在单芯片的情况之下,为了节省时间则可以选用此指令。如果在多芯片挂接时使用此指令将会出现数据冲突,导致错误出现。

Search ROM(搜索芯片)[F0H]

在芯片初始化后,搜索指令允许总线上挂接多芯片时用排除法识别所有器件的64位ROM。

Alarm Search(报警芯片搜索)[ECH]

在多芯片挂接的情况下,报警芯片搜索指令只对符合温度高于TH或小于TL报警条件的芯片做出反应。只要芯片不掉电,报警状态将被保持,直到再一次测得温度什达不到报警条件为止。

3.1.4 DS18B20芯片存储器操作指令表:

Write Scratchpad (向RAM中写数据)[4EH]

这是向RAM中写入数据的指令,随后写入的两个字节的数据将会被存到地址2(报警RAM之TH)和地址3(报警RAM之TL)。写入过程中可以用复位信号中止写入。

Read Scratchpad (从RAM中读数据)[BEH]

此指令将从RAM中读数据,读地址从地址0开始,一直可以读到地址9,完成整个RAM 数据的读出。芯片允许在读过程中用复位信号中止读取,即可以不读后面不需要的字节以减少读取时间。

Copy Scratchpad (将RAM数据复制到EEPROM中)[48H]

此指令将RAM中的数据存入EEPROM中,以使数据掉电不丢失。此后由于芯片忙于EEPROM储存处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持10MS,来维持芯片工作。

Convert T(温度转换)[44H]

收到此指令后芯片将进行一次温度转换,将转换的温度值放入RAM的第1、2地址。

相关文档
最新文档