X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=tos%2Fchips%2Fatm128%2FMcuSleepC.nc;h=badcfed01b1ccf739cdde9d3ce25380b057d6c6d;hb=560bc5db8469b8e254e6f74109284a08a0fccfb5;hp=6418f739e869182a5d013d5a812a9db2b419ce29;hpb=b85b5fa257ff631bce3fabf0c0608742334aab11;p=tinyos-2.x.git diff --git a/tos/chips/atm128/McuSleepC.nc b/tos/chips/atm128/McuSleepC.nc index 6418f739..badcfed0 100644 --- a/tos/chips/atm128/McuSleepC.nc +++ b/tos/chips/atm128/McuSleepC.nc @@ -74,14 +74,15 @@ implementation { return ATM128_POWER_IDLE; } // SPI (Radio stack on mica/micaZ - else if (bit_is_set(SPCR, SPIE)) { + else if (bit_is_set(SPCR, SPE)) { return ATM128_POWER_IDLE; } - // UARTs are active - else if (UCSR0B & (1 << TXCIE | 1 << RXCIE)) { // UART + // A UART is active + else if ((UCSR0B | UCSR1B) & (1 << TXCIE | 1 << RXCIE)) { // UART return ATM128_POWER_IDLE; } - else if (UCSR1B & (1 << TXCIE | 1 << RXCIE)) { // UART + // I2C (Two-wire) is active + else if (bit_is_set(TWCR, TWEN)){ return ATM128_POWER_IDLE; } // ADC is enabled