
请问一下,stm32H743使用ADC中断,采集速率是不是和中断源的分频没有关系呀,我是用的是hsi作为时钟源,因为PLL2不知为何我的芯片使用不上,然后我发现无论我怎么改adc的时钟分频它采集到的数据就是这么多。之后我改为轮询方式的话,它就会随着adc的时钟分频有所改动。是不是设置了中断之后就采集的速率就和时钟分频无关了呀? 我用的是串口接收数据,xcom2.6,每5s统计一次数据,就是统计下面的R总共接收了多少。 然后测出如下结果:
从上面的数据可以知道,当我设置为轮询方式时,调整adc分频,接收到的总数居数据有明显变化,而在我改为中断时却感觉没有什么变化,这是为什么呢? 我的中断回调函数就只是设计一个获取它的值。然后main函数就获取该值转换打印出来。 main函数里的: |
MotorControl Workbench_6.3.2配置单片机时找不到STM32H743VIT6E
STM32H743IIT6同时配置ADC3通道中的温度及内部参考电压,扫描单次转换,怎样读出这二个数据?
TouchGFX Designer下载工程到STM32H7S7-DK报错
Demo 例程
关于STM32H743VIT6 在用QSPI的接口,想换个CS的管脚,但芯片内置是绑死的,这个要怎么处理,用个其他的IO口做片选
定时器使用DMA突发传输功能时,传入指针从常量数组改为变量数组后,传输功能异常。测试官方用例一样,是何原因?
STM32H745XIH6不能进行双核调试,CM4不能进行在线调试
正点原子阿波罗H743使用DMA2D后普通刷出现问题
STM32CubeMX在配置DCMI的腳位時,在Mode的選項中, 只有8bits, 10bits與12bits, 為何沒有14bits?
STM32H7双核调试问题:CM7能成功调试但CM4始终报"Failed to read ROM table via AP 3"错误
另外 printf 是阻塞式的化,你的ADC启动执行的速率就是软件运行的速率,所以调整ADC的频率,不影响你采集的速度。
建议先使用1个通道对地或VDD进行测试,或者针对某个内部某已知通道信号进行测试,把结果搞对搞稳。
再来多通道测试。这样或许更快~。
另外,你现在使用的H7系列,建议先不要开启D-Cache. 等ADC结果调试OK后再开启不迟。
谢谢,我感觉确实是这样,ADC在采样时,可能已经采了多次数据才计算打印一次(就是printf的打印速度慢于ADC采集),以及把HAL_ADC_START_IT写在了while循环里,由于我设置的单次转换,所以执行ADC转换的快慢取决于这个运行这while循环语句的速度了。