
请问一下,stm32H743使用ADC中断,采集速率是不是和中断源的分频没有关系呀,我是用的是hsi作为时钟源,因为PLL2不知为何我的芯片使用不上,然后我发现无论我怎么改adc的时钟分频它采集到的数据就是这么多。之后我改为轮询方式的话,它就会随着adc的时钟分频有所改动。是不是设置了中断之后就采集的速率就和时钟分频无关了呀? 我用的是串口接收数据,xcom2.6,每5s统计一次数据,就是统计下面的R总共接收了多少。 然后测出如下结果:
从上面的数据可以知道,当我设置为轮询方式时,调整adc分频,接收到的总数居数据有明显变化,而在我改为中断时却感觉没有什么变化,这是为什么呢? 我的中断回调函数就只是设计一个获取它的值。然后main函数就获取该值转换打印出来。 main函数里的: |
stm32h7 用pb3、pb4、pb5、pa15做spi3后,mx组态时debug里选择serial wire,程序里加了禁用jtag,spi3口不能工作
MCSDK不能启动电机?
ADC差分采样
STM32H745启动与烧录问题
stm32H7 LTDC控制器 CLUT模式寄存器配置
STM32H750B-DK 板载STLINK 无程序
STM32CUBEMX最新版本6.14.1出现BUG
nucleo板子自带的stlinkv3坏了咋整
STM32H747 全新板子USB接口,插拔第一次连接的上,之后就再也连接不上。
STM32H747 的USB口,烧录程序就损坏。提示“NO DFU capable USB device available”
另外 printf 是阻塞式的化,你的ADC启动执行的速率就是软件运行的速率,所以调整ADC的频率,不影响你采集的速度。
建议先使用1个通道对地或VDD进行测试,或者针对某个内部某已知通道信号进行测试,把结果搞对搞稳。
再来多通道测试。这样或许更快~。
另外,你现在使用的H7系列,建议先不要开启D-Cache. 等ADC结果调试OK后再开启不迟。
谢谢,我感觉确实是这样,ADC在采样时,可能已经采了多次数据才计算打印一次(就是printf的打印速度慢于ADC采集),以及把HAL_ADC_START_IT写在了while循环里,由于我设置的单次转换,所以执行ADC转换的快慢取决于这个运行这while循环语句的速度了。