刚接触STM32,请教下相关ADC+DMA定时采集问题:2个通道连续采集加DMA循环传送。ADC1时钟9M,两个通道采样时间均为55.5个周期,那么问题来了:1、ADC1总的采集时间是两个通道时间的总和吗?(55.5+12.5)/9*2???
2、ADC1采集完的标志是什么时候出现的?通道1采集完还是通道2采集完?连续采集的话,完成标志会自动清吗?
3、在取DMA对应的数据时需不需要判断DMA传送完成标志?取数据比较多的时候不关闭DMA传送,会不会取了一部分数据,另外一部分被更新?
4、我想利用ADC或DMA完成标志来取反IO口电平,用示波器观察时间,不知道该怎么处理?
while (1)
{
//if(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC))
if(DMA_GetFlagStatus(DMA1_FLAG_TC1))
{
DMA_ClearFlag(DMA1_FLAG_TC1);
//GPIO_TOGGLE;
GPIO_SetBits(GPIOB,GPIO_Pin_1);
}
GPIO_ResetBits(GPIOB,GPIO_Pin_1);
} |