From b2b0511da359bfc39334bbc06faf2006fe758d63 Mon Sep 17 00:00:00 2001 From: jgromes Date: Sun, 19 Jan 2020 13:25:16 +0100 Subject: [PATCH] [CC1101] Added missing calls to yield --- src/modules/CC1101/CC1101.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/modules/CC1101/CC1101.cpp b/src/modules/CC1101/CC1101.cpp index 3c2d8218..220957b9 100644 --- a/src/modules/CC1101/CC1101.cpp +++ b/src/modules/CC1101/CC1101.cpp @@ -92,10 +92,14 @@ int16_t CC1101::transmit(uint8_t* data, size_t len, uint8_t addr) { RADIOLIB_ASSERT(state); // wait for transmission start - while(!digitalRead(_mod->getIrq())); + while(!digitalRead(_mod->getIrq())) { + yield(); + } // wait for transmission end - while(digitalRead(_mod->getIrq())); + while(digitalRead(_mod->getIrq())) { + yield(); + } // set mode to standby standby(); @@ -112,10 +116,14 @@ int16_t CC1101::receive(uint8_t* data, size_t len) { RADIOLIB_ASSERT(state); // wait for sync word - while(!digitalRead(_mod->getIrq())); + while(!digitalRead(_mod->getIrq())) { + yield(); + } // wait for packet end - while(digitalRead(_mod->getIrq())); + while(digitalRead(_mod->getIrq())) { + yield(); + } // read packet data return(readData(data, len));