kopia lustrzana https://github.com/micropython/micropython
drivers/sdcard: Allow up to 5 retries to initialise SD card.
Apparently some cards need more than 2 retries. See issue #1482.pull/1497/head
rodzic
845b5a2a58
commit
24652228af
|
@ -51,10 +51,12 @@ class SDCard:
|
||||||
for i in range(16):
|
for i in range(16):
|
||||||
self.spi.send(0xff)
|
self.spi.send(0xff)
|
||||||
|
|
||||||
# CMD0: init card; should return R1_IDLE_STATE (allow 2 attempts)
|
# CMD0: init card; should return R1_IDLE_STATE (allow 5 attempts)
|
||||||
if self.cmd(0, 0, 0x95) != R1_IDLE_STATE:
|
for _ in range(5):
|
||||||
if self.cmd(0, 0, 0x95) != R1_IDLE_STATE:
|
if self.cmd(0, 0, 0x95) == R1_IDLE_STATE:
|
||||||
raise OSError("no SD card")
|
break
|
||||||
|
else:
|
||||||
|
raise OSError("no SD card")
|
||||||
|
|
||||||
# CMD8: determine card version
|
# CMD8: determine card version
|
||||||
r = self.cmd(8, 0x01aa, 0x87, 4)
|
r = self.cmd(8, 0x01aa, 0x87, 4)
|
||||||
|
|
Ładowanie…
Reference in New Issue