diff --git a/wiringPi/wiringPi.c b/wiringPi/wiringPi.c index 50523dd..4537192 100644 --- a/wiringPi/wiringPi.c +++ b/wiringPi/wiringPi.c @@ -2300,10 +2300,10 @@ int digitalRead (int pin) } if (ISRP1MODEL) { - switch(gpio[2*pin] & RP1_STATUS_LEVEL_MASK) { - default: // 11 or 00 not allowed, give LOW! - case RP1_STATUS_LEVEL_LOW: return LOW ; - case RP1_STATUS_LEVEL_HIGH: return HIGH ; + if ((gpio[2*pin] & RP1_STATUS_LEVEL_MASK) == RP1_STATUS_LEVEL_HIGH) { + return HIGH; + } else { // 11 or 00 not allowed, give LOW! + return LOW; } } else { if ((*(gpio + gpioToGPLEV [pin]) & (1 << (pin & 31))) != 0)