完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
不是,可以不用。用DMA的就不说了,你应该已经会了,如果多通道不用DMA,首先需要打开扫描模式,然后区分STM32的单次模式与连续模式,单次模式并不是指一个通道,假如你同时打开了四个通道,单词模式时会把这四个通道采集一遍就停止采集,而连续模式就是这四个通道采集一遍一直又接着从第一个开始采集。如果要使用非DMA和中断模式,参考这个配置:扫描模式+单词转换模式+间断模式。
扫描模式时配置多通道时必须打开的;单词转换的意思是不需要不停的去采集每个通道,而是采集完一遍之后就停止;间断模式可以让扫描的四个通道分为四个组,如果你使用了CUBEMX,就是Number of Conversion这个选项,如果我没记错的话,你使用非DMA模式,这里的Number of Conversion这个选项需要配置为1,否则读取AD值时只能读取最后一个通道。 具体使用HAL库的代码如下: for(i=1;i<5;i++){HAL_ADC_Start( hadc1);HAL_ADC_PollForConversion( hadc10xffff);adcBuf=HAL_ADC_GetValue( hadc1);printf("------ch:%d--%d-------rn"iadcBuf);}HAL_ADC_Stop( hadc1);HAL_Delay(1000); 调用hal库接口函数也需要注意,HAL_ADC_Start一定要放在for里面,即每一个通道都要触发。四个通道都采集完了,再去调用HAL_ADC_Stop( hadc1);结束本次ADC采集。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
364 浏览 0 评论
356 浏览 0 评论
嵌入式学习-搭建自己的ubuntu系统之ubuntu网络设置
526 浏览 0 评论
龙芯中科胡伟武:3B6600 八核桌面 CPU 性能将达到英特尔中高端酷睿 12~13 代水平
574 浏览 0 评论
树莓派Pico 2发布,搭载RP2350双核RISC-V和Arm Cortex-M33微控制器!
542 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
10691 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 07:57 , Processed in 0.412300 second(s), Total 40, Slave 34 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号