adc 采样 通道
来源:互联网 发布:appserv linux 编辑:程序博客网 时间:2024/05/19 02:23
今天学习stm32的adc部分,adc1有18个通道,其中adc16和adc17是内部通道,分别接内部温度计和Vrefint。在做A/D转换的时候,16个多路通道可以分为两组:规则组和注入组。不知道大家怎么看,也许是我看的不够专注,反正我觉得stm32的参考手册真是晦涩难懂,就像躲猫猫一样。就规则组这个地方,看了好长时间才算看明白。
总结一下规则组的设置。规则组由16个转换组成,注意这里说的是转换,而不是指16个通道。具体来说就是在ADC_SQR1-----ADC_SQR3这三个寄存器中SQ1[4:0]至SQ16[4:0],而每一个转换可以是ADC的前16个通道中的任意一个通道,所以这几个都是用5位一组表示的。通过对任意一个转换设置相应的数据可以将这个转换设置成某一个通道。如往SQ1里面写3,那么ADCx_in3就开始工作。
规则组中转换的总数由ADC_SQR1寄存器的L[3:0]位确定。如:将9写入该寄存器的L中,那么规则组的转换数就是9,也就是SQ1,SQ2,SQ3.......SQ9。将想要进行转换的通道写进上面几个转换中,就可以实现对多个通道按照一定的规则进行转换。
而寄存器ADC_CR1的DISCNUM[2:0]则规定了一次外部触发时进行规则转换的通道的数目。
如果我想进行这样一次转换:将通道9,8,7,6,5,4,3,2,1,0这是个通道进行转换。
那么首先设置ADC_SQR1寄存器的L[3:0],应该写0X0A。
然后再开始写寄存器ADC_CR1的DISCNUM[2:0],一次外部触发启动几个转换就写几个。这里写入0X03。
第三在SQ1到SQ9中依次写入9,8,7,6,5,4,3,2,1,0。.
那么在第一次外部触发之后,通道9,8,7进行转换;
第二次触发之后,通道6,5,4进行转换;
第三次触发之后,通道3,2,1进行转换;
第四次触发之后,通道0,9,8进行转换。
自己的一点理解,如有不足,请各位多多指教。
- adc 采样 通道
- STM32的ADC采样与多通道ADC采样
- STM32F407IG多通道ADC-DMA采样
- STM32F407 单通道ADC采样,DMA传输
- STM32F407多通道ADC采样程序
- Hi3518EV200平台ADC多通道采样
- Hi3518EV200平台ADC多通道采样流程
- stm32 adc dma多通道采样 数据错位 的解决方法
- c#上位机多通道ADC采样波形显示
- STM8L051之ADC+DMA两通道数据采样错位问题
- 关于STM32F4中ADC多通道连续采样的配置
- 关于STM32中ADC多通道连续采样的配置
- stm32f207的外部ADC/内部温度传感芯片的多通道ADC采样配置说明
- stm32DMA通道 ADC通道
- 基于STM32 8通道ADC采样实现源代码(转) 以后设计参考使用
- 基于STM32 8通道ADC采样实现源代码(转) 以后设计参考使用
- STM32 多通道ADC采样,采用Timer1进行采样率控制,利用DMA进行传输
- EFM32片内外设--ADC之多通道采样+Timer+PRS触发+DMA
- 6.Struts2 动态方法调用和参数获取
- 鲁信机床祝所有人们中秋幸福快乐
- 7.Struts2 自定义类型转换器
- 救治剩下对你的期待
- 数据结构:线性表的顺序表
- adc 采样 通道
- 图像特征提取
- IT痴汉的工作现状15-低级错误
- 8.Struts2 域属性的添加和访问
- 你还合不合我玩耍了
- UVA11388-GCD LCM
- ubuntu12.10创建新用户后无法登陆图形界面
- cocos2dx 框架
- codeforces #52 C Circular RMQ(线段树)