ESP8266: yield() immediately before & after interrupt disablage

This commit is contained in:
Phillip Burgess 2019-02-14 09:27:28 -08:00
parent 7cec0cb06d
commit 9bf12551d8

7
DHT.h
View File

@ -67,6 +67,9 @@ class DHT {
class InterruptLock { class InterruptLock {
public: public:
InterruptLock() { InterruptLock() {
#if defined(ESP8266)
yield();
#endif
#if !defined(ARDUINO_ARCH_NRF52) #if !defined(ARDUINO_ARCH_NRF52)
noInterrupts(); noInterrupts();
#endif #endif
@ -74,9 +77,11 @@ class InterruptLock {
~InterruptLock() { ~InterruptLock() {
#if !defined(ARDUINO_ARCH_NRF52) #if !defined(ARDUINO_ARCH_NRF52)
interrupts(); interrupts();
#endif
#if defined(ESP8266)
yield();
#endif #endif
} }
}; };
#endif #endif