stm32DMA通道 ADC通道

Posted lxjshuju

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32DMA通道 ADC通道相关的知识,希望对你有一定的参考价值。

DMA:

1.使用DAC的时候。将转化后得到的模拟信号通过IO口输出的时候。为什么还将IO口配置能输入模式

技术分享

PS:stm32手冊上定义PA4和PA5分别和DAC1通道和DAC2通道相连  ;

DMA1和DMA2使用按个通道手冊中也是有规定的:

技术分享

波形数据从内存带DAC是怎么DMA是怎么传输的?:

/* 配置DMA2 */
DMA_InitStructure.DMA_PeripheralBaseAddr = DAC_DHR12RD_Address;//外设数据地址
DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&DualSine12bit ;//内存数据地址 DualSine12bit
DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralDST;//传输数据方向内存至外设
DMA_InitStructure.DMA_BufferSize = 32;//缓存大小为32字节
DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;//外设数据地址固定
DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;//内存数据地址自增
DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word; //外设数据以字为单位
DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Word;//内存数据以字为单位
DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;//循环模式
DMA_InitStructure.DMA_Priority = DMA_Priority_High;//高DMA通道优先级
DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;//非内存至内存模式
DMA_Init(DMA2_Channel4, &DMA_InitStructure);

当传输的我们数据大小为32位 的时候,发送给DAC转化,


DMA通道选择:

外设请求使用DMA传输的时候。关于DMA通道的选择其stm32手冊上都有规定的。须要我们相应手冊去查询


技术分享技术分享



技术分享












ADC通道:

函数ADC_RegularChannelConfig( )

如果我们使用了PC0

ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5)

以配置通道的採样周期。该函数有4个參数,第一个參数指使用哪个ADC,我们选ADC1

二个參数。本次採样使用的通道,我们选择ADC_Channel_10。第三个參数,採样顺序。

实验我们仅仅有一个採样,直接给它赋值为:1.

第四个參数,配置採样周期。

这里PC0管脚是ADADC_Channel_10输入通道。这个通道并非任意的选择的。在ST

提供的手冊《【英文】STM32F107VC数据手冊V6.pdf》中。有相应的说明:

技术分享

译注:(详细见stm32手冊)

表中的引脚名称标注中出现的ADC12_INx(x表示4~914~15之间的整数),表示这个引脚能够是

ADC1_INxADC2_INx

比如:ADC12_IN9表示这个引脚能够配置为ADC1_IN9,也能够配置为

ADC2_IN9

相同,表中的引脚名称标注中出现的ADC123_INx(x表示0~310~13之间的整数)。表示这个引脚可

以是ADC1_INxADC2_INxADC3_INx










串口:

//P:串口接收从io口中传来的数据

 USART_InitStructure.USART_WordLength = USART_WordLength_8b;  //P:配置串口传输的字长,一个字符一个字符的接受

























































以上是关于stm32DMA通道 ADC通道的主要内容,如果未能解决你的问题,请参考以下文章

带有 DMA 7 通道常规组的 STM32F4 ADC 不工作

STM32H7教程第46章 STM32H7的ADC应用之DMA方式多通道采样

STM32 DMA问题

使用HAL库开发STM32:ADC基础使用

STM32G070RBT6基于STM32CubeMX创建ADC DMA多通道采样工程

stm32 嵌入式开发 中ADC独立多通道DMA传输数据实验总结