收藏 分享(赏)

STM32CubeMX实现DMA模式下的AD转换.pdf

上传人:精品资料 文档编号:10938205 上传时间:2020-01-22 格式:PDF 页数:7 大小:642.70KB
下载 相关 举报
STM32CubeMX实现DMA模式下的AD转换.pdf_第1页
第1页 / 共7页
STM32CubeMX实现DMA模式下的AD转换.pdf_第2页
第2页 / 共7页
STM32CubeMX实现DMA模式下的AD转换.pdf_第3页
第3页 / 共7页
STM32CubeMX实现DMA模式下的AD转换.pdf_第4页
第4页 / 共7页
STM32CubeMX实现DMA模式下的AD转换.pdf_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、如何使用STM32CubeMX实现DMA模式下的AD转换山西大学电子信息工程系,王晓峰1、在Pinout界面配置ADC输入通道(引脚)在左边栏中勾选要选用为AD通道的引脚,每个ADC对应一组引脚,单击勾选即可。红色为冲突引脚。2、时钟配置图中的PCLK2即为AD模块输入时钟。但不是最终转换速率,且最大转换速率不能超过器件上限(2.4 MSPS)。3、参数配置进入configuration界面。点选ADC按钮。模式为独立模式。ClockPrescaler 是对PCLK2进行分频。需要注意,完成一次AD需要15个周期。所以最终的转换频率是PCLK2除2再除15。Resolution:分辨率:12位

2、二进制数Data alignment数据对齐:右对齐Scan Conversion Mode:扫描转换模式,如果使用了一个ADC下的多个采集通道,需要选择Enable模式,否则只会转换设置的第一个通道。Continuous Conversion Mode连续转换模式Discontinuous Conversion Mode:不连续转换模式DMA Continuous requests :DMA连续请求End of Conversion Selection转换结束方式选择:可选择单通道转换完成后EOC标志置位或所有转换完成后EOC置位。ADC_Regular_ConversionMode:在此项

3、下,需要手动将每一个AD通道添加到Rank里。WatchDog:模拟看门狗NVIC部分添加DMA流并开启中断(第二行),关闭中断模式的中断使能(第一行)。Priority 优先级:可根据具体情况设定。但一定保持SysTick的优先级最高。Memory :勾选此项,转换数据将存在Memory中,并且地址自加连续存放。此功能对某个通道连续多次采样很好用,采样数据会自动填满一个数组,方便软件滤波。Mode :选循环模式,填满数组后自动从头刷新。Data Width 数据长度:如果是12位AD转换,此处选半字。在这个页面可以添加引脚标签。建议保持高阻(不上拉不下拉)。4 程序实现在STM32CubeM

4、X生成好的程序基础上。在main设置一个uhADCxConvertedValue2的全局变量数组。类型为Uint16_t。在main函数的初始化区后,while(1)区前,添加:if(HAL_ADC_Start_DMA(ADC1启动,并开始连续转换,转换结果会放在uhADCxConvertedValue2数组中,大小是100。因为是连续转换,所以数组中存放的是最近100次转换结果。5 软件滤波滤波子函数:可以计算100个点的滤波结果。此函数为中值平均滑动滤波,当然,滑动是ADC的DMA自动实现的。uint16_t ADC_Average(_IO uint16_t *buff , uint16_

5、t num , uint16_t threshold)uint32_t sigma = 0;uint16_t i=0,j=0,temp = 0;uint16_t temp_buffnum;for(i=0;inum;i+)temp_buffi = buffi;for(i=0;i(num-1);i+) for(j=0;j(num-1);j+) if(temp_buffj temp_buffj+1) temp = temp_buffj;temp_buffj = temp_buffj+1;temp_buffj+1 = temp;for(i=threshold;i(num-threshold);i+) sigma = sigma + buffi;temp = (uint16_t)(sigma / (num - threshold*2);return(temp);6 Enjoy your Application _

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报