打印
[其他ST产品]

【学习笔记+过采样ADC】

[复制链接]
1303|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 sky.sun.zz 于 2019-12-22 16:35 编辑

【学习笔记+过采样ADC】
    STM32G4是一款ST最新推出的Cortex -M4的低功耗ARM 处理器。它的一个亮点是可运行过采样技术使得ADC达到16位转换精度。
   从ST官网下载RM0440关于STM32G4的参考手册。阅读20.4.29章节关于过采样ADC的描述。过采样单元执行数据预处理能够处理多个ADC转换,并将它们的平均数据宽度增加到最大16位的数据。


   过采样率N和除法系数M可以调整。 硬件实现以下功能:平均、数据速率降低、信噪比提高、基本滤波。
    N使用ADC CFGR2寄存器中的OVFS[2:0]位定义的,其范围可以从2x到256x。
    M由高达8bit的右移位组成,并使用ADC CFGR2寄存器中的OVSS[3:0]位定义。
    求和单元可以产生高达20位(256x12位结果)的结果,该结果首先右移,然后将其截断为16个最低有效位,使用移位留下的最低有效位四舍五入到最近的值,最后再被传输到ADC-DR数据寄存器。N和M的使用范围见表1.
    学习参考手册后,使用NUCLEO_G431RB 开发板来体验过采样ADC。
硬件:开发板空余IO口外接了1片OLED显示屏,PA0外接1电位器输入AVDD的分压值,见图1


                                          图1
软件:
在CubeMX中建立一个工程,配置过采样率N=128、除法系数M=3(见图2和表1红框);


                                         图2

                                            表1

过采样ADC配置部分代码:
hadc1.Init.OversamplingMode = ENABLE;
  hadc1.Init.Oversampling.Ratio = ADC_OVERSAMPLING_RATIO_128;
  hadc1.Init.Oversampling.RightBitShift = ADC_RIGHTBITSHIFT_3;
  hadc1.Init.Oversampling.TriggeredMode = ADC_TRIGGEREDMODE_SINGLE_TRIGGER;
  hadc1.Init.Oversampling.OversamplingStopReset = ADC_REGOVERSAMPLING_CONTINUED_MODE;

    运行结果16位过采样ADC转换结果非常稳定,转换后未经任何软件滤波处理,显示的读数只在最后1位偶尔跳动1个数字。


可见STM32G4的过采样ADC达到的16位转换结果是令人满意的。


使用特权

评论回复
沙发
mmuuss586| | 2019-12-23 10:06 | 只看该作者
感谢分享

使用特权

评论回复
板凳
parameters| | 2019-12-23 18:06 | 只看该作者
过采样算是一种资源换精度的方法

使用特权

评论回复
地板
晓伍| | 2020-1-17 12:54 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
5
八层楼| | 2020-1-17 12:58 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
6
观海| | 2020-1-17 13:03 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
7
guanjiaer| | 2020-1-17 13:17 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
8
heimaojingzhang| | 2020-1-17 13:23 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
9
manufact| | 2020-1-17 13:48 | 只看该作者
过采样是在硬件资源不够的情况下的一种手段

使用特权

评论回复
10
网络孤客| | 2020-6-18 10:31 | 只看该作者
想问同样时间下,采用过采样精度高还是提高SMPR的Cycle值精度高?

也就是优先采用哪种方式。

使用特权

评论回复
11
sky.sun.zz|  楼主 | 2020-6-18 13:06 | 只看该作者
网络孤客 发表于 2020-6-18 10:31
想问同样时间下,采用过采样精度高还是提高SMPR的Cycle值精度高?

也就是优先采用哪种方式。 ...

这个应该需要通过运行结果来对比才能确定

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

727

帖子

13

粉丝