Update adc.c

if you call read_ADC second time the ADMUX will not update propery. for example; you have called read_ADC(0x01) for the first time and for the second time if you call it with read_ADC(0x02), then the ADC will read the channel 3; because ADMUX = 0x41 after the first call now in the second call ADMUX |= 0x02 the resultant ADMUX =0x43; this code change will take care of it.