/** * @brief ADC module initialization * @param None. * @retval None. */ void ADC_Init(void) { ADC_SWReset(); /* reset ADC */ ADC_SetInputChannel(ADC_AN_0); ADC_SetRepeatMode(ENABLE); ADC_SetVref(ENABLE); delay(3000U); }
int analogRead(uint8_t pin) { #if defined( CORE_ANALOG_FIRST ) if ( pin >= CORE_ANALOG_FIRST ) pin -= CORE_ANALOG_FIRST; // allow for channel or pin numbers #endif // fix? Validate pin? ADC_SetVoltageReference( analog_reference ); ADC_SetInputChannel( pin ); ADC_StartConversion(); while( ADC_ConversionInProgress() ); return( ADC_GetDataRegister() ); }