Fix analogRead

analogRead does not like interrupts, so we introduce
analogRead_noISR(uint8_t pin) which disables global interrupts before
analogRead and then re-enables them