STM32自带1-3个ADC模块,采样精度达到了12位,比起当年使用的AVR单片机的10位来说,上了个小档次了~本测试程序采用了ADC DMA的中断方式,这样CPU就可以把ADC的任务交给DMA这个勤劳肯干的部下了,当DMA完成了一次任务之后会产生中断,告诉CPU可以来查收结果了!DMA也是在嵌入式系统中非常常用的,例如在LCD中,数据拷贝中等。。。在STM32F103RBT6中,ADC1和ADC2共用一组管脚
总体编程思路和顺序如下:
1.初始化RCC相关,使得系统有时钟,功能模块如ADC、DMA有时钟。
2.GPIO相关初始化,比如常用的指示灯,ADC的管家要设置为输入等。
3.NVIC向量中断的配置,因为这里使用了DMA中断和中断服务程序编写(下例中暂不使用)
4.DMA配置(下例中暂不使用)
5.ADC初始化
以下是参考代码,使用ADC1的IN0脚
void ADC_GPIO_Init()
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_ADC1,ENABLE);
GPIO_DeInit(GPIOA);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;//设为模拟输入
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
void ADC_configuration()
{
ADC_InitTypeDef ADC_InitStructure;
ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;//独立模式
ADC_InitStructure.ADC_ScanConvMode=DISABLE;//连续多通道模式
ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;//单次转换
ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;//转换由软件而不是外部触发启动
ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;//右对齐
ADC_InitStructure.ADC_NbrOfChannel=1;//扫描通道数
ADC_Init(ADC1,&ADC_InitStructure);
//ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_7Cycles5);
ADC_Cmd(ADC1,ENABLE);//使能或者失能指定的ADC
ADC_ResetCalibration(ADC1);//重置指定的ADC的校准寄存器
while(ADC_GetResetCalibrationStatus(ADC1));//等待校准寄存器初始化
ADC_StartCalibration(ADC1);//开始校准
while(ADC_GetCalibrationStatus(ADC1));//等待校准完成
//ADC_SoftwareStartConvCmd(ADC1,ENABLE);//使能指定的ADC的软件转换启动功能
}
u16 GetADCValue(u8 ADC_Channel)//ADC_Channel_x 0~17
{
u16 adc_value;
ADC_RegularChannelConfig(ADC1,ADC_Channel,1,ADC_SampleTime_7Cycles5);
ADC_SoftwareStartConvCmd(ADC1,ENABLE);//使能指定的ADC的软件转换启动功能
while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC)==RESET);//检查制定ADC标志位置1与否 ADC_FLAG_EOC 转换结束标志位
adc_value=ADC_GetConversionValue(ADC1);
return adc_value;//返回最近一次ADCx规则组的转换结果
}
当使用内部温度传感器时,需要使能温度传感器通道
ADC_TempSensorVrefintCmd(ENABLE);
温度传感器通道号是ADC_Channel_16,此通道的采样时间调到最大,来保证精度;
V25、Avg_Slope的典型值分别为1.43、4.3mV/C
TEMP=(1.43-Vsense)/0.0043+25;
1 单总线温度传感器DS18B20 1. 1 DS18B20 芯片特性 DS18B20 数字温度传感器是美国DALLAS 半导体公司生产的新一代适配微处理器的智能温度传感器,它将温度传感器、A/ D 转换器、寄存器及接口电路集成在一个芯片中,采用1-wire 总线协议, 可直接数字化输出、测试。与其他温度传感器相比,具有以下...
不同的疫苗、菌苗对于储运环境温度有不同的要求。在培养疫苗的时候一定要把握疫苗适应的温度,如果温度不对,有可能无法培养出我们需要的疫苗,也有可能培养出的疫苗容易变异。所以无论是在培养还是存储疫苗都需要利用温度传感器来监控它们的温度。在疫苗、菌苗等生物制品从制药厂成品仓库发运,...
Moticon鞋垫的传感器配置包括13个遍布鞋垫的压力传感器、一个3D加速度传感器和一个温度传感器。这款鞋垫还配备ANT+无线连接硬件,可以再添加一个集成的数据记录器。所有的硬件都内嵌在多层结构中,包括传感器层、介电层和环形电子设备模块。模块的电池可以通过鞋垫底部的可移动盖更换。 Mot...
`tips` DS18B20,常用的温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于...
暖通地沟专用温度传感器 产品特点: 可扔在地沟中使用,完全防水;外形小巧美观、特别适用于安装空间有限的环境下,体积小、质量轻、灌胶密封,带引线输出(标配1米),电气连接也可以做成航空接头。 应用场所: 用于地沟、水井、管道等潮湿或者浸泡在液体中使用。 1、温度量程:-200℃~450℃; 2、精度:±...
在环境温/湿度监测方面,霍尼韦尔提供一系列广泛的温度传感器,每一款都具有卓越的可靠性、可重复性、精确度和响应性。霍尼韦尔 HumidIcon?数字式湿度/温度传感器系列采用激光裁剪工艺,热固性聚合物电容检测元件具有多层结构,适合大多数恶劣的应用环境,产品能够直接安装在空气流经处,可监测并控制...
中国化工仪器网 - 仪器仪表行业权威网络宣传媒体
本设计主要有单片机、液晶显示、数字温度传感器、液体流量计、键盘、电磁阀等部分构成。温度显示:单片机控制数字温度传感器(DS18B20),把温度信号通过单总线从数字温度传感器传递到单片机上, 单片机数据处理之后,将当前温度信息发送到LCD(LCD12864) 进行显示。热量显示:流量计检测到的流量信...
矿用温度传感器型号:GWD40 概述GWD40型煤矿用温度传感器为本质安全型仪器。主要用于测量煤矿井下的环境温度,以便监视火灾的发生,也可用于其他场所的温度测量。该传感器实现了全数字化设计。温度探头选用精密半导体感温元件,输出即为电流型信号,整个电路不需要作任何调节。单片机将程序存储...
流量传感器、压力传感器、温度传感器在我国的市场规模最大,分别占到整个传感器市场的21%、19%和14%;压力传感器、温度传感器、流量传感器、水平传感器已表现出成熟市场的特征。预计未来传感器市场的主要增长将来自于无线传感器、微系统传感器、生物传感器等新兴传感器。传感器已进入人们的...
在环境温/湿度监测方面,霍尼韦尔提供一系列广泛的温度传感器,每一款都具有卓越的可靠性、可重复性、精确度和响应性。霍尼韦尔 HumidIcon?数字式湿度/温度传感器系列采用激光裁剪工艺,热固性聚合物电容检测元件具有多层结构,适合大多数恶劣的应用环境,产品能够直接安装在空气流经处,可监测并控制...
示例:如基准电压V(0)=700mV;温度系数S=-2mV/℃,则在50℃时,传感器的输出电压V(50)=700-2×50=600(mV)。这一点正是线性温度传感器优于其它温度传感器的可贵之处。 6.温度系数S的含义是什么? 温度系数S是指在规定的工作条件下,传感器的输出电压值的变化与温度变化的比值,即温度每变化1℃传...
LM57是一款高精度、双路输出、集成的、模拟温度传感器温度开关。通过使用两个外部1%电阻,其跳闸温度(TTRIP)是可编程的,并可为任意的256跳闸温度,并占用很小的电路板空间。 TI的LM57是一款高精度、双路输出、集成的、模拟温度传感器温度开关。通过使用两个外部1%电阻,其跳闸温度(TTRIP)是可...
温度是一个基本的物理量,自然界中的一切过程无不与温度密切相关。温度传感器是最早开发,应用最广的一类传感器。温度传感器的市场份额大大超过了其他的传感器。从17世纪初人们开始利用温度进行测量。在半导体技术的支持下,本世纪相继开发了半导体热电偶传感器、PN结温度传感器和集成温度传感器...
MAX6656是精密的电压、温度监视器。数字温度计提供两个远端传感器的温度及自身管芯温度。 概述 MAX6655/MAX6656是精密的电压、温度监视器。数字温度计提供两个远端传感器的温度及自身管芯温度。远端传感器是连接成二极管形式的晶体管, 一般可采用低成本、易安装的2N3906 PNP管,用以替...
在环境温/湿度监测方面,霍尼韦尔提供一系列广泛的温度传感器,每一款都具有卓越的可靠性、可重复性、精确度和响应性。霍尼韦尔 HumidIcon™数字式湿度/温度传感器系列采用激光裁剪工艺,热固性聚合物电容检测元件具有多层结构,适合大多数恶劣的应用环境,产品能够直接安装在空气流经处,可监测并控制...
文章推荐: