温度传感器工作原理

温度传感器工作原理

1.引脚

GND接地。

DQ为数字信号输入\输出端。

VDD为外接电源输入端(在寄生电源接线方式时接地)

2.与单片机的连接方式

单线数字温度传感器DS18B20与单片机连接电路非常简单,引脚1接地(GND),引脚3VCC)接电源+5V,引脚2DQ)接单片机输入\输出一个端口,电压+5V和信号线(DQ)之间接有一个4.7k的电阻。

由于每片DS18B20含有唯一的串行数据口,所以在一条总线上可以挂接多个DS18B20芯片。

外部供电方式单点测温电路如图

外部供电方式多点测温电路如图

3.DS18B20的性能特点

DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器。与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:

独特的单线接口仅需要一个端口引脚进行通信。

多个DS18B20可以并联在唯一的三线上,实现多点组网功能。

不需要外部器件。

在寄生电源方式下可由数据线供电,电压范围为3.0~5.5V

零待机功耗。

温度以9~12位数字量读出

用户可定义的非易失性温度报警设置。

报警搜索命令识别并标识超过程序限定温度(温度报警条件)的器件。

负电压特性,电源极性接反时,温度计不会因发热而烧毁,只是不能正常工作。

4.内部结构

.DS18B20采用3PR35封装或8SOIC封装,其内部结构框图★

64位ROM的位结构如图★。开始8位是产品类型的编号;接着是每个器件的唯一序号,共有48位;最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用单线进行通信的原因。非易失性温度报警触发器TH和TL,可通过软件写入用户报警上下限数据。

MSB LSB MSB LSB MSB LSB

DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PROM

高速暂存RAM的结构为9字节的存储器,结构如图★。前2字节包含测得的温度信息。第34字节是THTL的拷贝,是易失的,每次上电复位时被刷新。第5字节为配置寄存器,其内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转化为相应精度的数值。该字节各位的定义如图★,其中,低5位一直为1TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式,在DS18B20出厂时,该位被设置为0,用户不要去改动;R0R1决定温度转化的精度位数,即用来设置分辨率,其定义方法见表★

高速暂存RAM的第678字节保留未用,表现为全逻辑1。第9字节是前面所有8字节的CRC码可用来检验数据,从而保证通信数据的正确性。




DS18B20接收到转化命令后,开始启动转化。转化完成后的温度值就以16位的带符号扩展的二进制补码形式存储在高速暂存RAM的第12字节中。

单片机可以通过单线接口读出该数据。读数据时,低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。

温度值格式如图

图中,S表示符号位。当S=0时,表示测得的温度值为正值,可以直接将二进制位转化为十进制;当S=0时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制值。

DS18B20完成温度转化后,就把测得的温度值与RAM中的THTL字节内容作比较,若T>TH或T<TL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行报警搜索。

5 DS18B20通信协议

在对DS18B20进行读写编程时,必须严格保证读写时序,否则将无法读取温度结果。根据DS18B20通信协议,主机控制DS18B20完成温度转化必须经过3个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。

复位要求主CPU将数据线下拉500us,然后释放,DS18B20收到信号后等待16~60us,然后发出60~240us的存在低脉冲,主CPU收到此信号表示复位成功。

DS18B20的ROM指令如表RAM指令如表★

ROM指令表

RAM指令表

6.使用注意事项

●因为硬件开销小,需要复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时必须严格保证读写时序,否则将无法读取测温结果。

●当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时需加以注意。

●连接DS18B20电缆的长度超过50m时,最好采用屏蔽4芯双绞线,其中一对为接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地,正常通信距离可达150m

●在DS18B20测温程序中,向DS18B20发出温度转换时总要等到DS18B20的返回信号,一旦某个DS18B20接触不好或断线当程序读该DS18B20时,将没有返回信号,程序进入死循环。

7.温度数据的计算处理方法

DS18B20读取出的二进制值必须先转化成十进制值,才能用于字符的显示。DS18B20的转换精度为9~12位可选,为了提高精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即温度值为温度寄存器里的二进制值乘以0.0625,就是实际的十进制温度值。

通过列举观察可以发现,一个十进制值与二进制值间有很明显的关系,就是把二进制的高字节的低半字节和低字节的高半字节组成一个字节,这个字节的二进制值化为十进制值后,就是温度值的百、十、个位值,而剩下的低字节的低半字节化成十进制后,就是温度值的小数部分。因为小数部分是半字节,所以二进制值范围是0~F,转化成十进制小数值就是0.0625的倍数(0~15倍)。这样需要4位的数码管来显示小数部分。实际应用不必有这么高的精度,采用一位数码管来显示小数,可以精确到0.1

就是二进制与十进制的近似对应关系表。

小数部分二进制与十进制的近似对应关系表

STR-36B的使用要点

1. STR-36B功能概述

STR-36B无线收发模块是微功率、ISM全波段的无线通信模块。该模块内置控制CPU;核心接收芯片外包金属屏蔽外壳,保证了数据的可靠收发。

2. STR-36B的实物照片、引脚及功能

3. STR-36B的无线唤醒功能

STR-36B无线发射模块在没有数据传输的情况下,若没有设置无线唤醒功能,则无线模块一直保持发射或接收数据状态;若设置无线唤醒功能,则无线模块进入休眠状态。

当模块的WKEN引脚接低电平时,模块工作在无线唤醒模式下。模块上电复位后,处于接收状态,在持续3S的时间内,如果没有接收到串口发来的数据,或没有收到有效数据,则模块进入休眠状态。在休眠过程中,如果收到串口发来的唤醒信号或无线唤醒信号,则被唤醒,同时WKUP引脚输出一个低电平脉冲信号。微处理器向该模块的串口发1字节的数据可实现串口唤醒。模块被唤醒后,若在3S的时间内没有收到串口发来的唤醒信号或无线唤醒信号,模块又进入休眠状态。

4. STR-36B无线模块硬件电路设计

●无线收发模块电路天线的选择

天线的长度应取发射的1\4波长,当发射信号频率为433MHZ时,天线的最佳长度为18cm。为匹配,这里选择SANT307天线。

无线收发模块电路布局需要注意的问题

无线收发模块应该安装在电路板边缘,离开周围器件5mm以上,以免受分布参数影响而停震。

无线收发模块电路的电源设置

在实际应用中,STR-36B可与其他设备共用电源,但必须选择纹波系数小的电源,不建议使用开关电源。另外,系统设备中若有其他设备,则需可靠接地。

液晶显示模块LCM1602

1.1602字符型LCM的特性

word/media/image1.gif内部具有字符发生器ROMCGROM),即字符库。可显示1925×7点阵字符,如图★,由该字符库可看出LCM显示的数字和字母部分的代码值,恰好与ASCII码表中的数字和字母相同。所以在显示数字和字母时,只需向LCM送人对应的ASCII码即可。

word/media/image2.gif模块内有64字节的自定义字符RAM(CGRAM)用户可自定义8个5×7点阵字符。

③模块内有80字节的数据显示存储器(DDRAM)

LCM引脚

命令格式及功能说明

1.清屏指令功能:<1> 清除液晶显示器,即将DDRAM的内容全部填入"空白"的ASCII码20H;
     <2> 光标归位,即将光标撤回液晶显示屏的左上方;
     <3> 将地址计数器(AC)的值设为0。

2.光标归位指令

功能:<1> 把光标撤回到显示器的左上方;
      <2> 把地址计数器(AC)的值设置为0;
      <3> 保持DDRAM的内容不变。

3.进入模式设置指令

功能:设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。

4.显示开关控制指令

功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下:
                位名              设置
                 D                0=显示功能关               1=显示功能开
                 C                0=无光标                   1=有光标
                 B                0=光标闪烁                 1=光标不闪烁


5.设定显示屏或光标移动方向指令

功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下:
                S/C               R/L                设定情况
                0                 0                  光标左移1格,且AC值减1
                0                 1                  光标右移1格,且AC值加1
                1                 0                  显示器上字符全部左移一格,但光标不动
                1                 1                  显示器上字符全部右移一格,但光标不动


6.功能设定指令

功能:设定数据总线位数、显示的行数及字型。参数设定的情况如下:
                位名              设置
                DL                0=数据总线为4位                  1=数据总线为8位
                N                 0=显示1行                        1=显示2行
                F                 0=5×7点阵/每字符                1=5×10点阵/每字符


7.设定CGRAM地址指令

功能:设定下一个要存入数据的CGRAM的地址。

8.设定DDRAM地址指令
功能:设定下一个要存入数据的CGRAM的地址。

9.读取忙信号或AC地址指令

功能:<1> 读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令; 当BF=0时,液晶显示器可以接收单片机送来的数据或指令;<2> 读取地址计数器(AC)的内容。

10.数据写入DDRAM或CGRAM指令一览

功能:<1> 将字符码写入DDRAM,以使液晶显示屏显示出相对应的字符;
      <2> 将使用者自己设计的图形存入CGRAM。

11.从CGRAM或DDRAM读出数据的指令一览

AT89S51引脚图,AT89S51单片机引脚说明及管脚定义

 

AT89S51引脚图

1

AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS -51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
    AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个 全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。         AT89S51引脚图
     此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断 系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三 种封装形式,以适应不同产品的需求。
  主要功能特性:
  · 兼容MCS-51指令系统        · 4k可反复擦写(>1000次)ISP Flash ROM
  · 32个双向I/O口        · 4.5-5.5V工作电压
  · 2个16位可编程定时/计数器  · 时钟频率0-33MHz
  · 全双工UART串行中断口线        · 128x8bit内部RAM
  · 2个外部中断源        · 低功耗空闲和省电模式
  · 中断唤醒省电模式        · 3级加密位
  · 看门狗(WDT)电路        · 软件设置空闲和省电功能
  · 灵活的ISP字节和分页编程        · 双数据寄存器指针

编辑本段主要性能特点

  14k Bytes Flash片内程序存储器;

  2128 bytes的随机存取数据存储器(RAM);

  332个外部双向输入/输出(I/O)口;

  45中断优先级2中断嵌套中断;

  56个中断源;

  6216位可编程定时器/计数器

  72个全双工串行通信口;

  8看门狗WDT)电路;

  9、片内振荡器时钟电路

  10、与MCS-51兼容;

  11、全静态工作:0Hz-33MHz

  12、三级程序存储器保密锁定;

  13、可编程串行通道;

  14、低功耗的闲置和掉电模式。

管脚说明

  VCC电源电压输入端。

  GND电源地。

  P0口:P0口为一个8位漏级开双向I/O口,每脚吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

  P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

  P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口除了作为普通I/O口,还有第二功能:

  P3.0 RXD(串行输入口)

  P3.1 TXD(串行输出口)

  P3.2 /INT0(外部中断0

  P3.3 /INT1(外部中断1

  P3.4 T0T0定时器的外部计数输入)

  P3.5 T1T1定时器的外部计数输入)

  P3.6 /WR(外部数据存储器的写选通)

  P3.7 /RD(外部数据存储器的读选通)

  P3口同时为闪烁编程和编程校验接收一些控制信号。

  I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。89C51P0P1P2P3口作为输入时都是准双向口。除了P1口外P0P2P3口都还有其他的功能。

  RST复位输入端,高电平有效。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

  ALE/PROG地址锁存允许/编程脉冲信号端。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVXMOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

  PSEN外部程序存储器的选通信号,低电平有效。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

  EA/VPP外部程序存储器访问允许。当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

  XTAL1片内振荡器反相放大器和时钟发生器的输入端。

  XTAL2片内振荡器反相放大器的输出端。

《温度传感器工作原理.doc》
将本文的Word文档下载,方便收藏和打印
推荐:
下载文档
热门推荐
相关推荐