首页 > 实用范文 > 其他范文
基于NRF2401的无线温度传感器的设计论文5篇
编辑:月落乌啼 识别码:130-797695 其他范文 发布时间: 2023-11-15 16:01:50 来源:网络

第一篇:基于NRF2401的无线温度传感器的设计论文

摘要:为了解决传统的温度传感器多点温度测量时的繁杂的布线问题,设计了一种基于单片机技术和无线通讯技术的无线温度传感器。采用无线收发芯片NRF2401和数字温度计DSl8820构成硬件平台,通过EnhancedShockBurstTM收发模式实现对温度数据的传输,采用高增益天线使覆盖区域达到200m范围。

关键词:NRF2401;DSl8820;无线温度传感器

为了解决传统的温度传感器多点温度测量时的繁杂的布线问题,从传统的温度传感器人手,设计了一种基于单片机技术和无线通讯技术的无线温度传感器,本文详细介绍系统的实现。

1系统的设计与实现

1.1总体结构框架

无线温度传感器的系统的总体结构主要包括两个部分:一是温度采集电路,其作用是测量温度并将测量到的温度数据发射给主机;另外一部分是温度信息处理电路,其作用是收集所有的温度信息,处理并显示出这些信息,同时还可以将这些数据传输到PC机上。

1.2数字温度计DS18820

DS18820是一种分辨率可编程设置的单总线数字温度计,它的测温区间从-55℃~+125℃。温度输出位数从9bit~12bit,用户可以通过程序来控制,将温度转化成12bit的数字字节的最大耗时仅需750ms。每一片DSl8820都有唯一的64位序列码,从而允许多片DS18820共存于同一根单总线上,因此用一块单片机可以控制一片区域的温度采集。DSl8820外观和接口如图1和图2所示:

它有3个引脚,1脚为GND电源地;2脚为DQ数字信号输入输出引脚,DS18820通过1根数据总线与单片机进行双向通讯;3脚为VDD外接供电电源输入端。DS18820的供电方式有两种:一种是通过数据线提供寄生电源,此时3脚接地;另一种是直接在VDD上提供电源,供电电压范围为3.0V~5.5V。

1.3单片机的选择

本系统中在温度采集电路和温度信息处理电路中都需要用到单片机,而且单片机是做为系统控制核心。在温度采集电路中对单片机的功耗要求较高而在信息处理电路中对单片机的处理速度有一定的要求。基于价格和电路设计方便的考虑,采用华邦W78E052,它的指令和引脚序列与MCS51兼容,编程简单方便。它最大支持40MHz时钟,供电电压范围宽(2.4V~5.5V),采用3.3V供电,它的10口可以很方便的与DSl8820和NRF2401直接连接。W78E052内部包含2个外部中断、3个定时计数中断和看门狗计时器,用在本系统中具有相当高的性价比。

1.4无线收发模块

NRF2401是一款工作在2.4GHz~2.5GHz的集接收和发送于一体的单片无线通讯芯片。它的无线收发器由频率发生器、增强型模SchockBurstTM式控制器、功率放大器、晶体振荡器、调制器、解调器等部分组成。可以通过SPI接口来设置协议、功率输出和频道选择。它具有较低的电流消耗,供电电压1.9V~3.6V。

2软件的设计

2.1温度采集

DSl8820是以12位输出的,此时的测温分辨率是0.0625。输出的数据是二进制补码格式,低4位为小数位,最高位为符号位。如果是正温度,读出的数据乘以0.0625便是当前的温度值;负温度得转化为正值再相乘。12位输出的耗时是750ms,如果需要提高转换速度,可以选择减少输出位数(如9位最大耗时仅约94ms),但是测温精度有所下降。如果是单片的DSl8820工作,在启动温度转换和度暂存存储器操作命令时可以跳过64位ROM地址匹配。

2.2无线收发

NRF2401有4种工作模式,分别是收发模式,配置模式,空闲模式和关机模式,这四种模式可由PWR_UP寄存器、PRIM_RX寄存器和CE引脚决定。其中收发模式又有EnhancedShockBurstTM、ShockBurstTM和直接收发模式3种,收发模式由配置字来决定。使用EnhancedShockBurstTM收发模式系统编程相对简单,在这种模式下只需改变一个字节的内容便可以实现接收和发送模式的切换,而且稳定性较高。

2.3系统软件框架

温度采集模块的主要工作是采集温度数据并将数据发送给温度信息处理模块,温度采集模块每2s采集并且发送一次。温度信息处理模块可以工作在两种模式:单机模式和联机模式,这两种模式可以通过按键来设定。单机模式下,将各个温度采集模块上采集过来的温度实时显示出来,预先設定的数据进行比较,如果某一处超过警界值,则启动相应的处理措施并发出报警。而在联机模式下,模块则将采集到的数据通过RS232发给上位机,并执行上位机发出的命令。

3结语

本系统的温度测量误差在±0.1℃以内。用板载天线在空旷地的数据传输距离可达40m,如果采用高增益天线可以将通讯距离增大到100m以上,这样覆盖区域可达到200m的范围,从而避免了繁杂的布线的问题。如果要将通讯距离进一步加大,可以在发射端增加功率放大器模块,在接收端加低噪声放大器模块,这样可以大大提升通讯距离。

第二篇:2011基于18B20温度传感器论文

基于单片机18B20的温度计设计

摘要:文章主要介绍有关18B20温度传感器的应用及有关注意事项,经典接线原理图。1.引言:

温度传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产的DS18B20温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢迎。对于我们普通的电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。了解其工作原理和应用可以拓宽您对单片机开发的思路。

2.DS18B20的主要特征:  * 全数字温度转换及输出。 * 先进的单总线数据通信。 * 最高12位分辨率,精度可达土0.5摄氏度。 * 12位分辨率时的最大工作周期为750毫秒。 * 可选择寄生工作方式。 * 检测温度范围为–55°C ~+125°C(–67°F ~+257°F) * 内置EEPROM,限温报警功能。 * 64位光刻ROM,内置产品序列号,方便多机挂接。 * 多样封装形式,适应不同硬件系统。3.DS18B20引脚功能:

•GND 电压地 •DQ 单数据总线 •VDD 电源电压

4.DS18B20工作原理及应用:

DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。18B20共有三种形态的存储器资源,它们分别是:

ROM 只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM。

5.控制器对18B20操作流程:

1、复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。

2、存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。

3、控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指

定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不发送ROM指令,而是用特有的一条“跳过指令”)。ROM指令在下文有详细的介绍。

4、控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。

5、执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令,一般转换时间为500uS。如执行数据读写指令则需要严格遵循18B20的读写时序来操作。数据的读写方法将有下文有详细介绍。6.DS28B20芯片ROM指令表

Read ROM(读ROM)[33H](方括号中的为16进制的命令字)Match ROM(指定匹配芯片)[55H] Skip ROM(跳跃ROM指令)[CCH] Search ROM(搜索芯片)[F0H] Alarm Search(报警芯片搜索)[ECH] 7.DS28B20芯片存储器操作指令表:

Write Scratchpad(向RAM中写数据)[4EH] Read Scratchpad(从RAM中读数据)[BEH] Copy Scratchpad(将RAM数据复制到EEPROM中)[48H] Convert T(温度转换)[44H] Recall EEPROM(将EEPROM中的报警值复制到RAM)[B8H] Read Power Supply(工作方式切换)[B4H] 8.写程序注意事项

DS18B20复位及应答关系

每一次通信之前必须进行复位,复位的时间、等待时间、回应时间应严格按时序编程。

DS18B20读写时间隙:

DS18B20的数据读写是通过时间隙处理位和命令字来确认信息交换的。写时间隙:

写时间隙分为写“0”和写“1”,时序如图7。在写数据时间隙的前15uS总线需要是被控制器拉置低电平,而后则将是芯片对总线数据的采样时间,采样时间在15~60uS,采样时间内如果控制器将总线拉高则表示写“1”,如果控制器将总线拉低则表示写“0”。每一位的发送都应该有一个至少15uS的低电平起始位,随后的数据“0”或“1”应该在45uS内完成。整个位的发送时间应该保持在60~120uS,否则不能保证通信的正常。读时间隙:

读时间隙时控制时的采样时间应该更加的精确才行,读时间隙时也是必须先由主机产生至少1uS的低电平,表示读时间的起始。随后在总线被释放后的15uS

中DS18B20会发送内部数据位,这时控制如果发现总线为高电平表示读出“1”,如果总线为低电平则表示读出数据“0”。每一位的读取之前都由控制器加一个起始信号。注意:必须在读间隙开始的15uS内读取数据位才可以保证通信的正确。在通信时是以8位“0”或“1”为一个字节,字节的读或写是从高位开始的,即A7到A0.字节的读写顺序也是如图2自上而下的。

9.接线原理图:

本原理图采用四位数码管显示,低于100度时,首位不显示示例27.5,低于10度时示例为9.0,低于零度时示例为-3.7。

结束语:基于DS18B20温度测量温度准确,接线简单,易于控制,加以扩展可以应用到各种温度控制和监控场合。

参考文献:

DALLAS(达拉斯)公司生产的DS18B20温度传感器文献

程序:

#include

#define uchar unsigned char #define uint unsigned int

sbit sda=P1^7;sbit dian=P0^7;//小数点显示 uint tem;

uchar h;uchar code tabw[4]={0xf7,0xfb,0xfd,0xfe};//位选 uchar code tabs[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};//数码管数据

//

0 5 6 9

-uchar code ditab[16]= {0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};//查表显示小数位,1/16=0.0625,即当读出数据为3时,3*0.0625=0.1875,读出数据为3时对应1,查表显示1,为4时显2 uchar data temp[2]={0};//高位数据与低位数据暂存 uchar data display[5]={0};//显示缓存

void delay(uchar t)//t为1时延时小于5us { while(t--);} void delay1()//4us {} void delays(uchar m)//1ms { uchar i,j;for(i=0;i

for(j=0;j<110;j++);} void reset()//初始化 { uchar x=1;while(x){

while(x)

{

sda=1;

sda=0;

delay(50);//延时500us以上

sda=1;

delay(5);//等待15us-60us

x=sda;

}

delay(45);

x=~sda;}

sda=1;} void write_s(uchar temp)//写入一个字节 { uchar i;for(i=0;i<8;i++){

sda=1;

sda=0;

delay1();

sda=temp&0x01;

delay(6);

temp=temp/2;} sda=1;delay(1);} uchar read_s()//读出一个字节的数据 { uchar m=0,i;for(i=0;i<8;i++){

sda=1;

m>>=1;

sda=0;

delay1();

sda=1;

delay1();

if(sda)

m=m|0x80;

delay(6);} sda=1;return m;} uint read_1820()//读出温度 { reset();delay(200);write_s(0xcc);//发送命令

write_s(0x44);//发送转换命令

reset();delay(1);write_s(0xcc);

write_s(0xbe);temp[0]=read_s();temp[1]=read_s();tem=temp[1];tem<<=8;tem|=temp[0];return tem;} void scan_led()//数据显示—数码管 { uchar i;for(i=0;i<4;i++){

P0=tabs[display[i]];

P1=tabw[i];

delays(7);

if(i==1)

dian=0;

P1=tabw[i];

delays(2);} } void convert_t(uint tem)//温度转换{ uchar n=0;if(tem>6348){

tem=65536-tem;

n=1;} display[4]=tem&0x0f;display[0]=ditab[display[4]];

display[4]=tem>>4;

display[3]=display[4]/100;

display[1]=display[4]%100;

display[2]=display[1]/10;

display[1]=display[1]%10;if(!display[3]){

display[3]=0x0a;} if(!display[2])

display[2]=0x0a;if(n)

// 取百位数据暂存

// 取后两位数据暂存// 取十位数据暂存

{

n=0;

display[3]=0x0b;} } void main(){ delay(0);delay(0);delay(0);P0=0xff;P1=0xff;for(h=0;h<4;h++)//初始化为零

{

display[h]=0;} reset();write_s(0xcc);write_s(0x44);for(h=0;h<100;h++)//显示0保持

scan_led();while(1){

convert_t(read_1820());//读出并处理

scan_led();//显示温度

} }

第三篇:单片机温度传感器论文_图文.

毕业设计(论文)答辩记录表 学生姓名 所学专业 指导老师 答辩教师提问 性 别 论文题目 答辩小 组成员 学生回答问题情况 班 级 答 辩 记 录 指 导 教 师 评 语 指导老师(签名): 年 月 日 21 初评成绩(由指导老师填写)答辩主持人(签名): 年 月 日 毕业设计(论文)评价表 毕业 设计(论 文)评语 答辩 评语 评 定 等 级 答辩成员签名 年 月 日 22 答辩委员会 主任意见 签字 年 月 日 23

第四篇:CMOS集成温度传感器设计

CMOS数字集成温度传感器设计

1.CMOS数字集成温度传感器设计

CMOS数字集成温度传感器设计包括感温电路、温度调理电路和基准电压产生电路,其中温度调理电路采用最流行的Σ-Δ转换型结构,并结合占空比调制型输出特点而设计,并以电流型数字输出,电路结构如图1所示。

Iptat感温电路Ictat1.2V带隙基准电压电路Σ-Δ调制(1位数字量)Vout0.6V阻抗变换缓冲输出电路

图1 CMOS数字集成温度传感器结构图

2.1

感温电路和带隙基准电路设计

2.1.2

带隙基准原理

Fig.1 Conventional bandgap reference

图1 传统带隙基准电路

传统带隙基准源电路如图1所示,由一个运放、两个双极型晶体管和若干电阻组成[7]。在标准CMOS工艺中,双极型晶体管采用纵向PNP晶体管[8,9],使其工作在二极管状态,因此,双极型晶体管的β值要求不高。其发射极电流为

IIS(eqVBE/kT1)

(1)

其中,IS是饱和电流,VBE是基极-发射极正偏电压。当VBE>>kT/q时,有IISeqVBE/kT,于是有

VBEVTln(I/IS)

(2)

其中,VTkT/q。在图1电路中,运算放大器的作用是在电路处于深度负反馈的情

况下,使A、B两点的电压相等。即VA=VB,由于I1R1=I2R2,并满足

VBE1VBE2I2R(3)

由式(2)得

VBE1VTln(I1/IS1)

(4)VBE2VTln(I1/IS2)

(5)

由此得

I1I2V1(VBE1VBE2)Tln(I1IS2/I2IS1)

(6)R3R3在纵向PNP晶体管设计中,Q2发射结面积为Q1发射结面积的n倍。所以Q2饱和电流也是Q1饱和电流的n倍。即IS2/IS1=n,则

VrefVBE1I1R1VBE1VTR1Rln(2n)

(7)R3R1其中,VBE1是Q1晶体管基极-发射极正偏电压,是一个负温度系数的量,而VT是一个正温度系数的量,通过适当选取电阻R1与R2、R3 的比值和n的大小,就可以使Vref表达式中的正温度系数和负温度系数的作用相互抵消,即获得零温度系数。使Vref不随温度变化,这就是带隙基准原理。

感温电路是根据衬底PNP双极型晶体管E-B结压降VEB的负温度特性[2]和两管E-B结压降差ΔVEB的正温度特性[3],并利用带隙基准原理将两管E-B结压降差ΔVEB加在电阻上,得到随温度成正比的电流信号[4],其核心电路如图2所示的带隙基准电路。图中晶体管Q0~Q8和Q9~Q16为相同尺寸完全匹配的二极管连接形式的CMOS衬底PNP双极型晶体管,M20与M9、M10匹配,M21与M12、M13匹配,电阻R2与R1匹配,由M1~M8构成的二级运放采用共源共栅电流镜结构,Q0和Q1~Q8的E-B结压降直接作为运放的偏置,自偏置大大降低了电路的工作电流,并节省了元件,使输出更加稳定.由于二级运放处于深度负反馈,很容易推导得

VR1VbVcVEB0VEB1kTln8

(1)q

IR1kTln8

(2)qR1该电流信号通过完全相同的MOS晶体管M10和M20影射到R2,得到

VrefR2kTln8VEB9

(3)R1q式(2)中第一项为正温度系数量,第二项VEB9近似为负温度系数量,因此只需选取适当的R2与R1的比值即可获得稳定的基准电压Vref。将感温电路与带隙基准电路进行一体化设计,既降低功耗、减少芯片面积,又提高电源抑制比PSRR(Power Supply Rejection Ratio)。为了保证电路正常开启而设计了启动电路(由M15~M19构成)

图2 带隙基准电路原理图

2.3 一阶Σ-Δ ADC电路改进设计

本设计的温度传感器工作温度范围为-40°C~+140°C,温度变化范围大,而CMOS工艺下数字输出Σ-Δ转换器在获得中等精度的同时具有功耗低占用芯片面积小以及温度变化范围大等特点而适合于本设计中[5],但由于传统的Σ-Δ转换器中比较器的上下门限电平是一,个随温度变化较大的量,需要复杂的电路进行补偿[67],因此利用比较器输出信号加反相器获得互补信号分别控制两对开关以实现对电容C1的充放电和对比较器的两路基准电压进行切换,即控制其高低比较电平切换。开关采用N沟道增强型MOS开关管, 互补信号作为栅极开启电压.电路结构如图3所示.由图可知,该电路中需要提供正温度系数电流Iptat(Proportional To Absolute Temperature)和负温度系数电流Ictat(Complementary To Absolute Temperature)以及两个基准电压Vref1和Vref2.图3 改进后的Σ-Δ调制电路结构图

2.3.1 PTAT电流产生电路设计

由带隙基准电路原理图2可知,M10上的电流为IR1kTln8为正温度系数电流,由qR1于M20与M9、M10匹配,M21与M12、M13匹配,因此将该电流影射到M20和M21,即M14上的电流也是正温度系数电流。为了节省元件、减少芯片面积、降低功耗,而采用 3

PTAT电流电路与带隙基准电路一体化设计,只要用两个NMOS管M11和M14分别代替M20和M21即可。PTAT电路原理图如图4所示。该PTAT电流进入下一级Σ-Δ调制电路中。

图4 PTAT电流产生电路

2.3.2 CTAT电流产生电路设计

CTAT电流产生电路如图5所示。电路中运放的同向输入端输入信号为来自于带隙基准电路的双极型晶体管(Q9~Q16)二极管连接形式的VEB正向电压降信号,运放由M22~M29构成,M23、M24为PMOS差分输入对管,电流镜M25、M26为NMOS管作为输入级负载,同时实现单端化;M29为源跟随输出,其输出信号驱动电阻负载R3(由温度系数小的poly电阻实现),同时连接于运放反向输入端实现电压跟随器功能,则流经电阻R3的电流IR3=VEB9/R3即为CTAT电流,该电流通过折叠电流镜(M27、M30;M28、M31构成)作为与温度相关的信号进入下一级Σ-Δ调制电路中。

图5 CTAT电流产生电路

2.3.3 基准源缓冲输出电路设计

带隙基准缓冲输出电路如图6所示,采用NMOS管作为差分输入管是由于作为单级放大器NMOS管能获得比PMOS管更高的增益(n型载流子迁移率大于p型载流子迁移率,4

约为3~4倍),由M44、M45组成;M42、M43为电流镜负载同时实现差分运放双端输入转单端输出;M46为源跟随输出管作为缓冲器;M41、M47构成了运放的偏置电路,同时M47与M48形成电流镜作为运放的电流沉。运放反相输入端与输出缓冲器M46输出端短接构成电压跟随器结构,因此同向输入端电压Vref(来自于带隙基准电压源)通过电压跟随器后在电阻R4、R5、R6上分压获得我们所需的1.2V和 0.6V输出基准电压,并送入下一级Σ-Δ调制电路中。

图6 基准源缓冲输出电路原理图

其整体电路如图7所示。

图7 CMOS数字集成温度传感器总体电路图

3.仿真结果

利用Cadence Spectre仿真工具,在华晶上华0.6μm CMOS工艺下对带隙基准电压电路进行仿真,电路工作电源电压为5V,25°C时输出为1.248V,电路工作电流小于20µA,功耗小于100µW。图8为基准电压发生器电路在三种不同corner下的输出基准电压随温度变化的趋势。在TT corner,5V电源下,当温度变化范围为-50°C~150°C时,输出变化小于1.14mV(<0.09%),即4.6ppm/°C。在TT corner,当电源电压由4.5V变化到5.5V时,25°C时输出变化小于0.17mV(<0.014%)。在各个corner下输出基准电压随电源电压变化趋势见图9所示。

图8 输出基准电压随温度变化仿真结果

图9 输出基准电压随电源电压变化仿真结果

通过对基准源缓冲器电路进行仿真,其运放作为电压跟随器,闭环增益基本等于1,并且随温度变化时输出对输入基准电压有良好的复制,当温度在-50°C~150°C变化时,输入输出之间误差小于10μV,如图4.15所示,这个数值的误差可以完全忽略不计。

图4.15 缓冲器输入输出随温度变化的跟随曲线

通过对PTAT电流和CTAT电流电路进行仿真,仿真结果如图11所示。由图可知,PTAT输出电流随温度变化约为9.2nA/°C,受工艺影响,三种corner(TT、SS、FF)下电流偏移在±0.76nA之内变化,如图11(a)所示,由于受corner影响较小,图中三条曲线几乎重叠,25°C时,当电源电压由4.5V变化到5.5V时输出电流摆动小于0.7nA,如图11(c)所示。CTAT输出电流随温度的变化约为23nA/°C,如图11(b)所示,三种corner下电流偏移在±2.5nA内变化,由于受corner影响较小,图中三条曲线也几乎重叠。25°C时,当电源电压由4.5V变化到5.5V时输出电流摆动小于4.6nA,如图11(d)所示。由以上数据可知,工艺和电源电压在PTAT电路中对测温精度的影响小于0.25°C,工艺和电源电压在CTAT电路中对测温精度的影响小于0.31°C。PTAT电流产生电路工作电流小于20µA,CTAT电流产生电路工作电流小于25µA。在5V电源下工作,两电路功耗小于225µW。因此,所设计的温度传感器在-40°C~+140°C的温度范围内具有0.5°C的测温精度和500µW的最小功耗。

参考文献(c)

(d)

图3.8(a)三种corner下PTAT电流在-50°C~150°C变化

(b)三种corner下CTAT电流在-50°C~150°C变化(c)25°C时电源电压在4.5V~5.5V变化时PTAT电流的变化(d)25°C时电源电压在4.5V~5.5V变化时CTAT电流的变化(a)

(b)

1、R.A.Bianchi, F.Vinci Dos Santos, J.M.Karamet al.CMOS-Compatible Smart Temperature Sensors.Microelectronics Journal,1998, 29:627-636

2、陈贵灿,程军,张瑞智。.模拟CMOS集成电路设计,西安:西安交通大学出版社,2002,309-321

3、刘恩科,朱秉升,罗晋升.半导体物理学,北京: 国防工业出版社,1997, 33-47

4、Michiel A.P.Pertijs,Gerard C.M.Meijer and Johan H.Huijsing.Precision Temperature Measurement Using CMOS Substrate PNP Transistors.IEEE Sensor Journal,2004, 4(3):294-300

5、Cailin Davis and Ivars Finvers.A 14-Bit High-Temperature ΣΔ Modulator in Standard CMOS IEEE Journal of Solid State Circuits,2003,38:976-986

6、Giuseppe Ferri and Pierpaolo De Laurentiis.A Novel Low Voltage Low Power Oscillator as a Capacitive Sensor Interface for Portable Applications.Sensor and Actuators,1999,76:437-441

7、Olmos.A Temperature Compensated Fully Trimmable On-Chip IC Oscillator.SBCCI,2003, 181-186

第五篇:DS18B20温度传感器设计报告

传感器课程设计

专 业: 计算机控制技术

---数字温度计

年 级: 2011 级 姓 名: 樊 益 明

学 号: 20113042

指导教师: 刘 德 春

阿坝师专电子信息工程系

1.引 言

1.1.设计意义

在日常生活及工农业生产中,经常要用到温度的检测及控制,传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持。其缺点如下:

● 硬件电路复杂; ● 软件调试复杂; ● 制作成本高。

本数字温度计设计采用美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20作为检测元件,测温范围为-55~125℃,最高分辨率可达0.0625℃。

DS18B20可以直接读出被测温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的热点。设计要求

2.1基本要求 1)用LCD12232实现实时温度显示温度和自己的学号。2)采用LED数码管直接读显示。2.2扩展功能

温度报警,能任意设定温度范围实现铃声报警;

33.1单片机89C52模块

单片机89C52是本设计中的控制核心,是一个40管脚的集成芯片构成。引脚部分:单片机引脚基本电路部分与普通设计无异,40脚接Vcc+5V,20脚接地。X1,X2两脚接12MHZ的晶振,可得单片机机器周期为1微秒。RST脚外延一个RST复位键,一端通过10K电阻接Vcc,一端通过10K电阻接地。AT89S52是一种低功耗、高性能的8位CMOS微控制器,具有8K的可编程Flash 存储器。使

资料准备 用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O 口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。P 0口接一个470的上拉电阻。P0口0~8脚接4位共阳数码管的段选,P2口0~4脚接4位共阳数码管的位选,P3.7接DS18B20采集信号。

3.2 DS18B20简介

DALLAS最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济 Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822 “一线总线”数字化温度传感器 同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS1822的精度较差为± 2°C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18B20、DS1822 的特性 DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色!DS1822与 DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。3.3 温度传感器的工作原理

DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s 减为750ms。DS18B20测温原理:低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振 随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值,即为所测温度。

3.4 DS18B20中的温度传感器对温度的测量

高速暂存存储器由9个字节组成,其分配如表5所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在 高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后。

温度数据值格式

下表为12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际 温度。例如+125℃的数字输出为07D0H,实际温度=07D0H*0.0625=2000*0.0625=125℃。

例如-55℃的数字输出为FC90H,则应先将11位数据位取反加1得370H(符号位不变,也不作运算),实际温度=370H*0.0625=880*0.0625=55℃。

可见其中低四位为小数位。

DS18B20温度与表示值对应表

3.5 DS18B20的内部结构

DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如下:

DQ为数字信号输入/输出端;

GND为电源地;

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

1)64位的ROM 光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

2)DS18B20温度传感器的存储器

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。

暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。

3.6 DS18B20的时序

由于DS18B20采用的是单总线协议方式,即在一根数据线实现数据的双向传输,而对89C51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。

由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。

1)DS18B20的复位时序

2)DS18B20的读时序

对于DS18B20的读时序分为读0时序和读1时序两个过程。

对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。

3)DS18B20的写时序

对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。

对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。

4系统框架设计如下图所示:

按照系统设计功能的要求数字温度计总体电路结构框图如下图所示

5硬件设计

温度计采用AT89C51单片机作为微处理器,温度计系统的外围接口电路由晶振、LCD显示电路、复位电路、温度检测电路、LCD驱动电路。

温度计的工作过程是:初始化其接收需要检测的温度,并一直处于检测状态,并将检测到的温度值读取,并转化为十进制数值,通过LCD显示出来,再显示温度,方便用户来读数使用记录数据。

温度计系统的的硬件电路图如下图所示。

DS18B20测温和学号显示

6系统程序的设计

6.1主程序

主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值。温度测量每1s进行一次。

主程序流程图如图4.1.1所示。

初始化调用显示子程序1s到?YN初次上电?N读出温度值温度计算处理显示数据刷新Y发温度转换开始命令

主程序流程图

6.2读出温度子程序

读出温度子程序的主要功能是读出RAM中的9字节。在读出时须进行CRC校验,校验有错时不进行温度数据的改写。

读出温度子程序流程图如图4.2所示。

发DS18B20复位信号发跳过ROM命令CRC校验正确?发读取温度命令Y移入温度暂存器读取操作,CRC校验YNN结束9字节完?

6.3温度转换命令子程序

温度转换命令子程序主要是发温度转换开始命令。当采用12位分辨率时,转换时间大约为750ms。在本程序设计中,采用1s显示程序延时法等待转换的完成。温度转换命令子程序图如图4.3所示。

发DS18B20复位uml发跳过ROM命令发温度转换开始命令

结束

6.4计算温度子程序

计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值的正负判断。

计算温度子程序流程图如图4.4所示。

开始计算小数位温度BCD值温度零下?N计算整数位温度BCD值Y置“+”标志温度值补码置“—”标志结束

6.5显示数据刷新子程序

显示数据刷新子程序主要是对显示缓冲器中得显示数据进行刷新操作,当最高数据显示位为0时,将符号显示位移入下一位。

显示数据刷新子程序流程图如图4.5所示。设计总结

本设计利用89S51芯片控制温度传感器DS18B52,再辅之以部分外围电路实现对环境温度的控制,性能稳定,精度较高,而且扩展性很强。由于DS18B20支持单总线协议,我们可以将多个DS18B52并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B52通信,占用较少的微处理器的端口就可以实现多点测温监控系统。

我们在老师的指导下完成了基于DS18B20的数字温度计的设计和制作。在进行实验的过程中,我们了解并熟悉DS18B20、AT89C2051以及74LS244的工作原理和性能。并且通过温度计的制作,我们将电子技能实训课堂上学到的知识进行运用,并在实际操作中发现问题,解决问题,更加增加对知识的认识和理解。

基于NRF2401的无线温度传感器的设计论文5篇
TOP