查看: 191|回复: 5
打印 上一主题 下一主题

STM32F103C8T6-ICKEY-HAL-DMA-ADC4Channel

[复制链接] qrcode

27

主题

34

帖子

102

积分

注册会员

Rank: 2

积分
102
楼主
跳转到指定楼层
发表于 2015-7-30 02:37 PM | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

这个帖子继续演示ADC 基于DMA 获取数据。。

ADC 使用12Mhz 时钟源。。F1 ADC不要超过14Mhz 就可以。。

进入配置ADC。。

ADC DMA 配置 需要注意的是:

ScanConvMode = ADC_SCAN_ENABLE;

ContinuousConvMode = ENABLE;

NbrOfConversion = 4;

然后每个通道,对于好rank 就可以

sConfig.Channel = ADC_CHANNEL_0;
  sConfig.Rank = 1;
  sConfig.SamplingTime = ADC_SAMPLETIME_239CYCLES_5;
  HAL_ADC_ConfigChannel(&hadc1, &sConfig);

需要注意:

DMA_PERIPH_TO_MEMORY;设备到内存


 DMA_PDATAALIGN_WORD;32位


DMA_MDATAALIGN_WORD;32位


Mode = DMA_CIRCULAR;循环

配置好后,就生成文件。。就可以。。然后在keil下添加程序。。


uint32_t uhADCxConvertedValue[4]; 用4组32位变量存储DMA 转换过来的数据。。


HAL_ADCEx_Calibration_Start(&hadc1); 开启F1 ADC校准


HAL_ADC_Start_DMA(&hadc1, (uint32_t*)&uhADCxConvertedValue, 4);  开启HAL ADC DMA 转换后可以不用管了。。DMA自动把数据帮你转换到uint32_t uhADCxConvertedValue[4];

编译后,就可以下载到单片机里了。。

下图是,演示效果。。。

这里是原程序:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

2

主题

85

帖子

10

积分

新手上路

Rank: 1

积分
10
沙发
发表于 2015-7-30 03:24 PM | 只看该作者
多谢分享,顶一个!
回复 支持 反对

使用道具 举报

6

主题

188

帖子

192

积分

注册会员

Rank: 2

积分
192
板凳
发表于 2015-7-30 06:33 PM | 只看该作者

为了不后悔,我看我看我看看看~

赞一个~

回复 支持 反对

使用道具 举报

0

主题

93

帖子

30

积分

新手上路

Rank: 1

积分
30
地板
发表于 2015-7-30 11:38 PM | 只看该作者
多谢大伙,支持。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

0

主题

79

帖子

6

积分

新手上路

Rank: 1

积分
6
5#
发表于 2015-8-10 09:00 PM | 只看该作者
谢谢分享顶一个
回复 支持 反对

使用道具 举报

368

主题

2017

帖子

4268

积分

论坛元老

Rank: 8Rank: 8

积分
4268
6#
发表于 2015-8-11 12:09 PM | 只看该作者
谢谢。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表