
STM32H723 ,用TIM1 的update 事件作为trgo2 去触发ADC 注入采样 ,ADC1和ADC2 设置成双通道注入+规则同时采样模式(规则采样没有启动),在update的中断中去读取ADC 注入采样的转换结果,发现ADC 的采样转换时间占了整个中断周期。如果将注入采样的触发用软件触发,并且在中断函数的开始处软件触发ADC 注入采样,这时候采样转换的时间只有几个微秒。 好像update trgo2 触发ADC有一个周期的延时,ADC 采样转换慢并不是真的采样转换时间,而是在等trgo2 信号。这是因为TIM1的寄存器设置不对还是其他原因? |
感觉对定时器触发adc采集的协调工作不清楚。timer的update事件是触发adc开始采样,要经过采样和转换,结果才是最新的,然后读adc的的转换结果的时刻应该是根据adc的转换标志置1才读。第二个问题,定时器的update事件通常不短于adc的采样和转换的时间开销。 |
定时器update触发ADC没有问题,但你读ADC结果为何要在Update中断里去读?没有合理性啊。应该是在EOC中断里读才合理。你说ADC采样时间占据整个中断时间,这个说法表示不理解。可以肯定的是,采样转换时间跟触发源没有关系。你再理理你的程序逻辑。 |
STM32H755使用DMA接收数据不正常
HAL_TIM_IC_Start_DMA的回调函数是HAL_TIM_IC_CaptureCpltCallback吗?为什么进不去?
CubeMX 生成的 STM32H7 CMake 工程打开串口 DMA 无法正常发送数据,如何解决?
STM32H7S78-DK 官方TOUCHGFX的DEMO源码在哪里呢?
STM32H723VG实现usb通讯
STM32H750VBT6挂接外部NAND Flash
STM32H7 openamp
STM32MP135D的TIM2使用ETR作为外部时钟时,无法使用PE15作为输入
如何利用TIM1触发HRTIM TIMA生成频率为20Hz的100ns脉冲波?
STM32双核H7核间通信的方法