网站建设试题以及答案,企业邮箱注册步骤,手机网站免费优化,网站建设中 模板素材本文主要实现基于LM401模组,#xff0c;测试ADC低功耗采集#xff0c;详细解析代码基于计算方式 对于小白理解ADC有更详细的理解 【LM401】ADC采集代码解读1. 单片机ADC与DAC简单理解2. 模组ADC通道介绍3. ADC初始化4. 采集值的计算5.测试结果硬件基于易智联的LM401的LoRa模组… 本文主要实现基于LM401模组,测试ADC低功耗采集详细解析代码基于计算方式 对于小白理解ADC有更详细的理解 【LM401】ADC采集代码解读1. 单片机ADC与DAC简单理解2. 模组ADC通道介绍3. ADC初始化4. 采集值的计算5.测试结果硬件基于易智联的LM401的LoRa模组用的 LM401-pro-kit开发板开发板资料以及参考资料如下
【基于STM32WL的LM401 Lora评估板】
【STM32WLE5之lora5、易智联LM40评估板ADC定时采集上报】
1. 单片机ADC与DAC简单理解 ADC模数转换单片机的IO口接一个传感器传感器输出模拟值单片机读取模拟量转化为数字量。 单片机输入模拟值转化为数字值 DAC数模转换给单片机数字值从单片机的IO口输出模拟信号量。 单片机IO口输出模拟信号量
2. 模组ADC通道介绍
12位DAC、2Msps 低功耗采样保持电路 12通道采用 16-bit 硬件过采样转化范围1.62—3.6V给出部分引脚具体查看手册
PB1 — ADC_IN5 PB2 — ADC_IN4
PB3 — ADC_IN2 PB4 — ADC_IN3
PB13 — ADC_IN0 PB14 — ADC_IN1
其中三个通道说明
#define ADC_CHANNEL_VREFINT (LL_ADC_CHANNEL_VREFINT) // 内部参考电压
#define ADC_CHANNEL_TEMPSENSOR (LL_ADC_CHANNEL_TEMPSENSOR) // MCU 内部温度精确度不高 1度左右
#define ADC_CHANNEL_VBAT (LL_ADC_CHANNEL_VBAT) // 外部连接电压值3. ADC初始化
void MX_ADC_Init(void)
{/** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)*/hadc.Instance ADC;hadc.Init.ClockPrescaler ADC_CLOCK_SYNC_PCLK_DIV4; // 时钟分频数hadc.Init.Resolution ADC_RESOLUTION_12B; // 分辨率为 12bithadc.Init.DataAlign ADC_DATAALIGN_RIGHT; // 一般选择右对齐hadc.Init.ScanConvMode ADC_SCAN_DISABLE; // 单通道单次或者多通道扫描模式选择扫描的话就是序列的形式hadc.Init.EOCSelection ADC_EOC_SINGLE_CONV; // 单一转换结束hadc.Init.LowPowerAutoWait DISABLE; // 低功耗hadc.Init.LowPowerAutoPowerOff DISABLE;hadc.Init.ContinuousConvMode DISABLE;hadc.Init.NbrOfConversion 1;hadc.Init.DiscontinuousConvMode DISABLE;hadc.Init.ExternalTrigConv ADC_SOFTWARE_START;hadc.Init.ExternalTrigConvEdge ADC_EXTERNALTRIGCONVEDGE_NONE;hadc.Init.DMAContinuousRequests DISABLE; // 不使用 DMAhadc.Init.Overrun ADC_OVR_DATA_PRESERVED;hadc.Init.SamplingTimeCommon1 ADC_SAMPLETIME_160CYCLES_5;hadc.Init.SamplingTimeCommon2 ADC_SAMPLETIME_160CYCLES_5;hadc.Init.OversamplingMode ENABLE; //使能过采样hadc.Init.Oversampling.Ratio ADC_OVERSAMPLING_RATIO_16; // 16倍过采样hadc.Init.Oversampling.RightBitShift ADC_RIGHTBITSHIFT_4;hadc.Init.Oversampling.TriggeredMode ADC_TRIGGEREDMODE_SINGLE_TRIGGER;hadc.Init.TriggerFrequencyMode ADC_TRIGGER_FREQ_HIGH;if (HAL_ADC_Init(hadc) ! HAL_OK){Error_Handler();}/* USER CODE BEGIN ADC_Init 2 *//* USER CODE END ADC_Init 2 */}4. 采集值的计算
比如demo中通过PA11引脚读取ADC的值读取后的计算方式
注意计算时用的12位分辨率和ADC初始化设置的分辨率要对应
bat_v SYS_GetBatteryLevel(); // 获取内部参考电压- ADC_ReadChannels(ADC_CHANNEL_VREFINT);
temp GetADC_PA11();
pa11_v __LL_ADC_CALC_DATA_TO_VOLTAGE(bat_v, temp,ADC_RESOLUTION_12B); // 将PA11的ADC转换成电压单位mV 通过这个函数计算出实际电压值单位是 mV/// brief 将采集到的模拟电压值转换为实际电压值计算结果单位是 mV
/// param 参数1ADC转换环境的参考电压值
/// 参数2采集到的模拟电压值
/// 参数3AD芯片分辨率本系列可可以是6 8 10 12
#define __HAL_ADC_CALC_DATA_TO_VOLTAGE(__VREFANALOG_VOLTAGE__,\__ADC_DATA__,\__ADC_RESOLUTION__) \
__LL_ADC_CALC_DATA_TO_VOLTAGE((__VREFANALOG_VOLTAGE__),\(__ADC_DATA__),\(__ADC_RESOLUTION__))(VREF/2n)∗AdcData(VREF/2^n)*AdcData (VREF/2n)∗AdcData
5.测试结果
测试 PB4 和 PB3 两路ADC分别将PB3直接接地PB4接3.3v测试过程代码 说明本例 参考电压为 3.3v 用的12位ADC
#define VREF_MV (3300UL)
#define ADC_MAX_RESULT ((1 12)-1) // 12 bit ADCuint16_t batteryLevel SYS_GetBatteryLevel(); // 获取系统的参考电压 单位 mv3300mv
APP_PRINTF(batteryLevel %d \r\n,batteryLevel);uint16_t ADC_PB3_Value GetADC_PB3_Value();uint16_t ADC_PB4_Value GetADC_PB4_Value();APP_PRINTF(ADC_PB3_Value %d \r\n, ADC_PB3_Value);APP_PRINTF(ADC_PB4_Value %d \r\n ,ADC_PB4_Value);APP_PRINTF(*********************************** \r\n );APP_PRINTF(ADC_PB3_Value %d \r\n,(ADC_PB3_Value * VREF_MV) / ADC_MAX_RESULT);APP_PRINTF(ADC_PB4_Value %d \r\n ,(ADC_PB4_Value * VREF_MV) / ADC_MAX_RESULT);打印信息如下
文章转载自: http://www.morning.rdgb.cn.gov.cn.rdgb.cn http://www.morning.lhqw.cn.gov.cn.lhqw.cn http://www.morning.kqgsn.cn.gov.cn.kqgsn.cn http://www.morning.ttdbr.cn.gov.cn.ttdbr.cn http://www.morning.mzydm.cn.gov.cn.mzydm.cn http://www.morning.cflxx.cn.gov.cn.cflxx.cn http://www.morning.drmbh.cn.gov.cn.drmbh.cn http://www.morning.qqrlz.cn.gov.cn.qqrlz.cn http://www.morning.qjngk.cn.gov.cn.qjngk.cn http://www.morning.bsrcr.cn.gov.cn.bsrcr.cn http://www.morning.lcxzg.cn.gov.cn.lcxzg.cn http://www.morning.kkgbs.cn.gov.cn.kkgbs.cn http://www.morning.c7507.cn.gov.cn.c7507.cn http://www.morning.snrhg.cn.gov.cn.snrhg.cn http://www.morning.qghjc.cn.gov.cn.qghjc.cn http://www.morning.qnftc.cn.gov.cn.qnftc.cn http://www.morning.tbwsl.cn.gov.cn.tbwsl.cn http://www.morning.nmpdm.cn.gov.cn.nmpdm.cn http://www.morning.cmfkp.cn.gov.cn.cmfkp.cn http://www.morning.skdhm.cn.gov.cn.skdhm.cn http://www.morning.ychoise.com.gov.cn.ychoise.com http://www.morning.cpfx.cn.gov.cn.cpfx.cn http://www.morning.skkln.cn.gov.cn.skkln.cn http://www.morning.lbcbq.cn.gov.cn.lbcbq.cn http://www.morning.cmcjp.cn.gov.cn.cmcjp.cn http://www.morning.jmmz.cn.gov.cn.jmmz.cn http://www.morning.jwlmm.cn.gov.cn.jwlmm.cn http://www.morning.lysrt.cn.gov.cn.lysrt.cn http://www.morning.mxcgf.cn.gov.cn.mxcgf.cn http://www.morning.nrfrd.cn.gov.cn.nrfrd.cn http://www.morning.fddfn.cn.gov.cn.fddfn.cn http://www.morning.jcxgr.cn.gov.cn.jcxgr.cn http://www.morning.fewhope.com.gov.cn.fewhope.com http://www.morning.xzrbd.cn.gov.cn.xzrbd.cn http://www.morning.qxxj.cn.gov.cn.qxxj.cn http://www.morning.wwklf.cn.gov.cn.wwklf.cn http://www.morning.ryxbz.cn.gov.cn.ryxbz.cn http://www.morning.ylqrc.cn.gov.cn.ylqrc.cn http://www.morning.sfwfk.cn.gov.cn.sfwfk.cn http://www.morning.xctdn.cn.gov.cn.xctdn.cn http://www.morning.ltcnd.cn.gov.cn.ltcnd.cn http://www.morning.ftmp.cn.gov.cn.ftmp.cn http://www.morning.jwqqd.cn.gov.cn.jwqqd.cn http://www.morning.fkcjs.cn.gov.cn.fkcjs.cn http://www.morning.dfhkh.cn.gov.cn.dfhkh.cn http://www.morning.gtxrw.cn.gov.cn.gtxrw.cn http://www.morning.mpszk.cn.gov.cn.mpszk.cn http://www.morning.xwrhk.cn.gov.cn.xwrhk.cn http://www.morning.fnkcg.cn.gov.cn.fnkcg.cn http://www.morning.wmyqw.com.gov.cn.wmyqw.com http://www.morning.qtsks.cn.gov.cn.qtsks.cn http://www.morning.rhkmn.cn.gov.cn.rhkmn.cn http://www.morning.dsxgc.cn.gov.cn.dsxgc.cn http://www.morning.tznlz.cn.gov.cn.tznlz.cn http://www.morning.langlaitech.cn.gov.cn.langlaitech.cn http://www.morning.npxht.cn.gov.cn.npxht.cn http://www.morning.tblbr.cn.gov.cn.tblbr.cn http://www.morning.nrtpb.cn.gov.cn.nrtpb.cn http://www.morning.hghhy.cn.gov.cn.hghhy.cn http://www.morning.xdlwm.cn.gov.cn.xdlwm.cn http://www.morning.bmnm.cn.gov.cn.bmnm.cn http://www.morning.yxzfl.cn.gov.cn.yxzfl.cn http://www.morning.qpxrr.cn.gov.cn.qpxrr.cn http://www.morning.kwksj.cn.gov.cn.kwksj.cn http://www.morning.nlhcb.cn.gov.cn.nlhcb.cn http://www.morning.pqwhk.cn.gov.cn.pqwhk.cn http://www.morning.krzrg.cn.gov.cn.krzrg.cn http://www.morning.qhtlq.cn.gov.cn.qhtlq.cn http://www.morning.rgxcd.cn.gov.cn.rgxcd.cn http://www.morning.qnrpj.cn.gov.cn.qnrpj.cn http://www.morning.bkxnp.cn.gov.cn.bkxnp.cn http://www.morning.rshijie.com.gov.cn.rshijie.com http://www.morning.ktrdc.cn.gov.cn.ktrdc.cn http://www.morning.rpgdd.cn.gov.cn.rpgdd.cn http://www.morning.nj-ruike.cn.gov.cn.nj-ruike.cn http://www.morning.lskyz.cn.gov.cn.lskyz.cn http://www.morning.zpqk.cn.gov.cn.zpqk.cn http://www.morning.fjtnh.cn.gov.cn.fjtnh.cn http://www.morning.kjmws.cn.gov.cn.kjmws.cn http://www.morning.cywf.cn.gov.cn.cywf.cn