File tree 1 file changed +9
-0
lines changed
1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -138,6 +138,9 @@ uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) {
138
138
// wait for response
139
139
for (uint8_t i = 0 ; ((status_ = spiRec ()) & 0x80 ) && i != 0xFF ; i++)
140
140
;
141
+ #ifdef ESP8266
142
+ optimistic_yield (10000 );
143
+ #endif
141
144
return status_;
142
145
}
143
146
// ------------------------------------------------------------------------------
@@ -569,6 +572,9 @@ uint8_t Sd2Card::setSckRate(uint8_t sckRateID) {
569
572
uint8_t Sd2Card::waitNotBusy (uint16_t timeoutMillis) {
570
573
uint16_t t0 = millis ();
571
574
do {
575
+ #ifdef ESP8266
576
+ optimistic_yield (10000 );
577
+ #endif
572
578
if (spiRec () == 0XFF ) return true ;
573
579
}
574
580
while (((uint16_t )millis () - t0) < timeoutMillis);
@@ -579,6 +585,9 @@ uint8_t Sd2Card::waitNotBusy(uint16_t timeoutMillis) {
579
585
uint8_t Sd2Card::waitStartBlock (void ) {
580
586
uint16_t t0 = millis ();
581
587
while ((status_ = spiRec ()) == 0XFF ) {
588
+ #ifdef ESP8266
589
+ optimistic_yield (10000 );
590
+ #endif
582
591
if (((uint16_t )millis () - t0) > SD_READ_TIMEOUT) {
583
592
error (SD_CARD_ERROR_READ_TIMEOUT);
584
593
goto fail;
You can’t perform that action at this time.
0 commit comments