搜档网
当前位置:搜档网 › sht75温度传感-c51代码

sht75温度传感-c51代码

sht75温度传感-c51代码
sht75温度传感-c51代码

//FOSC==11.5920MHz; baudrate==4800

#include

#include

#define uchar unsigned char

#define uint unsigned int

//***************************************************************************** *************************************************************

// adr command

#define measure_TEMP 0x03 //温度测量指令000 00011; temperature meterage

#define measure_HUMI 0x05 //湿度测量指令000 00101; humidity meterage

#define status_reg_r 0x07 //读寄存器状态指令000 00111

#define status_reg_w 0x06 //写寄存器状态指令000 00110

#define Reset 0x1e //软启动指令000 11110 ;

//***************************************************************************** ****************************************************************************

//状态寄存器;"0"是默认值

#define HotUp 0x04; //加热;状态寄存器第三位为"1"时开加热,为"0"时关加热

#define BitWide 0x01; //状态寄存器第1位为"1"时,=8位相对湿度,12位温度分辨率。状态寄存器第1位为"0"时,12位相对湿度,14位温度分辨率

#define OTP 0X02; //不从OTP重下载

//***************************************************************************** ************************************************************************

bit NOACK = 0;

bit ACK = 1;

sbit sda = P1^0;

sbit scl = P1^1;

enum {TEMP,HUMI};

uchar temp_value[2];

uchar humi_value[2];

uchar check_number;

uchar a1;

//uchar error1;

unsigned char *t_v = temp_value;

unsigned char *h_m = humi_value;

float RH1, TEMPE;

float *t = &TEMPE;

float *h = &RH1;

//***************************************************************************** /********************void start ()*********************/

/********************起动"sht711"时序***************************/

//sda-----______----

//scl ___---___---___

void start_sht11(void)

{

sda = 1;

scl = 0;

_nop_();_nop_();_nop_();_nop_();

scl = 1;

_nop_();_nop_();_nop_();_nop_();

sda = 0;

_nop_();_nop_();_nop_();_nop_();

scl = 0;

_nop_();_nop_();_nop_();_nop_();

scl = 1;

_nop_();_nop_();_nop_();_nop_();

sda = 1;

_nop_();_nop_();_nop_();_nop_();

scl = 0;

_nop_();_nop_();

}

//******************************************************

//通讯中断后,用以下时序重新连接

//sda---------------------------------------____--

// 1 2 3 4 5 6 7 8 9

//scl__--__--__--__--__--__--__--__--__--__--__--__

void connection_sht11(void)

{

uchar i;

sda =1;

_nop_();_nop_();

scl = 0;

_nop_();_nop_();

for(i=0;i<9;i++)

{

scl = 1;

_nop_();_nop_();_nop_();_nop_();

scl = 0;

_nop_();_nop_();_nop_();_nop_();

}

start_sht11();

}

//**************************************************************** uchar sensor_write(uchar value)

{

uchar i;

uchar error = 0;

for(i=0x80;i>0;i/=2)

{

if(i&value)

sda = 1;

else

sda = 0;

_nop_();_nop_();

scl = 1;

_nop_();_nop_();_nop_();_nop_();

scl = 0;

_nop_();_nop_();_nop_();_nop_();

}

_nop_();_nop_();_nop_();_nop_();

sda = 1;

_nop_();_nop_(); _nop_();_nop_();

scl = 1;

_nop_();_nop_();_nop_();_nop_();

error = sda; //if sda == '0 ',sht11 ack

scl = 0;

_nop_();_nop_();

return(error);

}

//******************************************************************* uchar sensor_read(bit ack)

{

uchar i , value = 0 ;

sda = 1;

for(i=0x80;i>0;i/=2)

{

scl = 1;

_nop_();_nop_();_nop_();_nop_();

if(sda)

value = value | i;

scl = 0;

_nop_();_nop_();_nop_();_nop_();

sda = 1;

_nop_();_nop_();_nop_();_nop_();

}

sda = !ack;

scl = 1;

_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();

sda = 1;

_nop_();_nop_();_nop_();_nop_();

return value;

}

//**********************************************************************

/*uchar soft_reset(void)

{

uchar error = 0;

connection_sht11();

error+= sensor_write(Reset);

return(error);

}

//***********************************************************************/ uchar read_status_reg()//uchar *P_v,uchar *P_c)

{

uchar j,l, error = 0;

start_sht11();

error = sensor_write(status_reg_r);

j = sensor_read(ACK);

l = sensor_read(NOACK);

return(error);

}

//************************************************************************* uchar write_status_reg(uchar s )//*P_values)

{

uchar error = 0;

start_sht11();

error += sensor_write(status_reg_w);

error += sensor_write(s);//*P_values);

return(error);

}

//************************************************************************* uchar sensor_measure(uchar mode,uchar *value,uchar *check)

{

uchar k,k1, error = 0;

uint i;

start_sht11();

switch(mode)

{

case TEMP: error += sensor_write(measure_TEMP);break;

case HUMI: error += sensor_write(measure_HUMI);break;

default : break;

for(i=0;i<65535;i++)

if(sda == 0) break;

if(sda)

error = error+1;

k = sensor_read(ACK);

k1 = sensor_read(ACK);

*check = sensor_read(NOACK);

*value=k;

*(value+1)=k1;

return(error);

}

//***************************************************************************** *******

/*void init_uart(void)

{

TH1=0xfd;

TL1=0xfd;

TMOD=0x25;

PCON=0x80;

SCON=0xf0;

ES=1;

EA=1;

TR1=1;

} */

//***************************************************************************** *******

void ssio(void) interrupt 4 using 3

{

ES = 0;

REN = 0;

RI = 0;

a1 = SBUF;

REN=1;

ES = 1;

}

//***************************************************************************** ********

/*

//RH = c1+c2*SORH+c3*SORH*SORH

{

//float RH;

const float C1 = 4;

const float C2 = 0.0408;

const float C3 = -0.0000028;

int SORH ;

SORH =(int) *h_m;

SORH = SORH << 8;

SORH = SORH | ((int)*(h_m+1));

RH1 = C2 * SORH + C3 * SORH * SORH - C1;

//return(RH);

}

//***************************************************************************** ******

//T = d1+d2*SOT

void TEM(void)

{

int K;

const float d1 = 40;

const float d2 = 0.01;

//int TP3 ;

K =(int)*t_v;

K<<=8;

K = K | ((int)*(t_v+1));

TEMPE = d2 * K - d1;

//return(T2);

}

*/

//***************************************************************************** ********

void main(void)

{

//float tm,hi;

uchar error1;

char x, s=0;

//char *P;

TH1=0xf3;

TL1=0XF3;

TMOD=0x20;

PCON=0x00;

SCON=0x50;

ES=1;

EA=1;

TR1=1;

if(read_status_reg()!=0x00) { write_status_reg(0x00);}

while(1)

{ // connection_sht11();

switch(a1)

{

case 1 :

{

EA=0;

error1 = sensor_measure(TEMP,temp_value,&check_number);

x = *t_v;

SBUF = x;

while(TI==0);

TI = 0;

//1 byte

x = *(t_v+1);

SBUF = x;

while(TI==0);

TI = 0;

a1 = 0;

break;

}

case 2 :

{

EA=0;

error1 = sensor_measure(HUMI,humi_value,&check_number);

x = *h_m;

SBUF = x;

while(TI==0);

TI = 0;

//1 byte

x = *(h_m+1);

SBUF = x;

while(TI==0);

TI = 0;

a1 = 0;

break;

}

default:

break;

}

EA=1;

}

}

数字电子基础课程设计——数字体温计(温度计)

课程设计任务书 学生姓名:专业班级:电信..班 指导教师:刘运苟工作单位:信息工程学院 题目:16 数字体温计 初始条件: 具备数字电子电路的理论知识;具备数字电路基本电路的设计能力;具备数字电路的基本调试手段;自选相关电子器件;可以使用实验室仪器调试。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1、3位LED显示; 2、检测温度0—45摄氏度; 3、绝对误差0.1度; 4、安装调试并完成符合学校要求的设计说明书; 5、设计电源; 6、焊接:采用实验板完成,不得使用面包板。 时间安排: 第十九周一周,其中3天硬件设计,2天硬件调试 指导教师签名: 2013年 5 月 30日 系主任(或责任教师)签名:年月日

摘要 本次课设题目是数字温度计电路,本说明书围绕数字电子技术基础中模数转换电路、相应芯片的管脚功能,以及模电中的电压比较器进行了简要的分析,为设计建立了理论基础。其次,从实验设计电路出发,对仿真的过程及结果进行了简述与分析,与实验要求进行比对,最后进行了实物的制作与调试,给出了相应的焊接工艺,结果分析,材料列表。并在报告书的结尾部分,给出了本次课程设计的心得感受,相应的总结体会。 关键词:模数转换、proteus仿真、电压比较器、温度传感器

Abstracts In this design,I was asked to design a device that can detect the temperature .The report mainly describes the basic knowledges about the theoretical treatment and the thought of the design .Also,we used the proteus to simulate the real part.The report gives the analysis,the photos of the results,the finished product ,and the compare between the theory and realism .At the end of the report,I give some personal feeling and the experience I got in these days. Keywords:voltage comparator proteus Digital Analog Converter

百度文库-单片机C51程序设计

实训任务二:控制LED灯点亮 实训准备:KeilC51软件, proteus仿真软件,STP-ISC下载软件,单片机实验板,电源线、下载线 分组情况:每4人为一组,组长一名。小老师两名协助老师指导操作过程。知识目标:1.了解单片机各引脚功能; 2.理解单片机最小系统组成部分; 3.掌握C51赋值语句用法; 4.掌握C51语言编程、编译基本方法; 5.掌握proteus仿真软件基本操作方法; 6.掌握C51程序编写、编译、仿真调试、下载流程及方法。 能力目标:1.培养学生数字逻辑分析能力; 2.培养学生分析问题及解决问题的能力; 情感目标:1.培养学生团队合作的精神; 2.培养学生的创新意识; 教学重点:1.C51赋值语句用法; 2.C51语言编程、编译基本方法 教学难点:1.半英文操作界面的理解 2.调试程序的方法 课时:8课时

讲授新课1.单片机引脚功能(40引脚) 电源、接地、I/O端口、控制引脚、时钟引脚、 复位引脚 2.单片机最小系统 组成部分:单片机、电源、接地、复位电路、 时钟电路。 解释时钟电路,比喻为学校的铃声。 区分:单片机系统与最小系统 3.C51语言基本格式 #include void main( ) { P2=0XF0; } 宏定义,头文件,主函数,分号结束 重点:赋值语句(A=B) 4.硬件电路分析 共阳极,低电平亮 观察单片机实物, 区分各引脚功能。 查 相关电路 了 求 小组回答, 习任务

实训任务三:控制LED流水灯 实训准备:KeilC51软件, proteus仿真软件,STC-ISP下载软件, 单片机实验板,电源线、下载线 分组情况:每3-4人为一组,组长一名。小老师两名协助老师指导操作过程。知识目标:1.理解C51语言数据类型; 2.了解单片机的机器周期; 3.理解数组概念及用法; 4.掌握for循环语句的用法; 5.掌握while循环语句的简单用法; 6.掌握C51程序编写、编译、仿真调试、下载流程及方法。 能力目标:1.培养学生思维逻辑分析能力; 2.培养学生分析问题及解决问题的能力; 情感目标:1.培养学生团队合作的精神; 2.培养学生的创新意识; 教学重点:1.for循环语句的用法; 2.数组的概念及用法; 3.C51语言数据类型; 教学难点:1.for循环语句的用法; 2.数组的概念及用法; 课时:4课时 子任务一:控制LED灯闪烁(2课时)

数字温度传感器测温显示系统说明书

数字温度传感器测温显示系统说明书 学院:机械与电子控制工程学院 班级:0907班 组长:段晗晗 组员:兰天宝、侯晨、李楠楠、王珂、赵亮 时间:2011-7-1

目录 任务书------------------------------------------------------------------------------3 摘要---------------------------------------------------------------------------------4 正文---------------------------------------------------------------------------------4 总体设计方案 第1章主控制器 1.1AT89C51 特点及特性--------------------------------------------------------4 1.2管脚功能说明-----------------------------------------------------------------5 1.3振荡器特性--------------------------------------------------------------------7 1.4芯片擦除-----------------------------------------------------------------------7 第2章温度采集部分设计 2.1.DS18B20 技术性能描述----------------------------------------------------7 2.2.DS18B20 管脚排列及内部结构-------------------------------------------8 2.3.DS18B20 工作原理----------------------------------------------------------8

电子技术基础数字温度计课程设计

课程设计(论文) 题目名称数字温度计 课程名称电子技术课程设计 学生姓名屈鹏 学号1141201112 系、专业电气工程系电气工程及其自动化 指导教师李海娜 2013年12月17日

邵阳学院课程设计(论文)任务书 年级专业11级电气工程及其自动化学生姓名屈鹏学号1141201112 题目名称数字温度计设计设计时间2013.12.9—2013.12.20 课程名称电子技术课程设计课程编号121202306 设计地点电工电子实验室408、409 一、课程设计(论文)目的 电子技术课程设计是电气工程及自动化专业的一个重要的实践性教学环节,是对已学模拟电子技术、数字电子技术知识的综合性训练,这种训练是通过学生独立进行某一课题的设计、安装和调试来完成,着重培养学生工程实践的动手能力、创新能力和进行综合设计的能力,并要求能设计出完整的电路或产品,从而为以后从事电子电路设计、研制电子产品奠定坚实的基础。 二、已知技术参数和条件 用中小规模集成芯片设计并制作一数字式温度计,具体要求如下: 1、温度范围0-100度。 2、测量精度0.2度。 3、三位LED数码管显示温度。 三、任务和要求 1.按学校规定的格式编写设计论文。 2.论文主要内容有:①课题名称。②设计任务和要求。③方案选择与论证。④方案的原理框图,系统电路图,以及运行说明;单元电路设计与计算说明;元器件选择和电路参数计算的说明等。 ⑤必须用proteus或其它仿真软件对设计电路仿真调试。对调试中出现的问题进行分析,并说明解决的措施;测试、记录、整理与结果分析。⑥收获体会、存在问题和进一步的改进意见等。 注:1.此表由指导教师填写,经系、教研室审批,指导教师、学生签字后生效; 2.此表1式3份,学生、指导教师、教研室各1份。

DS18B20温度传感器使用方法以及代码

第7章 DS18B20温度传感器 7.1 温度传感器概述 温度传感器是各种传感器中最常用的一种,早起使用的是模拟温 度传感器,如热敏电阻,随着环境温度的变化,它的阻值也发生线性变化,用处理器采集电阻两端的电压,然后根据某个公式就可以计算出当前环境温度。随着科技的进步,现代的温度传感器已经走向数字化,外形小,接口简单,广泛应用在生产实践的各个领域,为我们的生活提供便利。随着现代仪器的发展,微型化、集成化、数字化、正成为传感器发展的一个重要方向。美国DALLS半导体公司推出的数字化温度传感器DS18B20采用单总线协议,即单片机接口仅需占用一个 I/O端口,无需任何外部元件,直接将环境温度转化为数字信号,以数码方式串行输出,从而大大简化了传感器与微处理器的接口。 7.2 DS18B20温度传感器介绍 DS18B20是美国DALLAS^导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9?12位的数字 值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入 DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的 DS18B20供电,而无需额外电源。因而使用

DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较 DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 1. DS18B20温度传感器的特性 ①独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口 线即可实现微处理器与DS18B20勺双向通讯。 ②在使用中不需要任何外围元件。 ③可用数据线供电,电压范围:+3.0~ +5.5 V。 ④测温范围:-55 ~+125 C。固有测温分辨率为0.5 C。 ⑤通过编程可实现9~12位的数字读数方式。 ⑥用户可自设定非易失性的报警上下限值。 ⑦支持多点组网功能,多个 DS18B20可以并联在惟一的三线上,实现多点测温。 ⑧负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 2. 引脚介绍 DS18B20有两种封装:三脚TO-92直插式(用的最多、最普遍的封装)和八脚SOIC贴片式。下图为实验板上直插式 DS18B20的原理图。 3. 工作原理 单片机需要怎样工作才能将DS18B2 0中的温度数据独取出来呢?F面将给出详细分析

WZPK型温度传感器使用说明书

WZPK型温度传感器 使用说明书 泰兴市热工仪表厂2015年01月10日

隔爆温度传感器 ■应用 通常和显示仪表、记录仪表、电子计算机等配套使用。直接测量生产现场存在碳氢化合物等爆炸的0~500℃范围内液体、蒸汽和气体介质以及固体表面温度。 ■特点 ●压簧式感温元件,抗振性能好; ●测量范围大; ●毋须补偿导线,节省费用; ●进口薄膜电阻元件,性能可靠稳定。 ●防爆标志:Ex dⅡBT1~T5,防爆合格证号:GYB ■主要技术参数 ●产品执行标准 JB/T8622-1997 《工业铂热电阻技术条件》 《爆炸性气体环境用电气设备第1部分:设备通用要求_部分2》和《爆炸性气体环境用电气设备第2部分:隔爆型“d”保护的设备》,《设备保护等级(EPL)为Gb级的设备产品防爆标志为Ex d ⅡB T1~T5 Gb ■常温绝缘电阻 防爆热电阻在环境温度为15~35℃,相对湿度不大于80%,试验电压为10~100V(直流)电极及外套管之间的绝缘电阻≥100MΩ.m。

■测温范围及允差 ●测温范围及允差 注:t为感温元件实测绝对值。 ●防爆分组形式 d Ⅱ□ T □ 温度组别:T1~T5 防爆等级:A、B、C 工厂用电气设备 d:隔爆型 ai:本质安全型 ○电气设备类别 Ⅰ类——煤矿井下用电气设备 Ⅱ类——工厂用电气设备 ○防爆等级 防爆热电偶的防爆等级按其使用于爆炸性气体混合物最大安

全间隙分为A、B、C三级。 ○温度组别 防爆热电偶的温度组别按其外漏部分允许最高表面温度分为T1~T5 ●防爆等级 ●Exd Ⅱ□T□ ●Exia Ⅱ□T□ ●防护等级:IP65 ■接线盒形式

数字温度计课程设计报告

课程设计报告书 课程名称:电工电子课程设计 题目:数字温度计 学院:信息工程学院 系:电气工程及其自动化 专业班级:电力系统及其自动化113 学号:6100311096 学生姓名:李超红 起讫日期:6月19日——7月2日 指导教师:郑朝丹职称:讲师 学院审核(签名): 审核日期:

内容摘要: 目前,单片机已经在测控领域中获得了广泛的应用,它除了可以测量电信以外,还可以用于温度、湿度等非电信号的测量,能独立工作的单片机温度检测、温度控制系统已经广泛应用很多领域。 单片机是一种特殊的计算机,它是在一块半导体的芯片上集成了CPU,存储器,RAM,ROM,及输入与输出接口电路,这种芯片称为:单片机。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便的优点,使它迅速的得到了推广应用,目前已成为测量控制系统中的优选机种和新电子产品中的关键部件。单片机已不仅仅局限于小系统的概念,现已广泛应用于家用电器,机电产品,办公自动化用品,机器人,儿童玩具,航天器等领域。 本次课程设计,就是用单片机实现温度控制,传统的温度检测大多以热敏电阻为温度传感器,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路转换成数字信号才能由单片机进行处理。本次采用DS18B20数字温度传感器来实现基于51单片机的数字温度计的设计。 本文介绍了一个基于STC89C52单片机和数字温度传感器DS18B20的测温 系统,并用LED数码管显示温度值,易于读数。系统电路简单、操作简便,能 任意设定报警温度并可查询最近的10个温度值,系统具有可靠性高、成本低、功耗小等优点。 关键词:单片机数字温度传感器数字温度计

最新单片机原理与应用及C51程序设计(第二版)课后答案

第一章 1.给出下列有符号数的原码、反码和补码(假设计算机字长为8位)。 +45 -89 -6 +112 答:【+45】原=00101101,【+45】反=00101101,【+45】补=00101101 【-89】原=11011001,【-89】反=10100110,【-89】补=10100111 【-6】原=10000110,【-6】反=11111001,【-6】补=11111010 【+112】原=01110000,【+45】反=01110000,【+45】补=01110000 2. 指明下列字符在计算机内部的表示形式。 AsENdfJFmdsv120 答:41H 73H 45H 4EH 64H 66H 4AH 46H 6DH 64H 73H 76H 31H 32H 30H 3. 什么是单片机? 答:单片机是把微型计算机中的微处理器、存储器、I/O接口、定时器/计数器、串行接口、中断系统等电路集成到一个集成电路芯片上形成的微型计算机。因而被称为单片微型计算机,简称为单片机。 4. 单片机的主要特点是什么? 答:主要特点如下: 1) 在存储器结构上,单片机的存储器采用哈佛(Harvard)结构 2) 在芯片引脚上,大部分采用分时复用技术 3) 在内部资源访问上,采用特殊功能寄存器(SFR)的形式 4) 在指令系统上,采用面向控制的指令系统 5) 内部一般都集成一个全双工的串行接口 6) 单片机有很强的外部扩展能力 5. 指明单片机的主要应用领域。 答:单机应用:1) 工业自动化控制;2) 智能仪器仪表;3) 计算机外部设备和智能接口;4) 家用电器多机应用:功能弥散系统、并行多机处理系统和局部网络系统。 第二章 1. MCS-51单片机由哪几个部分组成? 答:MCS-51单片机主要由以下部分组成的:时钟电路、中央处理器(CPU)、存储器系统(RAM和ROM)、定时/计数器、并行接口、串行接口、中断系统及一些特殊功能寄存器(SFR)。 2. MCS-51的标志寄存器有多少位,各位的含义是什么?

GFSIGNET2350温度传感器操作说明书.

? SIGNET 2820 Series Conductivity Sensor Instruction Manual ENGLISH 1. Wiring 2. Recommended Position 3. 2819/2820/2821 In-line Installation SAFETY INSTRUCTIONS FOR IN-LINE ELECTRODE INSTALLATION 1.Do not remove from pressurized lines.2.Do not exceed maximum temperature/pressure specifications.3.Wear safety goggles or face shield during installation/service.4.Do not alter product construction. Failure to follow safety instructions may result in severe personal injury! Customer supplied pipe tee/reducer Standard fitting kit Hole up Mark hole position 3/4 in. NPT Hand tighten only! Optional fitting kit Hole up Mark hole position

Customer supplied pipe tee/reducer 1/2 in. NPT Hand tighten only! O-ring O-ring Sealant Sealant +GF + SIGNET 5800CR ?Use three conductor shielded cable for cable extensions up to 30 m (100 ft max.? Shield must be maintained through cable splice RED WHITE BLACK SILVER (SHLDS h l d S i g n a l I N T e m p . I N I s o . G n d CH 2 CH 1 RED SILVER (SHLD BLACK

DS18B20温度传感器使用方法以及代码

第7章DS18B20温度传感器 7.1 温度传感器概述 温度传感器是各种传感器中最常用的一种,早起使用的是模拟温度传感器,如热敏电阻,随着环境温度的变化,它的阻值也发生线性变化,用处理器采集电阻两端的电压,然后根据某个公式就可以计算出当前环境温度。随着科技的进步,现代的温度传感器已经走向数字化,外形小,接口简单,广泛应用在生产实践的各个领域,为我们的生活提供便利。随着现代仪器的发展,微型化、集成化、数字化、正成为传感器发展的一个重要方向。美国DALLS半导体公司推出的数字化温度传感器DS18B20采用单总线协议,即单片机接口仅需占用一个I/O端口,无需任何外部元件,直接将环境温度转化为数字信号,以数码方式串行输出,从而大大简化了传感器与微处理器的接口。7.2 DS18B20温度传感器介绍 DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用

DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 1.DS18B20温度传感器的特性 ①独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 ②在使用中不需要任何外围元件。 ③可用数据线供电,电压范围:+3.0~ +5.5 V。 ④测温范围:-55 ~+125 ℃。固有测温分辨率为0.5 ℃。 ⑤通过编程可实现9~12位的数字读数方式。 ⑥用户可自设定非易失性的报警上下限值。 ⑦支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 ⑧负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 2.引脚介绍 DS18B20有两种封装:三脚TO-92直插式(用的最多、最普遍的封装)和八脚SOIC贴片式。下图为实验板上直插式DS18B20的原理图。 3.工作原理 单片机需要怎样工作才能将DS18B20中的温度数据独取出来呢?下面将给出详细分析。

简易数字温度计课程设计

唐山学院 单片机原理课程设计 题目简易数字温度计 系 (部) 智能与信息工程学院 班级 姓名 学号 指导教师 2017 年 1 月 2 日至 1 月 6 日共 1 周 2017年1月4日

《单片机原理》课程设计任务书

课程设计成绩评定表

目录 1.方案论证 0 2.硬件设计............................................ 错误!未定义书签。 2.1系统构成 (1) 2.2器件选择 (1) 2.2.1 AT89C51概述 (1) 2.2.2 AT89C51引脚功能 (3) 2.2.3复位电路的设计 (4) 2.3数字温度传感器 (5) 2.3.1 DS1621的技术指标 (5) 2.3.2 DS1621的工作原理 (6) 2.4 单片机和DS1621接口电路...................... 错误!未定义书签。 2.5 七段LED数码显示电路 (7) 3.系统软件设计 (9) 3.1 编程语言选择 (9) 3.2 主程序的设计 (9) 3.3 温度采集模块设计 (10) 3.4 温度计算模块设计 (10) 3.5 串行总线编程 (11) 4.软硬件调试结果分析 (12) 5.设计总结 (13) 6.参考文献 (14) 附录A 多点温度采集系统电路原理图 (15)

1.方案论证 该系统可以使用方案一:热敏电阻;方案二:数字温度芯片DS1621实现。采用数字温度芯片DS1621 测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0—100摄氏度时,最大线形偏差小于1摄氏度。DS1621 的最大特点之一采用了单总线的数据传输,由数字温度计DS1621和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用51 单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。 控制工作,还可以与PC 机通信上传数据,另外AT89S51 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。 该系统利用AT89C51芯片控制温度传感器DS1621进行实时温度检测并显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度。该系统扩展性非常强,它可以在设计中加入时钟芯片DS1302以获取时间数据,在数据处理同时显示时间,并可以利用AT24C16芯片作为存储器件,以此来对某些时间点的温度数据进行存储,利用键盘来进行调时和温度查询,获得的数据可以通过MAX232芯片与计算机的RS232接口进行串口通信,方便的采集和整理时间温度数据。故采用了方案二。 测温电路的总体设计方框图如图1-1所示,控制器采用单片机AT89C51,温度传感器采用DS1621,用5位LED数码管以串口传送数据实现温度显示。 图1-1 测温电路的总体设计方框图

T255温度传感器使用说明

T255温度传感器使用说明 T255温度传感器是一款用来检测功率半导体温升的理想模拟器件,主要配合运放整形或直接送入单片机A/D口采集温度信息,并作出实时显示或过温保护等动作。 T255是以其阻值变化来反映温度变化的,故选用相应电阻分压来获取对应电压值是非常重要的参数。 典型:R(25℃)=5.000kΩ ,静动态特性好,灵敏度高。 阻值-温度特性表 温度℃ 阻值KΩ 温度℃ 阻值KΩ 温度℃ 阻值KΩ 温度℃ 阻值KΩ -20 37.49 11 8.801 42 2.674 73 0.980 -19 35.53 12 8.439 43 2.582 74 0.951 -18 33.76 13 8.093 44 2.493 75 0.923 -17 32.09 14 7.764 45 2.409 76 0.896 -16 30.52 15 7.451 46 2.327 77 0.870 -15 29.03 16 7.151 47 2.249 78 0.844 -14 27.62 17 6.866 48 2.174 79 0.820 -13 26.29 18 6.593 49 2.102 80 0.796 -12 25.03 19 6.333 50 2.032 81 0.773 -11 23.84 20 6.085 51 1.966 82 0.751 -10 22.72 21 5.848 52 1.902 83 0.729 -9 21.65 22 5.621 53 1.840 84 0.709 -8 20.64 23 5.405 54 1.780 85 0.689 -7 19.68 24 5.198 55 1.723 86 0.670 -6 18.77 25 5.000 56 1.668 87 0.650 -5 17.91 26 4.811 57 1.615 88 0.632 -4 17.10 27 4.630 58 1.564 89 0.614 -3 16.32 28 4.457 59 1.514 90 0.597 -2 15.59 29 4.291 60 1.467 91 0.581 -1 14.89 30 4.132 61 1.421 92 0.565 0 14.23 31 3.980 62 1.376 93 0.549 1 13.60 3 2 3.835 6 3 1.33 4 94 0.534 2 13.01 3 3 3.696 6 4 1.292 9 5 0.520 3 12.4 4 34 3.562 6 5 1.252 9 6 0.506 4 11.90 3 5 3.434 6 6 1.214 9 7 0.492 5 11.39 3 6 3.311 6 7 1.177 9 8 0.479 6 10.90 3 7 3.194 6 8 1.141 9 9 0.466 7 10.44 38 3.081 69 1.107 100 0.453 8 10.00 39 2.973 70 1.073 9 9.580 40 2.869 71 1.041 10 9.181 41 2.769 72 1.010

数字式温度计设计课程设计

课程设计说明书 课程设计名称:单片机课程设计 课程设计题目:数字式温度计的设计学院名称:电气信息学院 专业班级:15电力(3)班 学生学号:1504200623 学生姓名:曾高 学生成绩: 指导教师:易先军 课程设计时间:2017.10.30 至2017.11.5

格式说明(打印版格式,手写版不做要求) (1)任务书三项的内容用小四号宋体,1.5倍行距。 (2)目录(黑体,四号,居中,中间空四格),内容自动生成,宋体小四号。 (3)章的标题用四号黑体加粗(居中排)。 (4)章以下的标题用小四号宋体加粗(顶格排)。 (5)正文用小四号宋体,1.5倍行距;段落两端对齐,每个段落首行缩进两个字。 (6)图和表中文字用五号宋体,图名和表名分别置于图的下方和表的上方,用五号宋体(居中排)。(7)页眉中的文字采用五号宋体,居中排。页眉统一为:武汉工程大学本科课程设计。 (8)页码:封面、扉页不占页码;目录采用希腊字母Ⅰ、Ⅱ、Ⅲ…排列,正文采用阿拉伯数字1、2、3…排列;页码位于页脚,居中位置。 (9)标题编号应统一,如:第一章,1,1.1,……;论文中的表、图和公式按章编号,如:表1.1、表1.2……;图1.2、图1.2……;公式(1.1)、公式(1.2)。

课程设计任务书 一、课程设计的任务和基本要求 (一)设计任务(从“单片机课程设计题目”汇总文档中任选1题,根 据所选课题的具体设计要求来填写此栏) 1. 用DS18B20设计一款能够显示当前温度值的温度计; 2. 通过切换按钮可以切换华氏度和摄氏度显示; 3. 测量精度误差在正负0.5摄氏度以内。 (二)基本要求 1.有硬件结构图、电路图及文字说明; 2.有程序设计的分析、思路说明; 3.有程序流程框图、程序代码及注释说明; 4.完成系统调试(硬件系统可以借助实验装置实现,也可在Proteus 软件中仿真模拟); 5.有程序运行结果的截屏图片。

基于LM35的体温计的设计-数字电子基础课程设计

目录 1.总体方案的设计与选择.......................................... - 1 - 1.1 数字温度计的设计标准与要求.............................. - 1 - 1.2 系统基本方案............................................ - 1 - 1.3 各模块基本功能与设计方案选择与论证...................... - 1 - 1.3.1 温度采集模块的设计与论证........................... - 1 - 1.3.2 信号转换模块的设计与方案选择....................... - 3 - 1.3.3 显示模块的设计与方案选择........................... - 4 - 2. 硬件电路设计................................................. - 6 - 2.1 温度采集模块的硬件设计.................................. - 6 - 2.2 信号转换模块硬件电路设计................................ - 7 - 2.3 显示模块设计电路图...................................... - 8 - 2.4 电路中相关参数设定...................................... - 8 - 3. 电路仿真........................................ 错误!未定义书签。 3.1 仿真软件简介............................... 错误!未定义书签。 3.2 仿真分析.................................. 错误!未定义书签。 4 电路的安装与调试.............................................. - 9 - 5 误差分析...................................................... - 9 - 6 实物照片......................................... 错误!未定义书签。 7.心得体会..................................................... - 11 -

基于单片机的数字温度计设计报告

课程设计报告 引言 随着电子技术的不断发展,我们能应用到的电子产品也越来越多。而生活中我们用的很多电子产品都越来越轻巧,价格也越来越便宜.利用电子芯片实现的东西也越来越来越多,比如数字温度计。当然,非电子产品的常用温度计也很便宜。此次课设论文所介绍的是自己动手制作的一个高精度数字温度计。本次课设不但丰富了课余生活,还从实践中学到并了很多新知识,并从中巩固了以前的知识。 用Protel 99软件来设计制作电路板——PCB(Printed circuit Bound)。在PCB上,布置一系列的芯片、电阻、电容等元件,通过PCB上的导线相连,构成电路,一起实现一定的功能。电路通过连接器或者插槽进行输入/输出,有时还有显示部分(如发光二极管LED、.数码显示器等)。可以说,PCB是一块连接板,它的主要目的是为元件提供连接,为整个电路提供输入输出端口和显示,电气连接通性是PCB最重要的特性之一。PCB在各种电子设备中有如下功能:(1)提供集成电路等各种电子元件固定、装配的机械支撑。(2)实现集成电路等各种电子元件之间的布线和电气连接或电绝缘,提供所要的电气特性。(3)为电动装配提供阻焊徒刑,为元器件插装、检查、维修提供识别符和图形。 做本课题的所用到的知识是我们学过的模拟电子电路以及数字逻辑电路等,当然还用到了刚刚学过不久的单片机知识。本次课设是把理论和实践结合起来,这不但可以锻炼自己的动手能力,而且还可以加深对数字逻辑电路和模拟电子电路的学习和理解。同时也激起了我学好单片机的斗志。为了全面清晰的表达,本论文用图文并茂的方式,尽可能详细的地介绍此次设计的全过程。

1.设计务任和要求 1.1、基本范围-20℃——100℃ 1.2、精度误差小于0.5℃ 1.3、LED 数码直读显示 1.4、可以任意设定温度的上下限报警功能 2. 系统总体方案及硬件设计 2.1数字温度计设计方案论证 2.1.1方案一 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D 转换电路,其中还涉及到电阻与温度的对应值的计算,感温电路比较麻烦。而且在对采集的信号进行放大时容易受温度的影响从而出现较大的偏差。 2.1.2 方案二 考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。 2.2系统总体设计 温度计电路设计总体设计方框图如图2.1所示,控制器采用单片机STC89C52,温度传感器采用DS18B20,用4位LED 数码管以串口传送数据实现温度显示。

DS18B20温度传感器的使用方法

这是关于DS18B20的读写程序,数据脚,晶振 ;温度传感器18B20汇编程序,采用器件默认的12位转化,最大转化时间750微秒 ;可以将检测到的温度直接显示到AT89C51的两个数码管上 ;显示温度00到99度,很准确无需校正! ORG 0000H ;单片机内存分配申明! TEMPER_L EQU 29H;用于保存读出温度的低8位 TEMPER_H EQU 28H;用于保存读出温度的高8位 FLAG1 EQU 38H;是否检测到DS18B20标志位 a_bit equ 20h ;数码管个位数存放内存位置 b_bit equ 21h ;数码管十位数存放内存位置 MAIN: LCALL GET_TEMPER;调用读温度子程序 ;进行温度显示,这里我们考虑用网站提供的两位数码管来显示温度 ;显示范围00到99度,显示精度为1度 ;因为12位转化时每一位的精度为度,我们不要求显示小数所以可以抛弃29H的低4位;将28H中的低4位移入29H中的高4位,这样获得一个新字节,这个字节就是实际测量获得的温度 ;这个转化温度的方法可是我想出来的哦~~非常简洁无需乘于系数 MOV A,29H MOV C,40H;将28H中的最低位移入C RRC A MOV C,41H RRC A MOV C,42H RRC A MOV C,43H RRC A MOV 29H,A LCALL DISPLAY;调用数码管显示子程序 CPL AJMP MAIN ; 这是DS18B20复位初始化子程序 INIT_1820: SETB NOP CLR ;主机发出延时537微秒的复位低脉冲 MOV R1,#3 TSR1:MOV R0,#107 DJNZ R0,$ DJNZ R1,TSR1 SETB ;然后拉高数据线 NOP

电子技术课程设计数字温度计

课程名称:电子技术课程设计 设计题目: 院系: 专业: 年级: 姓名: 指导教师: XXXX大学XX校区 XX 年X月X日

课程设计任务书 专业: 姓名: 学号: 开题日期: XX年X月X日完成日期:XX年X月X日 题目: 数字温度计 一、设计的目的 1、设计一个简易的数字温度计满足一定的测量范围并通过LED显示出来; 2、了解常用电子器件的类型和特性,并掌握合理选用的原则; 3、进一步熟悉电子仪器的使用方法; 4、学会撰写课程设计总结报告; 5、培养独立分析问题和解决实际问题的能力; 6、培养严肃认真的工作作风和严谨的科学态度。 二、设计的内容及要求 1、测温范围为—30℃~+120℃,精度为±0.5℃; 2、LED数码管直读显示,当温度为“负”则最高位显示“—”号,最低位显示单位“C”; 3、当温度不在测量范围内(<—30℃或>+120℃)时,蜂鸣器报警且发光二极管闪烁。 三、指导教师评语 四、成绩: 指导教师(签章) 年月日

摘要:本设计以AT89C51单片机为核心,DS18B20数字式温度传感器为温度传感器,7段LED数码管构成显示电路;单片机控制DS18B20进行温度采集,在接收DS18B20传回数据后进行处理,通过74LS245驱动数码管显示实时温度的动态显示。由于采用的是可编程器件作为控制核心,与传统的温度计相比该温度计具有示数直观,精度可调,功能易扩展等优点。 关键词:数字温度计、AT89C51 、DS18B20 、74LS245 、LED 设计背景 随着人们生活水平的不断提高,数字化无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,科学技术向着数字化、智能化控制方向发展,其中数字温度计就是一个典型的例子。数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用。温度计是常用的热工仪表,常用于工业现场作业过程的温度测量,在工业生产过程中,不仅需要了解当前温度读数,而且还希望能了解过程中的温度变化情况。随着工业现代化的发展,对温度测量仪表的要求越来越高,而数字温度计具有结构简单,抗干扰能力强,功耗小,可靠性高,速度快等特点,更加适合于工业过程中以及科学试验中对温度进行在线测量的要求。数字温度计的高速发展,使它已成为实现测量自动化、提高工作效率不可缺少的仪表;温度计在实际生产和人们的生活中都有广泛应用,为此我选择了设计一个数字温度计。

温度传感器选型手册060510

WD温度传感器 热电偶、热电阻、变送器 选型样本 温度传感器选型 WENDU CHUANGANQI XUANXING YANGBEN 欢迎拨打移动热线:1360 115 9475 或010-8170 9716垂询或索取资料!

概述: 工业用热电偶作为温度测量,通常用来和显示仪表等 配套使用,以直接测量各种生产过程中从0℃至+1800℃ 范围内的液体、蒸汽和气体介质以及固体表面的温度测量。 技术指标: ★ 测温范围、型号、分度号、精度等见附表 ★ 绝缘电阻:温度为15~35℃\相对湿度≤80% 热电偶的若电极和保护管应为应不小于5M Ω(电压100V), ★ 热电偶的最小插入深度应不小于其保护管直径的8~10倍 ★ 引线可为二线或三线 ★ 响应时间:金属保护管Φ16 t <90s Φ12 t <30s ★ 保护管材料:不锈钢1Cr18Ni9Ti 、探钢20#、高铝质 附表一: 附表二: 单位:mm K :镍铬-镍硅 E :镍铬-康铜 S :铂铑10-铂 B :铂铑30-铂铑6 1、无固定装置式 2、固定螺纹式 3、活动法兰式 4、固定法兰式 5、直角式 6、固定螺纹锥形 2、防溅式 3、防水式 4、防爆式 保护管规格 0、 Φ16mm 不锈钢管 1、 Φ12mm 不锈钢管 2、Φ20mm 不锈钢管 3、Φ16mm 高铝管 4、Φ25mm 高铝管 欢迎拨打移动热线:1360 115 9475或010-8170 9716垂询或索取资料!

概述: 工业用热电阻作为温度测量仪表,通常用来和显示仪表 等配套使用,直接测量各种生产过程中从-200℃~+500℃范 围内的液体、蒸汽和气体介质以及固体表面的温度。 技术指标: ★测温范围、型号、分度号、精度等见附表三 ★ 绝缘电阻:温度为15~35℃\相对湿度≤80% 热电偶的若电极和保护管应为应不小于5M Ω(电压100V), ★ 热电偶的最小插入深度应不小于其保护管直径的8~10倍 ★ 引线可为二线或三线 ★ 响应时间:金属保护管Φ16 t <90s Φ12 t <30s ★ 保护管材料:不锈钢1Cr18Ni9Ti 、探钢20#、高铝质 ★ 防爆标志:dIIbT4 附表三: 选型规格: 温度仪表 热电阻 热电阻材料 铂热电阻 铜热电阻 按装固定形式 无固定装置 固定螺纹 活动法兰 固定法兰 接线盒形式 2防溅式 3防水式 保护管规格 0Φ16不锈钢管 1≤Φ12不锈钢管 欢迎拨打移动热线:1360 115 9475或010-8170 9716垂询或索取资料!

相关主题