Quellcode durchsuchen

Enable MISO pullup during SD CMD0

Fix typo
Alex Voinea vor 1 Jahr
Ursprung
Commit
eb43d712df
1 geänderte Dateien mit 3 neuen und 0 gelöschten Zeilen
  1. 3 0
      Firmware/Sd2Card.cpp

+ 3 - 0
Firmware/Sd2Card.cpp

@@ -311,13 +311,16 @@ bool Sd2Card::init(uint8_t sckRateID) {
   // must supply min of 74 clock cycles with CS high.
   for (uint8_t i = 0; i < 10; i++) spiSend(0XFF);
 
+  WRITE(MISO, 1); // temporarily enable the MISO line pullup
   // command to go idle in SPI mode
   while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) {
     if (((uint16_t)_millis() - t0) > SD_INIT_TIMEOUT) {
+      WRITE(MISO, 0); // disable the MISO line pullup
       error(SD_CARD_ERROR_CMD0);
       goto fail;
     }
   }
+  WRITE(MISO, 0); // disable the MISO line pullup
 
   // send 0xFF until 0xFF received to give card some clock cycles
   t0 = (uint16_t)_millis();