你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
查看全部评分
pythonworld 发表于 2018-5-1 05:59 仔细检查程序,时钟设置好了吗?
你先试试采集内部温度传感器和参考电压通道,通道16、17。
评分
查看全部评分
评分
查看全部评分
都设置了
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2,ENABLE);
RCC_ADCCLKConfig(RCC_PCLK2_Div6);
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));
ADC_SoftwareStartConvCmd(ADC1,ENABLE);
if(ADC_GetFlagStatus(ADC1, ADC_FLAG_STRT))
LED_ON();
sdDataBuf[0] = ADC_GetConversionValue(ADC1);
ADC_SoftwareStartConvCmd(ADC1,ENABLE);
//while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC));
wdDataBuf[0] = ADC_GetConversionValue(ADC1);
这个是main函数中的代码,那个led灯一直不亮。两个数组中的数据都是0,如果增加while那一句,那么就死在那里了。
评分
查看全部评分
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;
这些都不是自动转换的啊,
评分
查看全部评分
OneWire_DS18b20温度传感器https://pan.baidu.com/s/1MR3zDKaRtSVWqksLoYhIIw
OneWire_DHT11温湿度传感器https://pan.baidu.com/s/1i_kxUCRP58s--Fb9ucuHPw
ADC实验https://pan.baidu.com/s/1DJQSBQ_-TwySt4xj0Xq1hw
可以看看,比对比对
评分
查看全部评分