stm32DMA通道 ADC通道
DMA:
1.使用DAC的时候。将转化后得到的模拟信号通过IO口输出的时候。为什么还将IO口配置能输入模式
PS:stm32手冊上定义PA4和PA5分别和DAC1通道和DAC2通道相连 ;
DMA1和DMA2使用按个通道手冊中也是有规定的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMTcyNDI5NTc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
波形数据从内存带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手冊上都有规定的。须要我们相应手冊去查询
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMTcyNDI5NTc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMTcyNDI5NTc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
ADC通道:
函数ADC_RegularChannelConfig( )。
如果我们使用了PC0
ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5)可
个參数,第一个參数指使用哪个ADC,我们选ADC1。
第
二个參数。本次採样使用的通道,我们选择ADC_Channel_10。第三个參数,採样顺序。
本
实验我们仅仅有一个採样,直接给它赋值为:1.。
第四个參数,配置採样周期。
这里PC0管脚是AD的ADC_Channel_10输入通道。这个通道并非任意的选择的。在ST
提供的手冊《【英文】STM32F107VC数据手冊V6.pdf》中。有相应的说明:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMTcyNDI5NTc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
译注:(详细见stm32手冊)
表中的引脚名称标注中出现的ADC12_INx(x表示4~9或14~15之间的整数),表示这个引脚能够是
ADC1_INx或ADC2_INx。
比如:ADC12_IN9表示这个引脚能够配置为ADC1_IN9,也能够配置为
ADC2_IN9。
相同,表中的引脚名称标注中出现的ADC123_INx(x表示0~3或10~13之间的整数)。表示这个引脚可
以是ADC1_INx或ADC2_INx或ADC3_INx。
串口:
//P:串口接收从io口中传来的数据
USART_InitStructure.USART_WordLength = USART_WordLength_8b; //P:配置串口传输的字长,一个字符一个字符的接受
stm32DMA通道 ADC通道的更多相关文章
- 【STM32】用DMA实现多路ADC通道数据采集
今天尝试了下STM32的ADC采样,并利用DMA实现采样数据的直接搬运存储,这样就不用CPU去参与操作了. 找了不少例子参考,ADC和DMA的设置了解了个大概,并直接利用开发板来做一些实验来验证相关的 ...
- Java NIO 学习笔记(二)----聚集和分散,通道到通道
目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...
- STM32应用实例十五:STM32的ADC通道间干扰的问题
最近我们在开发一个项目时,用到了MCU自带的ADC,在调试过程中发现通道之间村在相互干扰的问题.以前其实也用过好几次,但要求都不高所以没有太关注,此次因为物理量的量程较大,所以看到了变化. 首先来说明 ...
- stm32CubeMx 实现单通道ADC DMA采集
今天要做的是ADC单通道DMA采集实验 MCU : STM32F429 开发工具:STM32CubeMx 版本号 5.0.0 实验目的:实现ADC1 13通道 DMA采集 一 :简介 首先,我们来看一 ...
- golang go语言通道类型的通道示例 通道的通道
几点注意:go的无缓存通道 通道make 创建后,即使里面是空的,也可以取里面内容.但是程序会被阻塞. 通道的规则是没人取,是不能往里面放的.放的线程会阻塞. 最外层的requestChan相当于一个 ...
- Opencv中RGB通道/HSV通道并分离
OpenCV中HSV颜色模型及颜色分量范围 opencv HSV 颜色模型(H通道取值 && CV_BGR2HSV_FULL) [opencv]在hsv颜色空间识别区域颜色 将原图分离 ...
- stm32之ADC应用实例(单通道、多通道、基于DMA)
文本仅做记录.. 硬件:STM32F103VCT6 开发工具:Keil uVision4 下载调试工具:ARM仿真器 网上资料很多,这里做一个详细的整合.(也不是很详细,但很通俗). 所用的芯片内嵌 ...
- STM32使用HAL库实现ADC单通道转换
STM32的ADC转换还是很强大的,它具有多个通道选择,这里我就不细说,不了解的可以自行百度,这里只是选取单通道,实现ADC转换.在文章开始之前,我说一下数据左对齐跟右对齐的差别,以前一直糊里糊涂的, ...
- stm32之ADC应用实例(单通道、多通道、基于DMA)-转载精华帖,最后一部分的代码是精华
硬件:STM32F103VCT6 开发工具:Keil uVision4 下载调试工具:ARM仿真器网上资料很多,这里做一个详细的整合.(也不是很详细,但很通俗).所用的芯片内嵌3个12位的 ...
随机推荐
- 【MyEcplise】新装系统,新装的myEcplise使用原来的workspace和maven库,项目没错但是引用的包不能正确找到
项目中都是原来的正确的项目,但是有个感叹号 正确方法: 更新之后如果有别的问题,例如JDK版本变成原始版本等等,请在build path中调整. 并且修改 项目的编译JDK版本 右键项目propert ...
- [置顶]
使用kube-proxy让外部网络访问K8S service的ClusterIP
配置方式 kubernetes版本大于或者等于1.2时,外部网络(即非K8S集群内的网络)访问cluster IP的办法是: 修改master的/etc/kubernetes/proxy,把KUBE_ ...
- scp拷贝本地文件到服务器
拷贝远程服务器的文件到本地:scp -r -P 端口号 用户名@IP地址:/usr/local/tomcat_airc/webapps/ /tmp/kyj/ 拷贝本地文件到远程服务 ...
- AcpectJ注释方式配置AOP
1.AspectJ的概念 @AspectJ类似于Java注解的普通Java类 Spring可以使用AspectJ来做切入点解析 AOP的运行时仍旧是纯的Spring AOP,对Aspect ...
- Angular 学习笔记——ng-repeat 隔行换色
<!DOCTYPE html> <html lang="en" ng-app="myApp"> <head> <met ...
- 解决cp: omitting directory 提示信息
解决cp: omitting directory 提示信息 执行cp时出现“cp: omitting directory ” 提示信息, 可以使用cp -r 参数来递归拷贝这些文件.
- [译] 通过 contentEditable 属性创建一个所见即所得的编辑器(富文本编辑器)
译者注 这只是一篇入门教程,介绍了一些基础知识,仅供参考,切不可因此觉得富文本编辑器很简单. 创建富文本编辑器是一个非常复杂的工程,需要考虑到方方面面,也有很多坑(请参考原文第一条评论). 为免误导大 ...
- mysql主从从
1.从官网下载安装percona-xtrabackup2.xtrabackup只能备份和恢复innodb的表,所以这里用innobackupex,可以实现对myisam和innodb的表在线备份和恢复 ...
- java 安装后 不能 java javac 说找不到命令 -bash: javac: command not found
java 安装后 不能 java javac 说找不到命令 -bash: javac: command not found 不是环境变量的问题, 直接cd到java的目录 也不能执行命令 后来发现是 ...
- js中有特殊字符的编码格式
在get和post方法中,如果传入的参数值有特殊字符,如:“&”,在get中的url需要拼接,可以使用encodeURICompontent来编码来转化 回调就是在上面传递实际参数,传递给aj ...