STM32开发基础知识——ADC转换

ADC基础概念

DC的各个通道的A/D转换可以单次连续扫描间断模式执行。
A/D转换结果以左对齐右对齐的方式,存储在16位规则组或者注入组数据寄存器中。

按照A/D转换的组织形式来划分,ADC的模拟输入通道分为规则组和注入组两种。
ADC可以对一组最多16个通道按照指定的顺序逐个进行转换,这组指定的通道称为规则组
在实际应用中,可能需要中断规则组的转换,临时对某些通道进行转换,这些通道注入了原来的规则组,故称注入组,最多由4个通道组成。

ADC有关的HAL库函数

查询方式(阻塞式的A\D转换)

用查询的方式,进行一次A/D采样并将结果读出。
uint16_t  ADC_Value = 0;//定义变量,接收返回的结果
HAL_ADC_Start(&hadc);//启动ADC
if(HAL_OK == HAL_ADC_PollForConversion(&hadc1,10))//等待A\D转换完成
{
    ADC0_Value = HAL_ADC_GetValue(&hadc1);//读出采样结果
}

中断方式(非阻塞式的A\D转换)

uint16_t  ADC_Value = 0;//定义变量,用于接收
HAL_ADC_Start_IT(&hadc);//中断的方式启动ADC
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)//重写ADC转换完成中断回调函数
{
    ADC0_Value = HAL_ADC_GetValue(&hadc1);
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值