stm32f103c8t6的adc问题!!!非常急!!!
我的stm32f103c8t6的adc设置是单次单通道转换,软件触发。但是软件触发命令后,adc根本没有开始转换。SR寄存器中的STAT标志位一直没有置位。什么原因?
套路没对,上程序吧。
你先试试采集内部温度传感器和参考电压通道,通道16、17。
仔细检查程序,时钟设置好了吗? pythonworld 发表于 2018-5-1 05:59
仔细检查程序,时钟设置好了吗?
都设置了 时钟都设置好了。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2,ENABLE);
RCC_ADCCLKConfig(RCC_PCLK2_Div6); 而且其它功能都是正常的 我使用了好几个通道,都是一样的效果
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2,ENABLE);
RCC_ADCCLKConfig(RCC_PCLK2_Div6);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
ADC_InitStructure.ADC_ScanConvMode = DISABLE;
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
ADC_InitStructure.ADC_NbrOfChannel = 1;
ADC_Init(ADC2, &ADC_InitStructure);
ADC_RegularChannelConfig(ADC2,ADC_Channel_4,1,ADC_SampleTime_55Cycles5);
ADC_Cmd(ADC2,ENABLE);
ADC_ResetCalibration(ADC2);
while(ADC_GetResetCalibrationStatus(ADC2));
ADC_StartCalibration(ADC2);
while (ADC_GetCalibrationStatus(ADC2));
以上是初始化代码 gpio的时钟我在前面初始化了
页:
[1]
2