HAL_ADC_Init(&hadc);
/**Configure for the selected ADC regular channel to be converted.
*/
sConfig.Channel = ADC_CHANNEL_2;
sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
HAL_ADC_ConfigChannel(&hadc, &sConfig);
用到通道2 通道7
中断中两个通道互相切换
HAL_ADC_Init(&hadc);
/**Configure for the selected ADC regular channel to be converted.
*/
sConfig.Channel = ADC_CHANNEL_7;
sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
HAL_ADC_ConfigChannel(&hadc, &sConfig);
可以了
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* AdcHandle)
{
/* Get the converted value of regular channel */
uwADCxConvertedValue = HAL_ADC_GetValue(AdcHandle);
HAL_ADC_Stop_IT(&hadc);
if(CH_dp==0)
{
CH_dp=1;
ADC1->CHSELR = ADC_CHANNEL_2;
}
else
{
CH_dp=0;
ADC1->CHSELR = ADC_CHANNEL_7;
}
HAL_ADC_Start_IT(&hadc);
HAL_UART_Transmit_IT(&huart1, (uint8_t*)uwADCxConvertedValue, 4);
}
评分
查看全部评分
我还怀疑是设置问题
HAL_ADC_Init(&hadc);
/**Configure for the selected ADC regular channel to be converted.
*/
sConfig.Channel = ADC_CHANNEL_2;
sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
HAL_ADC_ConfigChannel(&hadc, &sConfig);
用到通道2 通道7
中断中两个通道互相切换
HAL_ADC_Init(&hadc);
/**Configure for the selected ADC regular channel to be converted.
*/
sConfig.Channel = ADC_CHANNEL_7;
sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
HAL_ADC_ConfigChannel(&hadc, &sConfig);
你可以参考下,安大师的例程。。。
https://www.stmcu.org.cn/module/foru ... =%E5%AE%89%E8%87%A3