yes i have now done:
uint16_t adc_result (void) //return the current ADC value, the function will wait until the a conversion has ended.
{
uint16_t result;
bit_s(ADCSRA, BIT(ADSC)); //start a conversion
while( ADCSRA & (1<<ADSC)); // Wait until ADC conversion is complete..
result = ADC;
return result;
}
I think i meant to do it and then forgot.