mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-19 08:46:32 +00:00
parent
c33d5efd72
commit
f9403c8489
@ -367,13 +367,19 @@ void BacklogLoop(void) {
|
|||||||
|
|
||||||
void SleepDelay(uint32_t mseconds) {
|
void SleepDelay(uint32_t mseconds) {
|
||||||
if (mseconds) {
|
if (mseconds) {
|
||||||
for (uint32_t wait = 0; wait < mseconds; wait++) {
|
uint32_t wait = millis() + mseconds;
|
||||||
// ESP8266 does an optimistic_yield(1000) in Serial.available()
|
while (!TimeReached(wait)) {
|
||||||
// ESP32 does not so needs delay here
|
#ifdef ESP8266
|
||||||
#ifdef ESP32
|
if ((wait - millis()) > 10) { // ESP8266 does an optimistic_yield(10000) in Serial.available()
|
||||||
delay(1);
|
|
||||||
#endif
|
#endif
|
||||||
if (Serial.available()) { break; } // We need to service serial buffer ASAP as otherwise we get uart buffer overrun
|
if (Serial.available()) { return; } // We need to service serial buffer ASAP as otherwise we get uart buffer overrun
|
||||||
|
#ifdef ESP8266
|
||||||
|
} else {
|
||||||
|
#endif
|
||||||
|
delay(1);
|
||||||
|
#ifdef ESP8266
|
||||||
|
}
|
||||||
|
#endif // ESP8266
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
delay(0);
|
delay(0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user