|
请问一下,stm32H743使用ADC中断,采集速率是不是和中断源的分频没有关系呀,我是用的是hsi作为时钟源,因为PLL2不知为何我的芯片使用不上,然后我发现无论我怎么改adc的时钟分频它采集到的数据就是这么多。之后我改为轮询方式的话,它就会随着adc的时钟分频有所改动。是不是设置了中断之后就采集的速率就和时钟分频无关了呀? 我用的是串口接收数据,xcom2.6,每5s统计一次数据,就是统计下面的R总共接收了多少。
然后测出如下结果:
从上面的数据可以知道,当我设置为轮询方式时,调整adc分频,接收到的总数居数据有明显变化,而在我改为中断时却感觉没有什么变化,这是为什么呢? 我的中断回调函数就只是设计一个获取它的值。然后main函数就获取该值转换打印出来。
main函数里的:
|
【经验分享】STM32H7 DMA+UART不定长接收实战:解决缓存溢出与数据错位问题
STM32H747 D2域的问题
官方有没有成熟的FTL
STM32H743 以太网 为什么需要设置在0x30040000才能使用
DMAMUX 使用内部外设Request Event(不使用TIM12和LPTIM)
stm32H503CBT6 ADC在某次上电后波动变大了一些。
STM32H743 的ADC线性校准问题
NUCLEO-H7S3L8开发板,操作板载FLASH出错,无法进入APP
H743 ulpi phy 引脚配置
STM32H747XG下载一次仿真器就检测不到,运行不能正常
微信公众号
手机版
另外 printf 是阻塞式的化,你的ADC启动执行的速率就是软件运行的速率,所以调整ADC的频率,不影响你采集的速度。
建议先使用1个通道对地或VDD进行测试,或者针对某个内部某已知通道信号进行测试,把结果搞对搞稳。
再来多通道测试。这样或许更快~。
另外,你现在使用的H7系列,建议先不要开启D-Cache. 等ADC结果调试OK后再开启不迟。
谢谢,我感觉确实是这样,ADC在采样时,可能已经采了多次数据才计算打印一次(就是printf的打印速度慢于ADC采集),以及把HAL_ADC_START_IT写在了while循环里,由于我设置的单次转换,所以执行ADC转换的快慢取决于这个运行这while循环语句的速度了。