adc模数转换

规则组

由于该组的数据寄存器一次只能存一次值

若使用多个adc则需要配合DMA(数据转运帮手)使用(DMA数据搬移未搞清楚)

adc 的开启方式(未搞清楚)

硬件

软件

adc 的四种扫描模式

单次/连续

决定是否开启一次,然后一直转换

扫描或非扫描 

决定是否实现多个通道的依次转换

adc检测外围硬件电路电压

ADC单通道配置

ADC配置过程

  • 使能GPIO时钟和ADC时钟,设置引脚为模拟输入
  • 设置ADC的分频因子
  • 初始化ADC参数,包括ADC工作模式,规则序列等
  • 使能ADC并校准

    ADC_ResetCalibration(ADC1);                                //固定流程,内部有电路会自动执行校准
    while (ADC_GetResetCalibrationStatus(ADC1) == SET);//复位校准是否完成
    ADC_StartCalibration(ADC1);                          //开始校准
    while (ADC_GetCalibrationStatus(ADC1) == SET);//校准是否完成

  • 触发AD转换,读取AD转换值

注意:在使用adc的时候gpio模式需要选择    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;

ADC_RegularChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime)

rank代表通道的优先级,sampletime决定采样的精确度与耗费的时间

实际问题中,数据抖动严重,可以采用均值滤波的方法,即,去多个值求平均,作为最后的输出值,减小抖动

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值