|
使用cubemx配置ADC+DMA,DMA使用circular模式,启动ADC:HAL_ADC_Start_DMA(&hadc1,ADCvalue,NUM); 当ADCvalue满时,调用中断回调函数,我在中断回调函数中,把ADCvalue数据复制到另一个数组recv_buff中 void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef *hadc) { recvbuf(ADCvalue, recv_buff, sizeof(ADCvalue), sizeof(recv_buff)); } 在回调函数中ADCvalue是否还在更新,还是等执行完recvbuf(ADCvalue, recv_buff, sizeof(ADCvalue), sizeof(recv_buff));再更新ADCvalue。 |
FATFS 分区最大文件数量是多少
串口DMA收发出现ORE错误
STM32F3系列SDADC外部触发 DMA运输的bug
请问各位一下stm32L431rct6这款芯片,官方有没有停产?
Discover Endless Word Challenges With Wordle Unlimited Every Day
STM32L496ZG 通过串口驱动 SIM7022 NB-IoT 模组无法注册网络
求问诡异的问题,eth网口ping不通
将 TIM2 用作 TIM5、TIM1 和 TIM8 的时序控制器
Pokerogue: A Browser-Based Roguelike Pokémon Game That Hooks You
请问一下STM32F103C8T6的Hardwar NSS Output ENABLE后cs持续拉低是为什么
微信公众号
手机版
如果在回调函数里做数据处理时,ADC还是在不停转换的话,相应数据是会被DMA修改的。如果不希望这样,你要保证一轮数据传输
完毕后未处理完之前不要触发ADC转换了。
楼主可以计算并观测一组的数据时间反向验证。在回调函数里加一点延迟看看~~
我是用的连续不断触发,是否能使用半传回调函数HAL_ADC_ConvHalfCpltCallback和全传回调函数HAL_ADC_ConvCpltCallback做双缓冲,实时的处理ADC采集的数据