2017-01-17 88 views
2

我可以使用此代碼ADCValue = HAL_ADC_GetValue(&hadc1);從ADC1_IN1通道讀取ADC值,但ADC1端口(您可以在圖片上看到)有很多通道。我如何讀取ADC1_IN2的值?如何在代碼中描述通道2?如何讀取多通道ADC值?

ADC1 port

+0

沒有什麼說的ST,當你問他們? –

+0

我不是ST的朋友,所以我沒有問他們。 – king

+1

http://visualgdb.com/tutorials/arm/stm32/adc/很好的教程 –

回答

2

您可以通過HAL_ADC_ConfigChannel功能設置ADC通道:

ADC_ChannelConfTypeDef sConfig; 
sConfig.Channel = ADC_CHANNEL_2; // ADC Channel 
sConfig.Rank = 1; //Rank (1-16) Rank: The rank in the regular group sequencer. 
sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES; //ADC Sampling Times 
sConfig.Offset = 0; // Reserved 

if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) { 
    //Error 
} 

Description of STM32F4xx HAL drivers

+0

GetValue()函數的用法如何? 'HAL_ADC_GetValue(&hadc1);' – king

+0

像上面一樣讀取上述代碼後的ADC值。 –