当前位置:文档之家› Stm32F407IG内部温度传感器测试(CORTEX-M4+ADC+DMA)

Stm32F407IG内部温度传感器测试(CORTEX-M4+ADC+DMA)

Stm32F407IG内部温度传感器测试(CORTEX-M4+ADC+DMA)
Stm32F407IG内部温度传感器测试(CORTEX-M4+ADC+DMA)

Stm32F407IG内部温度传感器测试(CORTEX-M4+ADC+DMA)

刚才发了ADC的一般用法,得知stm32内部内置了一个温度传感器,于是趁热调试了一下内部温度传感器。没有软件滤波,正如手册里所说的,该温度传感器起到一个检测温度变化的作用,如果你想要精确的温度测量,请你外置测温元件...呵呵,测试结果如图:

代码如下:

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

Copyright (C), 2012-2022, yin.

FileName: main.c

Author: 小枣年糕

Date: 2012\05\01

Description: ADC1 DMA tempersensor printf

Version: V3.0

IDE: MDK 4.22a

HardWare: stm32F407IG HSE = 25M PLL = 168M

History: V1.0

Function: 利用ADC读取芯片内部温度传感器的值

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

#include

#include

/*定义ADC1的数据寄存器地址,DMA功能要用到外设的数据地址

*ADC1的数据地址为外设基地址+偏移地址,基地址在RM0090 Reference

*manual(参考手册)的地址映射表里,为0x40012000,ADC_DR

*偏移地址为0x4C,故实际地址为0x40012000+0x4C = 0x4001204C */

#define ADC1_DR_Addr ((uint32_t)0x4001204C)

__IO uint16_t ADCoverValue;

__IO float Temper;

void GPIO_Config(void);

void ADC_Config(void);

void USART_Config(void);

void DMA_Config(void);

void NVIC_Config(void);

void Delay(uint32_t nCount);

/* printf函数重定向*/

int fputc(int ch, FILE *f);

main()

{

/*在主函数main之前通过调用启动代码运行了SystemInit函数,而这个函数位于system_stm32f4xx.c”。

程序运行起始于启动文件的第175行(LDR R0, =SystemInit)。sys时钟为HSE频率/PLL_M*PLL_N/PLL_P,

定义HSE为25M,则sys时钟频率为168M */

GPIO_Config();

ADC_Config();

USART_Config();

DMA_Config();

NVIC_Config();

GPIO_SetBits(GPIOG, GPIO_Pin_6); //关闭LED

ADC_SoftwareStartConv(ADC1); //如果不是外部触发则必须软件开始转换

while (1)

{

Delay(0x0ffffff);

//printf("size of int is %d \n", sizeof(int)); //测试可知32位系统的int占4个字节

//printf("size of ADCoverValue is %d \n", sizeof(ADCoverValue));

Temper = (ADCoverValue*3300/4096-760)/2.5 + 25;

printf("ADCoverVaule=%04X Temper=%.2f C\n", ADCoverValue, Temper); //串口输出温度值

/*因为DMA工作是独立于CPU之外的,所以在DMA工作的同时CPU可以做其他事*/

}

}

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

Function: void GPIO_Config(void)

Description: GPIO配置函数

Input: 无

Output:无

Return:无

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

void GPIO_Config(void)

{

GPIO_InitTypeDef GPIO_InitStructure;

/* 使能GPIOC\GPIOF\GPIOG时钟*/

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOG | RCC_AHB1Periph_GPIOF, ENABLE);

GPIO_StructInit(&GPIO_InitStructure);

/* 初始化GPIOG的Pin_6为LED输出*/

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; //指定第六引脚

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; //模式为输出

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //频率为快速

GPIO_Init(GPIOG, &GPIO_InitStructure); //调用IO初始化函数

/* 配置GPIOC_Pin6为TX输出*/

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF; //设置为复用,必须为AF,OUT不行

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOC,&GPIO_InitStructure);

/* 配置GPIOC_Pin7为RX输入*/

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_7;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF; //这也必须为复用,与M3不同!

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOC,&GPIO_InitStructure);

/* GPIO引脚复用功能设置*/

GPIO_PinAFConfig(GPIOC, GPIO_PinSource6, GPIO_AF_USART6);//这相当于M3的开启复用时钟,只配置复用的引脚,GPIO_PinAFConfig(GPIOC, GPIO_PinSource7, GPIO_AF_USART6);//

}

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

Function: void ADC_Config(void)

Description: ADC配置函数

Input: 无

Output:无

Return:无

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

void ADC_Config(void)

{

ADC_InitTypeDef ADC_InitStructure;

ADC_CommonInitTypeDef ADC_CommonInitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE); //开ADC1时钟

ADC_DeInit();

ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b; //精度为12位

ADC_InitStructure.ADC_ScanConvMode = DISABLE; //扫描转换模式失能

ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; //连续转换使能

ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None; //不用外部触发,软件触发转换

ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T1_CC1;

ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //数据右对齐,低字节对齐

ADC_InitStructure.ADC_NbrOfConversion = 1; //规定了顺序进行规则转换的ADC通道的数目

ADC_Init(ADC1, &ADC_InitStructure);

ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent; //独立模式

ADC_CommonInitStructure.ADC_Prescaler = ADC_Prescaler_Div4; //分频为4,f(ADC)=21M

ADC_CommonInitStructure.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled; //失能DMA_MODE

ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_20Cycles;//两次采样间隔20个周期

ADC_CommonInit(&ADC_CommonInitStructure);

ADC_RegularChannelConfig(ADC1, ADC_Channel_16, 1, ADC_SampleTime_480Cycles);//规则通道配置,1表示规则组采样顺序ADC_TempSensorVrefintCmd(ENABLE);//使能温度传感器的基准电源

ADC_Cmd(ADC1, ENABLE); //使能ADC1

ADC_DMACmd(ADC1, ENABLE); //使能ADC1的DMA

ADC_DMARequestAfterLastTransferCmd(ADC1, ENABLE); //单通道模式下上次转换完成后DMA请求允许,也就是持续DMA

}

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

Function: void USART_Config(void)

Description: USART配置函数

Input: 无

Output:无

Return:无

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

void USART_Config(void)

{

USART_InitTypeDef USART_InitStructure;

USART_ClockInitTypeDef USART_ClockInitStruct;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART6, ENABLE); //开启USART6时钟

/* 配置USART6 */

USART_StructInit(&USART_InitStructure);

USART_https://www.doczj.com/doc/965866345.html,ART_BaudRate =115200;

USART_https://www.doczj.com/doc/965866345.html,ART_WordLength = USART_WordLength_8b;

USART_https://www.doczj.com/doc/965866345.html,ART_StopBits = USART_StopBits_1;

USART_https://www.doczj.com/doc/965866345.html,ART_Parity = USART_Parity_No;

USART_https://www.doczj.com/doc/965866345.html,ART_HardwareFlowControl = USART_HardwareFlowControl_None;

USART_https://www.doczj.com/doc/965866345.html,ART_Mode = USART_Mode_Rx | USART_Mode_Tx;

USART_Init(USART6, &USART_InitStructure);

USART_ClockStructInit(&USART_ClockInitStruct); //之前没有填入缺省值,是不行的

USART_ClockInit(USART6, &USART_ClockInitStruct);

USART_ITConfig(USART6, USART_IT_RXNE, ENABLE); //使能USART6中断

USART_Cmd(USART6, ENABLE); //使能USART6

}

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

Function: void NVIC_Config()

Description: NVIC配置函数

Input: 无

Output:无

Return:无

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

void NVIC_Config()

{

/* USART6中断配置*/

NVIC_InitTypeDef NVIC_InitStructure;

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); //嵌套优先级分组为1

NVIC_InitStructure.NVIC_IRQChannel = USART6_IRQn; //嵌套通道为USART6_IRQn

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //抢占优先级为0

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //响应优先级为0

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //通道中断使能

NVIC_Init(&NVIC_InitStructure);

/* DMA中断配置*/

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); //嵌套优先级分组为1

NVIC_InitStructure.NVIC_IRQChannel = DMA2_Stream0_IRQn; //嵌套通道为DMA2_Stream0_IRQn

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; //抢占优先级为1

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; //响应优先级为0

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //通道中断使能

NVIC_Init(&NVIC_InitStructure);

/* ADC中断配置*/

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); //嵌套优先级分组为1

NVIC_InitStructure.NVIC_IRQChannel = ADC_IRQn; //嵌套通道为ADC_IRQn

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; //抢占优先级为1

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2; //响应优先级为2

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //通道中断使能

NVIC_Init(&NVIC_InitStructure);

}

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

Function: void DMA_Config(void)

Description: DMA配置函数

Input: 延时的时间

Output:无

Return:无

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

void DMA_Config(void)

{

DMA_InitTypeDef DMA_InitStructure;

/*首先开DMA2时钟,由407参考手册-RM0090-Reference manual

*165页可知,ADC与DMA2映射,而且DMA2挂载在AHB1时钟总线上*/

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA2, ENABLE);

DMA_DeInit(DMA2_Stream0);

DMA_StructInit( &DMA_InitStructure);

DMA_InitStructure.DMA_Channel = DMA_Channel_0; //选择Channel_0

DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)ADC1_DR_Addr; //数据传输的外设首地址,详解见上

DMA_InitStructure.DMA_Memory0BaseAddr = (uint32_t)&ADCoverValue; //自己定义待发送数组的首地址,要强制转换为32位DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralToMemory; //数据传输方向选择为内存->外设

DMA_InitStructure.DMA_BufferSize = 1; //传输数据大小为16,单位由以下确定,大小要配合定义的数组类型和外设数据类型

DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable; //外设地址寄存器自动增加禁止,因为这里只用到了DR数据寄存器

DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable; //内存地址自增不允许,因为只存取一个数

DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; //外设的数据大小,因为USART6_DR数据寄存器为8为,故选Byte

DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord; //这里也选Byte

DMA_InitStructure.DMA_Mode = DMA_Mode_Circular; //DMA传输模式为Normal,如果为Circular,将会循环传输

DMA_InitStructure.DMA_Priority = DMA_Priority_High; //优先级为VeryHigh

DMA_Init(DMA2_Stream0, &DMA_InitStructure);

DMA_Cmd(DMA2_Stream0, ENABLE); //使能DMA2_Stream0通道

/* DMA中断开*/

DMA_ITConfig(DMA2_Stream0, DMA_IT_TC, ENABLE);

}

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

Function: void Delay(uint32_t nCount)

Description: 延时函数

Input: 延时的时间

Output:无

Return:无

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

void Delay(uint32_t nCount)

{

while (nCount--);

}

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

Function: int fputc(int ch, FILE *f)

Description: fputc重定向函数--发送

Input:

Output:无

Return:ch

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

int fputc(int ch, FILE *f)

{

USART_SendData(USART6, (unsigned char) ch);// USART6 可以换成USART2 等while (!(USART6->SR & USART_FLAG_TXE));

return (ch);

}

中断服务函数:

/**名称:DMA中断服务程序

*作用:ADC3_DMA数据完全完成后产生中断

*/

void DMA2_Stream0_IRQHandler(void)

{

if (DMA_GetITStatus(DMA2_Stream0, DMA_IT_TCIF0) != RESET)

{

DMA_ClearITPendingBit(DMA2_Stream0, DMA_IT_TCIF0);

GPIO_ResetBits(GPIOG, GPIO_Pin_6); //点亮LED,起到中断指示作用

/*添加用户代码*/

}

}

/**名称:ADC看门狗中断服务程序

*作用:ADC输入超过界限产生中断,并点亮LED

*/

void ADC_IRQHandler(void)

{

GPIO_ResetBits(GPIOG,GPIO_Pin_6);

if (ADC_GetITStatus(ADC3, ADC_IT_AWD) == SET)

{

ADC_ClearITPendingBit(ADC3, ADC_IT_AWD);

ADC_Cmd(ADC3, DISABLE);

printf("Input is out of threrd!!");

}

}

温度传感器

温度传感器温度特性测试与研究(FB810型恒温控制温度传感器实验仪) 实 验 讲 义 杭州精科仪器有限公司

一、集成电路温度传感器的特性测量及应用 随着科技的发展,各种新型的集成电路温度传感器器件不断涌现,并大批量生产和扩大应用。这类集成电路测温器件有以下几个优点:(1)温度变化引起输出量的变化呈现良好的线性关系;(2)不像热电偶那样需要参考点;(3)抗干扰能力强;(4)互换性好,使用简单方便。因此,这类传感器已在科学研究、工业和家用电器温度传感器等方面被广泛使用于温度的精确测量和控制。本实验要求测量电流型集成电路温度传感器的输出电流与温度的关系,熟悉该传感器的基本特性,并采用非平衡电桥法,组装成为一台C 50~0?数字式温度计。 【实验原理】 590AD 集成电路温度传感器是由多个参数相同的三极管和电阻组成。该器件的两端当加有某一定直流工作电压时(一般工作电压可在V 20~5.4范围内),它的输出电流与温度满足如下关系: A t B I +?= 式中,I 为其输出电流,单位:A μ,t 为摄氏温度,B 为斜率,一般590AD 的1)C (A 1B -?μ=,即如果该温度传感器的温度升高或降低C 1?,那传感器的输出电流增加或减少A 1μ,A 为摄氏零度时的电流值,其值恰好与冰点的热力学温度K 273相对应。(对市售一般590AD , A 278~273A μ=略有差异。)利用590AD 集成电路温度传感器的上述特性,可以制成各种用途的温度计。采用非平衡电桥线路,可以制作一台数字式摄氏温度计,即590AD 器件在C 0?时,数字电压显示值为“0”,而当590AD 器件处于C t ?时,数字电压表显示值为“t ”。 【实验仪器】 810FB 型恒温控制温度传感器 实验仪,如右图所示: 大烧杯、加热器、冰瓶、各种温 度传感器等。 【实验内容】 一.590AD 的测试方法: 1.590AD 为两端式集成电路温 度传感器,它的管脚引出端有两 个,如图1所示:序号1接电源 正端+U (红色引线)。序号2 接电源负端-U (黑色引线)。至 于序号3连接外壳,它可以接地,有时也可以不用。590AD 工作电压V 30~4,通常工作电压V 15~6,但不能小于V 4,小于V 4出现非线性。

基于专用温度传感器的温度检测系统

摘要 统使用PTC或NTC电阻作为温度传感器的方式在使用过程中存在着很多不足之 本文阐述了一个基于专用温度传感器AD590的 高精度温度检测系统的设计 和实现过程。整个设计包括AD590 器AD620ADC0804AT89C52组 AD590AT89C52

Ⅰ https://www.doczj.com/doc/965866345.html, Abstract The temperature check system in modern industry is that uses some special method to process and display the environmental temperature. Tradition uses PTC or NTC resistance to be using process to there be existing much defects as the temperature sensor way, supposes that what be detected the temperature has a bad accuracy, systematic reliability is bad, has much difficulties to design, and the

cost of e ntire system is expensive. To use this method already unable satisfied modern industry produces the need being hit by the high-accuracy temperature under the control. Use the special temperature transducer could improve the systematic function of temperature detecting. This article elaborated the high-accuracy temperature having set forth a because of special temperature transducer AD590 checks the main body of a book systematically designing and realizing process. Entire design is included: Use the AD590 temperature transducer to detect the analog temperature, instrumentation amplifier AD620 signal process system, change the analog signal to digital signal circuit of ADC0804, the AT89C52 MUC system and the power system. Key word temperature check system AD590AT89C52

智能仪器设计温度传感器的完整设计

指导老师: 班级: 姓名: 学号:

目录 1系统方案...................................................................................................... 错误!未定义书签。 1.1 测温模块的论证与选择................................................................. 错误!未定义书签。 1.2 电源电路切换模块的论证与选择................................................. 错误!未定义书签。 1.3 控制系统的论证与选择................................................................. 错误!未定义书签。 1.4 显示模块的论证与选择................................................................. 错误!未定义书签。 1.5键盘模块.......................................................................................... 错误!未定义书签。2系统理论分析与计算.................................................................................. 错误!未定义书签。3电路与程序设计.......................................................................................... 错误!未定义书签。 3.1电路的设计...................................................................................... 错误!未定义书签。 3.1.1系统总体框图...................................................................... 错误!未定义书签。 3.1.2 电源转换电路子系统的设计............................................. 错误!未定义书签。 3.1.3 STC89C52单片机子系统的设计........................................ 错误!未定义书签。 3.1.4电源的设计.......................................................................... 错误!未定义书签。 3.1.5温度采集电路子系统电路的设计...................................... 错误!未定义书签。 3.1.6键盘模块.............................................................................. 错误!未定义书签。 3.2程序的设计...................................................................................... 错误!未定义书签。 3.2.1程序功能描述...................................................................... 错误!未定义书签。 3.2.2程序流程图.......................................................................... 错误!未定义书签。4测试方案与测试结果.................................................................................. 错误!未定义书签。 4.1测试方案.......................................................................................... 错误!未定义书签。 4.2 测试条件与仪器............................................................................. 错误!未定义书签。 4.3 测试结果及结论............................................................................. 错误!未定义书签。

基于数字温度传感器的数字温度计

黄河科技学院《单片机应用技术》课程设计题目:基于数字温度传感器的数字温度计 姓名:时鹏 院(系):工学院 专业班级: 学号: 指导教师:

黄河科技学院课程设计任务书 工学院机械系机械设计制造及其自动化专业 S13 级 1 班 学号 1303050025 时鹏指导教师朱煜钰 题目:基于数字温度传感器的数字温度计设计 课程:单片机应用技术课程设计 课程设计时间 2014年 10月27 日至2014年11 月 10 日共 2 周 课程设计工作容与基本要求(设计要求、设计任务、工作计划、所需相关资料)(纸不够可加页)

课程设计任务书及摘要 一、课程设计题目:基于数字温度传感器的数字温度计 二、课程设计要求 利用数字温度传感器DS18B20与单片机结合来测量温度。利用数字温度传感器DS18B20测量温度信号,计算后在LED数码管上显示相应的温度值。其温度测量围为-55℃~125℃,精确到0.5℃。数字温度计所测量的温度采用数字显示,控制器使用单片机AT89C51,温度传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示。 三、课程设计摘要 DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。本文结合实际使用经验,介绍了DS18B20数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图。 该系统由上位机和下位机两大部分组成。下位机实现温度的检测并提供标准RS232通信接口,芯片使用了ATMEL公司的AT89C51单片机和DALLAS公司的DS18B20数字温度传感器。上位机部分使用了通用PC。该系统可应用于仓库测温、楼宇空调控制和生产过程监控等领域。 四、关键字:单片机温度测量 DS18B20 数字温度传感器 AT89C51

温度传感器论文..

温度传感器设计论文题目:基于DS18B20温度传感器的智能测温仪学院:物理与电子工程学院 专业: 姓名: 学号: 目录 目录------------------------------------------------------------------------------1 摘要------------------------------------------------------------------------------2 一、传感器概诉---------------------------------------- ---------------------3 1、传感器及温度传感器发展现状-------------------------------------3 2、主要元器件介绍-------------------------------------------------------3 二、课程设计主要内容----------------------------------- -----------------6 1、课程设计名称----------------------------------------------------------6 2、设计要求、目的及意义----------------------------------------------6 三、设计达到的指标---------------------------------- ---------------------7

四、传感器设计原理------------------------------------ -------------------7 1、三个重要组成部分----------------------------------------------------7 2、DS1802工作原理------------------------------------------------------7 3、DS1802内部结构图---------------------------------------------------8 4、程序流程图--------------------------------------------------------------9 5、proteus仿真原理图----------------------------------------------------9 五、实验过程------------------------------------------ -----------------------10 1、前期准备-----------------------------------------------------------------10 2、课程设计过程-----------------------------------------------------------10 3、个人主要工作及遇到问题--------------------------------------------11 六、数据分析与结论------------------------------ --------------------------11 七、课程设计总结、思考与致谢-------------------------------- ---------12 八、参考文献------------------------------------------------- ----------------14 九、附录--------------------------------------------------

温度传感器工作原理

温度传感器工作原理 1.引脚★ ●GND接地。 ●DQ为数字信号输入\输出端。 ●VDD为外接电源输入端(在寄生电源接线方式时接地) 2.与单片机的连接方式★ 单线数字温度传感器DS18B20与单片机连接电路非常简单,引脚1接地(GND),引脚3(VCC)接电源+5V,引脚2(DQ)接单片机输入\输出一个端口,电压+5V和信号线(DQ)之间接有一个4.7k的电阻。 由于每片DS18B20含有唯一的串行数据口,所以在一条总线上可以挂接多个DS18B20芯片。 外部供电方式单点测温电路如图★ 外部供电方式多点测温电路如图★ 3.DS18B20的性能特点 DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器。与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下: ●独特的单线接口仅需要一个端口引脚进行通信。 ●多个DS18B20可以并联在唯一的三线上,实现多点组网功能。 ●不需要外部器件。 ●在寄生电源方式下可由数据线供电,电压围为3.0~5.5V。 ●零待机功耗。

●温度以9~12位数字量读出 ●用户可定义的非易失性温度报警设置。 ●报警搜索命令识别并标识超过程序限定温度(温度报警条件)的器件。 ●负电压特性,电源极性接反时,温度计不会因发热而烧毁,只是不能正常工作。 4.部结构 .DS18B20采用3脚PR—35封装或8脚SOIC封装,其部结构框图★ 64位ROM的位结构如图★◆。开始8位是产品类型的编号;接着是每个器件的唯一序号,共有48位;最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用单线进行通信的原因。非易失性温度报警触发器TH和TL,可通过软件写入用户报警上下限数据。 MSB LSB MSB LSB MSB LSB DS18B20温度传感器的部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PROM。 高速暂存RAM的结构为9字节的存储器,结构如图★。前2字节包含测得的温度信息。第3和4字节是TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5字节为配置寄存器,其容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转化为相应精度的数值。该字节各位的定义如图★,其中,低5位一直为1;TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式,在DS18B20出厂时,该位被设置为0,用户不要去改动;R0和R1决定温度转化的精度位数,即用来设置分辨率,其定义方法见表★ 高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节是前面所有8

温度传感器的选用

温度传感器的选用 摘要:在各种各样的测量技术中,温度的测量可能是最为常见的一种,因为许多的应用领域,掌握温度的确切数值,了解温度与实际状态之间的差异等,都具有极为重要的意义。就以测量为例,在力的测量,压力,流量,位置及电平高低等测量的过程中,为了提高测量精度,通常都会要求对温度进行监视。可以说,各种的物理量都是温度的函数,要得到精确的测定结果,必须针对温度的变化,作出精确的校正。 关键字:温度传感器热电偶热电阻集成电路 引言: 工业上常用的温度传感器有四类:即热电偶、热电阻RTD、热敏电阻及集成电路温 度传感器;每一类温度传感器有自己独特的温度测量围,有自己适用的温度环境;没有一种温度传感器可以通用于所有的用途:热电偶的可测温度围最宽,而热电阻的测量线性度最优,热敏电阻的测量精度最高。 1、热电偶 热电偶由二根不同的金属线材,将它们一端焊接在一起构成;参考端温度(也称冷补偿端)用来消除铁-铜相联及康铜-铜联接端所贡献的误差;而两种不同金属的焊接端放置于需 要测量温度的目标上。 两种材料这样联接后会在未焊接的一端产生一个电压,电压数值是所有联接端温度的函数,热电偶无需电压或电流激励。实际应用时,如果试图提供电压或电流激励反而会将误差 引进系统。 鉴于热电偶的电压产生于两种不同线材的开路端,其与外界的接口似乎可通过直接测量两导线之间的电压实现;如果热电偶的的两端头不是联接至另外金属,通常是铜,那末事情 真会简单至此。 但热电偶需与另外一种金属联接这一事实,实际上又建立了新的一对热电偶,在系统中引入了极大的误差,消除此误差的唯一办法是检测参考端的温度,以硬件或硬件-软件相结 合的方式将这一联接所贡献的误差减掉,纯硬件消除技术由于线性化校正的因素,比软件-硬件相结合技术受限制更大。一般情况下,参考端温度的精确检测用热电阻RTD,热敏电 阻或是集成电路温度传感器进行。原则上说,热电偶可由任意的两种不同金属构建而成,但在实践中,构成热电偶的两种金属组合已经标准化,因为标准组合的线性度及所产生的电压与温度的关系更趋理想。 表3与图2是常用的热电偶E,J,T,K,N,S,B R的特性。

MSP430内部温度传感器测试程序

MSP430内部温度传感器测试程序 //MSP430基础实验开发组件 - ADC12内部模块演示程序之内部温度传感器 //时钟设置: ////ACLK = n/a, MCLK = SMCLK = default DCO ~ 800kHz, ADC12CLK = ADC12OSC //当前演示程序功能描述: ////利用MSP430F14X内部的温度传感器,通过ADC12的通道10进行AD转换 ////计算取得摄氏温度和华氏温度,通过断点在View->Watch中观察温度值 ////由于定标问题, 可能会存在温度的误差 #include unsigned int long temp; unsigned int long TemperF; //华氏温度 unsigned int long TemperC; //摄氏温度 void main(void) { WDTCTL = WDTPW + WDTHOLD; //关闭系统看门狗 ADC12CTL0 = SHT0_8 + REFON + ADC12ON; //内部1.5V参考电压,打开ADC12模块,设置采样保持定时器 ADC12CTL1 = SHP; //采使用采样定时器 ADC12MCTL0 = SREF_1 + INCH_10; //参考电压和通道选择 ADC12IE = BIT0; //ADC12MEM0 ADC12CTL0 |= ENC; //允许转换 _BIS_SR(GIE); //开启系统中断 while(1) { ADC12CTL0 |= ADC12SC; //开始采样并AD转换 //oF = ((x/4096)*1500mV)-923mV)*1/1.97mV = x*761/4096 - 468 //IntDegF = (ADC12MEM0 - 2519)* 761/4096 TemperF = (temp - 2519) * 761; TemperF = TemperF / 4096; //简化的华氏温度转换公式

温度传感器报告

温度传感器是指能感受温度并能转换成可用输出信号的传感器。温度是和人类生活环境有着密切关系的一个物理量,是工业过程三大参量(流量、压力、温度)之一,也是国际单位制(SI)中七个基本物理量之一。温度测量是一个经典而又古老的话题,很久以来,这方面己有多种测温元件和传感器得到普及,但是直到今天,为了适应各工业部门、科学研究、医疗、家用电器等方面的广泛要求,仍在不断研发新型测温元件和传感器、新的测温方法、新的测温材料、新的市场应用。要准确地测量温度也非易事,如测温元件选择不当、测量方法不宜,均不能得到满意结果。 据有关部门统计,2009年我国传感器的销售额为327亿元人民币,其中温度传感器占整个传感器市场的14%,主要应用于通信电子产品、家用电器、楼宇自动化、医疗设备、仪器仪表、汽车电子等领域。 温度传感器的特点 作为一个理想的温度传感器,应该具备以下要求:测量围广、精度高、可靠性好、时漂小、重量轻、响应快、价格低、能批量生产等。但同时满足上述条件的温度传感器是不存在的,应根据应用现场灵活使用各种温度传感器。这是因为不同的温度传感器具有不同的特点。 ● 不同的温度传感器测量围和特点是不同的。 几种重要类型的温度传感器的温度测量围和特点,如表1所示。 ● 测温的准确度与测量方法有关。 根据温度传感器的使用方法,通常分为接触测量和非接触测量两类,两种测量方法的特点如 ● 不同的测温元件应采用不同的测量电路。 通常采用的测量电路有三种。“电阻式测温元件测量电路”,该测量电路要考虑消除非线性误差和热电阻导线对测量准确度的影响。“电势型测温元件测量电路”,该电路需考虑线性化和冷端补偿,信号处理电路较热电阻的复杂。“电流型测温元件测量电路”,半导体集成温度传感器是最典型的电流型温度测量元件,当电源电压变化、外接导线变化时,该电路输出电流基本不受影响,非常适合远距离测温。 温度测量的最新进展 ● 研制适应各种工业应用的测温元件和温度传感器。 铂薄膜温度传感器膜厚1μm,可置于极小的测量空间,作温度场分布测量,响应时间不超过1ms,偶丝最小直径25μm,热偶体积小于1×10-4mm3,质量小于1μg。 多色比色温度传感器能实时求出被测物体发射率的近似值,提高辐射测温的精

基于单片机的温度传感器的设计说明

基于单片机的温度传感器 的设计 目录 第一章绪论-------------------------------------------------------- ---2 1.1 课题简介 ----------------------------------------------------------------- 2 1.2 设计目的 ----------------------------------------------------------------- 3 1.3 设计任务 ----------------------------------------------------------------- 3 第二章设计容与所用器件 --------------------------------------------- 4第三章硬件系统设计 -------------------------------------------------- 4 3.1单片机的选择------------------------------------------------------------- 4 3.2温度传感器介绍 ---------------------------------------------------------- 5 3.3温度传感器与单片机的连接---------------------------------------------- 8 3.4单片机与报警电路-------------------------------------------------------- 9 3.5电源电路----------------------------------------------------------------- 10 3.6显示电路----------------------------------------------------------------- 10 3.7复位电路----------------------------------------------------------------- 11 第四章软件设计 ----------------------------------------------------- 12 4.1 读取数据流程图--------------------------------------------------------- 12 4.2 温度数据处理程序的流程图 -------------------------------------------- 13 4.3程序源代码 -------------------------------------------------------------- 14

基于单片机的智能温度传感器的毕业设计

基于单片机的智能温度传感器的毕业设计 1.1设计目的 我国是一个农业大国,粮食是一个国家生存的根本,为了防备战争、灾害及各种突发事件的发生,粮食的安全储藏具有重要的意义。目前,我国各地区的各种大型粮库都还存在着程度不同的粮食储存变质问题,而影响粮食储藏的主要参数又是温度。根据国家粮食保护法规定,必须定期抽样检查粮库各点的粮食温度,以便及时采取相应的措施,防止粮食的变质。过去粮食温度的检测是靠人工手测进行,不但测试速度慢、测试精度低,而且人员劳动强度非常大。随着计算机和信息技术的发展,计算机测量系统越来越多的场合得到了广泛应用。传统的人工查看粮温的方法,已逐步被电子检温设备所取代,小的储粮设备一般采用小型测温仪检测粮温,大中型储粮设备已逐步配备微机测温系统。前一种方式多数采用由拨动手动开关逐点查看粮温的方法,有些也采用自动巡检方式并配备小型打印机记录粮温数据。后一种方式则可在微机机房监测粮温情况,并能利用微机对粮温数据进行分析对比。保证粮库中储藏粮食的安全,一个十分重要的条件就是要求粮食储藏温度保持在18℃~20℃之间。对于出现不正常升温或降温,要求能够迅速的测量并且报警使工作人员可以马上采取措施降温或升温。本设计采用的DS18B20是美国DALLAS公司生产的智能温度传感器。可以通过程序设定9~12位的分辨率,测量温度围为-55℃~+125℃,在-10℃~+85℃围精度为士0.5℃,DS18B20支持“一线总线”接口,用一根线对信号进行双向传输,具有接口简单容易

扩展等优点,适用于单主机、多从机构成的系统。DS18B20测量的现场温度直接以“一线总线”的数字方式传输,提高了系统的抗干扰性,适合各种恶劣环境的现场温度测量。DS18B20支持3V~ 5.5V的电压围。分辨率、报警温度可设定存储在DS18B20的E2PROM中,掉电后依然保存。 1.2 设计容 (1)一线总线制单片机中的应用。 (2)点阵式液晶显示器的使用。 (3)高级语言对单片机编程技术。 1.3 设计要求 (1)检测8个温度点数。 (2)精度要求正负0.5摄氏度 (3)体积在200*100毫米。 (4)数据传输约一公里左右。 (5)采用LCD显示。 1.4 关于一线总线DS18B20的简介 DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。可以分别在93.75 ms和750 ms完成9位和12位的数字量,并且从DS18B20读出的

温度传感器技术条件

NTC热敏电阻温度传感器 Q/HKT01-2001 1.范围 本标准规定了NTC热敏电阻温度传感器的分类,技术要求,试验方法,检验规则及标志,包裹,运输与贮存。 2.引用标准 下列标准包含的条文,通过在本标准中引用成为标准的条文。在本标准出版时,所示版本均为有效。所有标准都会被修订。使用标准的各方应探讨,使用下列标准的最新标准的可能性。 GB/T2423.1-1989 电工电子产品基本环境及试验规程,试验A:低温试验方法;GB/T2423.2-1989 电工电子产品基本环境及试验规程,试验B:高温试验方法;GB/T2423.3-1989 电工电子产品基本环境及试验规程,试验Ca:恒定湿热试验方法; GB/T2423.8-1995 电工电子产品环境.第二部分,试验方法,试验Ed:自由落体;GB/T2423.10-1995 电工电子产品基本环境,第二部分,试验方法:试验Fc和导则,振动(正弦); GB/T2423.17-1993电工电子产品基本环境及试验规程,试验Ka:盐雾试验方法;GB/T2423.22-1987电工电子产品基本环境及试验规程,试验N:温度变化试验方法; GB/T2423.29-1982电工电子产品基本环境及试验规程,第二部分,试验I:引出端及整体安装件强度; GB/6663-1986直热式负温度系数热敏电阻器总规范; GB/6664-1986直热式负温度系数热敏电阻器空白详细规范,评定水平; GB/2828-1987逐批检查计数抽样程序及抽样表(适用于连续批的检查); GB/2819-1987周期检查计数抽样程序及抽样表(适用于生产过程稳定性的检查)。 3.型号及含义 K □□□□□□□□□□ ①②③④⑤⑥⑦ ①公司标志; ②NTC热敏电阻类型: C:片式工作温度:-30℃~ +90℃; H:玻封二极管型工作温度: -30℃~ +200℃;

温度传感器

温度传感器 一、简介 温度传感器是指能感受温度并转换成可用输出信号的传感器。温度传感器是温度测量仪表的核心部分,品种繁多。 二、主要分类 1、接触式 接触式温度传感器的检测部分与被测对象有良好的接触,又称温度计。 温度计通过传导或对流达到热平衡,从而使温度计的示值能直接表示被测对象的温度。一般测量精度较高。在一定的测量范围内,温度计也可测量物体内部的温度分布。但对于运动体、小目标或热容量很小的对象则会产生较大的测量误差,常用的温度计有双金属温度计、玻璃液体温度计、压力式温度计、电阻温度计、热敏电阻和温差电偶等。它们广泛应用于工业、农业、商业等部门。在日常生活中人们也常常使用这些温度计。随着低温技术在国防工程、空间技术、冶金、电子、食品、医药和石油化工等部门的广泛应用和超导技术的研究,测量120K以下温度的低温温度计得到了发展,如低温气体温度计、蒸气压温度计、声学温度计、顺磁盐温度计、量子温度计、低温热电阻和低温温差热电偶等。低温温度计要求感温元件体积小、精确度高、复现性和稳定性好。利用多孔高硅氧玻璃渗碳少杰而成的渗碳玻璃热电阻就是低温温度计的一种感温元件,可用于测量1.6-300K范围内的温度。 2、非接触式 它的敏感元件与被测对象互不接触,又称非接触式测温仪表。这种仪表可用来测量运动物体、小目标和热容量小或温度变化迅速(瞬变)对象的表面温度,也可用于测量温度场的温度分布。 最常用的非接触式测温仪表基于黑体辐射的基本定律,称为辐射测温仪表。辐射测温法包括亮度法(见光学高温计)、辐射法(见辐射高温计)和比色法(见比色温度计)。各类辐射测温方法只能测出对应的光度温度、辐射温度或比色温度。只有对黑体(吸收全部辐射并不反射光的物体)所测温度才是真实温度。如欲测定物体的真实温度,则必须进行材料表面发射率的修正。而材料表面发射率不仅取决于温度和波长,而且还与表面状态、涂膜和微

温度传感器热响应时间测试方法

泰索温度测控工程技术中心 文件名称温度传感器热响应测试方法文件编号TS-QMSS-TW-026 制定部门中心实验室 生效日 期 2012.11.15 版本号A/0 工位或工序名称测试室 使用的工具、仪器、 设备或材料试验装置、干式炉、精密温度仪表、计时器、传感器 作 业 方 法 试验装置 示图注释: 2-固定托架;3-摆动气缸;4-旋转臂;5-直行气缸; 6-传感器夹持器;7-干式炉;11-导向堵头; 12-计时启动(位置)开关;26-被测传感器;27-温度显示仪表。1.温度传感器时间常数定义 温度传感器的时间常数是指被测介质温度从某一温度t0跃变到另一温度t x时,传感器测量端温度由起始温度t0上升到阶跃温度幅度值t n的63.2%所需的时间。热响应时间用τ表示。 2.测试和试验步骤 2.1将自控温管式电炉温度事先恒定在(建议:热电阻推荐300℃;热电偶推荐600℃)预定温度,待测样品安装在检定炉夹具上置于室温下等温30分钟以上(若传感器提前两小时放置在实验室,便不需要等温过程)。 2.2连接传感器与精密温度仪表测量线路,在将传感器置于温场前,接通电源,观察精密温度仪表显示的室温t s(t s=t0)并记录。 2.3提前计算以下有关数据 2.3.1阶跃温度(幅度)值:对于热电阻t n=300-t s;对于热电偶t n=600-t s。 2.3.2记时掐表温度值t'=63.2%t n+ t s,对应时间为热响应时间τ。 2.4试验操作 2.4.1以上准备就绪,将温度显示仪表上限报警值设为:6 3.2%t n+ t s作为计时终止信号,以便自动的控制计时器工作。 2.4.2接通气源,按动摆动气缸电磁阀按钮,旋转臂摆动旋转至干式炉炉口上方(保持同一轴线),大约5秒后直行气缸电磁阀动作,将温度传感器垂直插入干式炉(深度大约180mm)。此时,计时开关已经打开并开始计时。 2.4.3注意观察精密温度仪表显示温度值迅速变化,待温度显示值达到报警值6 3.2%t n+ t s瞬间,报警常闭接点断开,此刻计时器当前示值即为实际时间常数τ。 2.4.4重复以上步骤,对逐个不同规格型号及编号的温度传感器进行试验,准确记录下对应数据,填写试验报告。 作业标准1.按不同类型传感器设置和恒定炉子试验温度。 2.按规定对被测样品在实验室进行等温和正确连接测量电路。 3.正确记录精密温度仪表显示的室温和计算试验所需数据。 4.严格按操作步骤进行试验作业,保持装炉和记时操作动作协调一致。 5.准确记录数据和填写试验报告。 备注温度传感器热响应测试驱动装置请参见该实验装置的详细说明书。

热电阻温度传感器规范

热电阻温度传感器总规范SJ 20722-1998 中华人民共和国电子行业军用标准 热电阻温度传感器总规范SJ 20722-1998 General specification for temperature transducers for thermal resistance 1范围 1.1主题内容 本规范规定了军用温度传感器的通用要求、质量保证规定、试验方法和包装、贮存、运输要求。 1.2适用范围 本规范适用于热电阻温度传感器(以下简称传感器),其它温度传感器亦可参照采用。 1.3分类 按金属热电阻的种类划分如下: a.铂电阻; b.铜电阻; c.镍电阻; d.合金电阻; e.其它。 2引用文件 GB 191一90 包装储运图示标志 GB 7665—87传感器通用术语 GB 7666—87传感器命名方法及代号 GJB 145A一93封存包装通则 GJB 150.1—86军用设备环境试验方法总则 GJB 150.3—86军用设备环境试验方法高温试验 GJB 150.4—86军用设备环境试验方法低温试验 GJB 150.5—86军用设备环境试验方法温度冲击试验 GJB 150.9- 86军用设备环境试验方法湿热试验 GJB 150.10-86军用设备环境试验方法霉菌试验 GJB 150.11—86军用设备环境试验方法盐雾试验 GJB 150.16—86军用设备环境试验方法振动试验

GJB 150.18—86军用设备环境试验方法冲击试验 GJB 150.20—86军用设备环境试验方法飞机炮振试验 GJB 179A—96计数抽样检查程序及表 GJB 2712—96测量设备的质量保证要求计量确认体系 JJG 1007—87温度计量名词术语 3要求 3.1详细规范 传感器的个性要求应符合本规范和相应详细规范的规定。如果本规范的要求和详细规范的要求相抵触,应以详细规范为准。 3.2合格鉴定 按本规范提交的传感器应是经鉴定合格或定婆}批准的产品。 3.3材料 应使用能使传感器满足本规范性能要求的材料,并在详细规范中规定要求。 3.3.1金属 传感器所用的金属材料应能耐腐蚀。 3.3.2非金属 各种非金属材料在本规范规定的环境条件下使用时,不应危害人员的健康。 3.4设计和结构 传感器的设计、结构和物理尺寸应符合规定(见3.1)。 3.5测温范围 传感器的测温范围应符合规定(见3.1)。 3.6允差(或准确度) 当按4.6.2规定进行试验时,传感器的允差(或准确度)应符合规定(见3.1)。 3.7绝缘电组 当按4.6.3规定进行试验时,传感器在正常环境条件下,各引出端与壳体或保护装置之间的绝缘电阻应不小于20MΩ(1OOV DC)。 3.8热响应时间(适用时) 当按4.6.4规定进行试验时,传感器的热响应时间应符合规定(见3.1)。 3.9自热(适用时) 当按4.6.5规定进行试验时,传感器产生不超过0.30℃自热温升的最大耗散功率值应符合规定(见3.1)。 3.10高温 当按4.6.6规定进行试验后,传感器的外观应无可见损伤,传感器允差(或准确度)应符合规定(见3.1)。3.11低温

温度传感器

实验九温度传感器设计 传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。它是实现自动检测和自动控制的首要环节。传感器一般由敏感元件、转换元件和基本转换电路三部分组成。其中,敏感元件用于感知被测量,并输出与被测量成确定关系的某一物理量;转换元件将敏感元件的输出量转换成电路参量;转换电路将上述电路参量转换成电学量进行输出。 物理学中的温度用以表征物体的冷热程度。而温度在具体的计量时,一般需要通过物体随温度变化的某些特性来间接测量。温度传感器就是将温度信息转换成易于传递和处理的电信号的传感器。 在科技日新月异的今天,温度传感器的应用尤其广泛。在工业方面,温度传感器可应用于各种对温度有要求的产业,如金属冶炼,用于控制加热熔炉的温度以及冷却金属;航天领域,用于检测顶流罩、航天服等的耐热及耐寒程度等。在化学方面,关于对温度有严格要求的化学反应,需要高精度的温度传感器帮助控制反应过程中的特定温度。在农业方面,温度传感器可以应用在温室培养的温度控制,对于农作物新品种开发及温室栽培起着重要作用。在军事方面,可应用温度传感器对热源进行探测,起到侦查作用。在医疗方面,温度传感器可用于体温探热器等探测体温的仪器。 【实验目的】 1、了解Pt100铂电阻、Cu50铜电阻的温度特性及其测温原理。 2、学习运用不同的温度传感器设计测温电路。 【实验原理】 热电阻传感器是利用导体的电阻随温度变化的特性,对温度和温度有关的参数进行检测的装置。热电阻测温是基于金属导体的电阻值随温度的增加而增加这一特性来进行温度测量的。大多数热电阻在温度升高1℃时电阻值将增加0.4% ~ 0.6%。热电阻大都由纯金属材料制成,目前应用最多的是铂和铜,此外,现在也逐渐采用镍、锰和铑等材料制造热电阻。能够用于制作热电阻的金属材料必须具备以下特性:(1)电阻温度系数要尽可能大和稳定,电阻值与温度之间应具有良好的线性关系;(2)电阻率高,热容量小,反应速度快;(3)材料的复现性和工艺性好,价格低;(4)在测量范围内物理和化学性质稳定。 1、Pt100铂电阻的测温原理 金属铂具有电阻温度系数大,感应灵敏;电阻率高,元件尺寸小;电阻值随温度变化基本呈线性关系;在测温范围内,物理、化学性能稳定,长期复现性好,测量精度高,是目前公认制造热电阻的最好材料。但铂在高温下,易受还原性介质的污染,使铂丝变脆并改变电阻与温度之间的线性关系,因此使用时应装在保护套管中。利用铂的此种物理特性制成的传感器称为铂电阻温度传感器。铂电阻温度传感器精度高,稳定性好,应用温度范围广,是中低温区(-200~650℃)最常用的一种温度检测器,不仅广泛应用于工业测温,

相关主题
文本预览
相关文档 最新文档