Izberite vmesnik SD za ESP32: 12 korakov (s slikami)
Izberite vmesnik SD za ESP32: 12 korakov (s slikami)
Anonim
Izberite vmesnik SD za ESP32
Izberite vmesnik SD za ESP32

Ta navodila kažejo nekaj o izbiri vmesnika SD za vaš projekt ESP32.

Korak: Vmesnik SD

V izvirni knjižnici Arduino SD vmesnik SD uporablja način prenosa vodila SD SPI.

SD imajo dejansko več načinov prenosa:

  • Način vodila SPI: ESP32 ima več kot 1 vodilo SPI, lahko ga prilagodite med inicializacijo
  • 1-bitni / 4-bitni način vodila SD: ESP32 nameni drugo knjižnico, imenovano SD_MMC, za izvajanje API-ja načina vodila SD
  • Način SD UHS-II: ESP32 ni podprt

Ref.:

www.arduino.cc/en/reference/SD

en.wikipedia.org/wiki/SD_card

docs.espressif.com/projects/esp-idf/en/lat…

Korak: Preslikava zatičev ESP32 GPIO

Tu je privzeto preslikavanje zatičev ESP32 GPIO:

Pin za kartico SD MicroSD pin Ime 4-bitno vodilo SD 1-bitno vodilo SD SPI vodilo (zatiči HSPI / VSPInative)
1 2 D3 13 - SS (15/5)
2 3 CMD 15 15 MOSI (13/23)
3 - VSS GND GND GND
4 4 VDD 3.3V 3.3V 3.3V
5 5 CLK 14 14 SCK (14/18)
6 6 VSS GND GND GND
7 7 D0 2 2 MISO (12/19)
8 8 D1 4 - -
9 1 D2 12 - -

Preslikave zatičev GPIO 1-bitnega / 4-bitnega vodila SD ni mogoče spremeniti.

Preprost klic SD_MMC begin () v začetni način 4-bitnega vodila SD:

SD_MMC.begin ();

Način 1-bitnega vodila SD lahko izberete pri metodi SD_MMC begin (), npr.

SD_MMC.begin ("/cdcard", res);

Med ustvarjanjem primerka SPIClass lahko izberete vodilo SPI (HSPI ali VSPI), npr.

SPIClass spi = SPIClass (HSPI);

Kot lahko vidite, 1-bitni / 4-bitni zatiči za izmenjavo pin vodila SD s HSPI, vendar preslikava zatičev kartice SD ni enaka. Torej, če je strojna oprema povezana v skladu z zemljevidom pin vodila SD, ne more neposredno uporabiti izvornih zatičev HSPI. Zatiče GPIO je mogoče preglasiti pri metodi SPIClass begin (), npr.

SPIClass spi = SPIClass (HSPI);

spi.begin (14 / * SCK * /, 2 / * MISO * /, 15 / * MOSI * /, 13 / * SS * /);

Knjižnica SD lahko preglasi tudi pin pin SS, vodilo SPI in frekvenco vodila pri metodi SD begin (), npr.

SD.začetek (13 / * SS * /, spi, 80000000);

3. korak: Zahteve za vlečenje SD

Če želite uporabiti 4-bitni način vodila SD, prosimo, da se držite upoštevanja zahtev za vlečenje navzgor ESP32 SD, zlasti:

  • Vlečni konflikti na GPIO13
  • Konflikti med Bootstrapom in SDIO na DAT2

Ref.:

docs.espressif.com/projects/esp-idf/en/lat…

4. korak: Različna strojna oprema

Različna strojna oprema
Različna strojna oprema

ESP32 ima veliko kompletov za razvijalce in razvojno ploščo, nekateri med njimi imajo vgrajeno režo za kartice MicroSD.

Tu je nekaj primerov v mojih rokah:

  • TTGO T-Watch, povezan je z zatiči GPIO 2, 13, 14 in 15 v skladu z načinom 1-bitnega vodila SD, zato lahko uporablja 1-bitni način vodila SD in način vodila SPI
  • Serija M5Stack je povezana z zatiči 4, 18, 19 in 23 GPIO v skladu z izvornimi zatiči VSPI, zato lahko uporablja privzete nastavitve knjižnice SD [SD.begin (4)]
  • ODROID-GO, povezan je z zatiči GPIO 18, 19, 22 in 23 v skladu z izvornimi zatiči VSPI, zato lahko uporablja privzete nastavitve knjižnice SD [SD.begin (22)]
  • ESP32-CAM, povezan je z zatiči GPIO 2, 4, 12, 13, 14 in 15 v skladu s 4-bitnim načinom vodila SD, zato lahko uporablja vse načine 4-bitnega / 1-bitnega vodila SD in način vodila SPI
  • Razvojna plošča TTGO T8, povezana z zatiči GPIO 2, 13, 14 in 15 v skladu z načinom 1-bitnega vodila SD, tako da lahko uporablja način 1-bitnega vodila SD in način vodila SPI

www.lilygo.cn/prod_view.aspx?Id=1123

docs.m5stack.com/

wiki.odroid.com/odroid_go/odroid_go

wiki.ai-thinker.com/esp32-cam

github.com/LilyGO/TTGO-T8-ESP32

5. korak: Odmična plošča za režo za SD kartico

Odmična plošča za režo za SD kartico
Odmična plošča za režo za SD kartico
Odmična plošča za režo za SD kartico
Odmična plošča za režo za SD kartico

Razvijalna plošča z vgrajeno režo za kartico MicroSD morda ne poveže vseh zatičev in večina ne more uporabljati načina 4-bitnega vodila SD. Posamezna odmična plošča za režo za kartico SD zagotavlja večjo prilagodljivost.

Hkrati pa številne odklopne plošče LCD razbijejo tudi režo za kartico SD polne velikosti. Vendar pa večina od njih prekine le zatiče načina SPI. Ni dovolj, da ga uporabljate kot način 4-bitnega vodila SD, vendar ga lahko še vedno uporabite kot način 1-bitnega vodila SD s tem preslikavo povezave:

LCD -> ESP32

SD_CS -> nič SD_MOSI -> 15 SD_MISO -> 2 SD_SCK -> 14

6. korak: Odklopite GPIO 2 med programom

Odklopite GPIO 2 Med programom
Odklopite GPIO 2 Med programom

Zaradi povezave v načinu 4-bitnega vodila SD ESP32 ni uspel vstopiti v programski način. Preden naložite nov program, ne pozabite odstraniti GPIO 2 s plošče za prekinitev reže za kartico SD DAT0.

Korak 7: Merilo uspešnosti

Merilo uspešnosti
Merilo uspešnosti
Merilo uspešnosti
Merilo uspešnosti

Za merilo uspešnosti sem napisal preprost program Arduino:

github.com/moononournation/ESP32_SD_Benchm…

Tu je strojna oprema za merilo uspešnosti:

ESP32

NodeMCU ESP32-32S V1.1 (WROOM-32)

Reža za SD kartico

Odklopna plošča za režo za kartico MicroSD

SD kartice

V roki imam SanDisk 8 GB MicroSD in stari 128 MB MicroSD.

8. korak: Primerjava 4-bitnega načina SD_MMC

SanDisk 8 GB MicroSD

20: 27: 46.000 -> Testni zapis /test_1k.bin

20: 27: 59.399 -> Uporabljena datoteka za pisanje: 13404 ms, 312.914368 KB/s 20: 27: 59.399 -> Testni zapis/test_2k.bin 20: 28: 17.248 -> Uporabljena datoteka za zapis: 17834 ms, 235.185822 KB/s 20: 28: 17.248 -> Test write /test_4k.bin 20: 28: 21.122 -> Uporabljena datoteka zapisa: 3873 ms, 1082.959961 KB /s 20: 28: 21.122 -> Test write /test_8k.bin 20: 28: 23.147 -> Uporabljena datoteka za pisanje: 2024 ms, 2072.284668 KB/s 20: 28: 23.147 -> Test write /test_16k.bin 20: 28: 27.237 -> Uporabljena datoteka za zapis: 4097 ms, 1023.750061 KB/s 20: 28: 27.237 -> Test write /test_32k.bin 20: 28: 30.088 -> Uporabljena datoteka za zapis: 2842 ms, 1475.828247 KB /s 20: 28: 30.088 -> Test write /test_64k.bin 20: 28: 31.882 -> Uporabljena datoteka za zapis: 1811 ms, 2316.015381 KB /s 20: 28: 31.882 -> Testno branje /test_1k.bin 20: 28: 35.422 -> Uporabljena datoteka branja: 3520 ms, 1191.563599 KB /s 20: 28: 35.422 -> Testno branje /test_2k.bin 20: 28: 38.813 -> Uporabljena datoteka branja: 3389 ms, 1237.622925 KB/s 20: 28: 38.813 -> Testno branje /test_4k.bin 20: 28: 42.273 -> Uporabljena datoteka branja: 3474 ms, 1207.341431 KB/s 20:28: 42.273 -> Testno branje /test_8k.bin 20: 28: 45.752 - > Uporabljena datoteka branja: 3487 ms, 1202.840210 KB/s 20: 28: 45.752 -> Testno branje /test_16k.bin 20: 28: 48.988 -> Uporabljena datoteka branja: 3213 ms, 1305.416748 KB/s 20: 28: 48.988 -> Testno branje /test_32k.bin 20: 28: 52.077 -> Uporabljena prebrana datoteka: 3093 ms, 1356.063354 KB /s 20: 28: 52.077 -> Testno branje /test_64k.bin 20: 28: 55.141 -> Prebrana datoteka: 3080 ms, 1361.786987 KB/s

Stari 128 MB MicroSD

20: 30: 43.309 -> E (274) sdmmc_sd: sdmmc_check_scr: send_scr vrnjeno 0x109

20: 30: 43.309 -> Vstavljanje kartice ni uspelo

9. korak: Primerjalnik 1-bitnega načina SD_MMC

SanDisk 8 GB MicroSD

20: 31: 45.194 -> Testni zapis /test_1k.bin

20: 31: 59.506 -> Uporabljena datoteka za zapis: 14325 ms, 292.796082 KB/s 20: 31: 59.506 -> Test write /test_2k.bin 20: 32: 17.686 -> Uporabljena datoteka za zapis: 18163 ms, 230.925735 KB/s 20: 32: 17.686 -> Test write /test_4k.bin 20: 32: 21.291 -> Uporabljena datoteka zapisa: 3611 ms, 1161.535278 KB /s 20: 32: 21.291 -> Test write /test_8k.bin 20: 32: 23.939 -> Uporabljena datoteka za pisanje: 2652 ms, 1581.562622 KB/s 20: 32: 23.939 -> Testni zapis/test_16k.bin 20: 32: 28.397 -> Uporabljena datoteka za zapis: 4448 ms, 942.964050 KB/s 20: 32: 28.397 -> Test write /test_32k.bin 20: 32: 31.835 -> Uporabljena datoteka za zapis: 3429 ms, 1223.185791 KB /s 20: 32: 31.835 -> Test write /test_64k.bin 20: 32: 33.882 -> Uporabljena datoteka za zapis: 2058 ms, 2038.048584 KB /s 20: 32: 33.882 -> Testno branje /test_1k.bin 20: 32: 38.031 -> Uporabljena datoteka branja: 4146 ms, 1011.650757 KB /s 20: 32: 38.031 -> Testno branje /test_2k.bin 20: 32: 42.062 -> Uporabljena datoteka branja: 4019 ms, 1043.618774 KB/s 20: 32: 42.062 -> Testno branje /test_4k.bin 20: 32: 46.170 -> Uporabljena datoteka branja: 4106 ms, 1021.506104 KB/s 20:32: 46.170 -> Testno branje /test_8k.bin 20: 32: 50.288 -> Uporabljena prebrana datoteka: 4121 ms, 1017.787903 KB/s 20: 32: 50.288 -> Testno branje /test_16k.bin 20: 32: 54.112 -> Uporabljena prebrana datoteka: 3840 ms, 1092.266724 KB/s 20: 32: 54.112 -> Test read /test_32k.bin 20: 32: 57.840 -> Uporabljena datoteka branja: 3739 ms, 1121.771606 KB /s 20: 32: 57.840 -> Test read /test_64k.bin 20: 33: 01.568 -> Uporabljena datoteka branja: 3711 ms, 1130,235474 KB/s

Stari 128 MB MicroSD

20: 33: 27.366 -> Testni zapis /test_1k.bin

20: 33: 42.386 -> Uporabljena datoteka zapisa: 15020 ms, 279.247925 KB/s 20: 33: 42.386 -> Test write /test_2k.bin 20: 33: 57.927 -> Uporabljena datoteka zapisa: 15515 ms, 270.338654 KB/s 20: 33: 57.927 -> Test write /test_4k.bin 20: 34: 13.108 -> Uporabljena datoteka zapisa: 15195 ms, 276.031860 KB /s 20: 34: 13.108 -> Test write /test_8k.bin 20: 34: 28.162 -> Uporabljena datoteka za pisanje: 15048 ms, 278.728333 KB/s 20: 34: 28.162 -> Test write /test_16k.bin 20: 34: 43.287 -> Uporabljena datoteka za zapis: 15142 ms, 276.998016 KB/s 20: 34: 43.287 -> Test write /test_32k.bin 20: 34: 58.278 -> Uporabljena datoteka za zapis: 14964 ms, 280.292969 KB /s 20: 34: 58.278 -> Test write /test_64k.bin 20: 35: 13.370 -> Uporabljena datoteka za zapis: 15101 ms, 277.750092 KB /s 20: 35: 13.370 -> Testno branje /test_1k.bin 20: 35: 17.563 -> Uporabljena datoteka branja: 4197 ms, 999.357666 KB /s 20: 35: 17.563 -> Testno branje /test_2k.bin 20: 35: 21.746 -> Uporabljena datoteka branja: 4191 ms, 1000.788330 KB/s 20: 35: 21.746 -> Testno branje /test_4k.bin 20: 35: 25.942 -> Uporabljena datoteka branja: 4181 ms, 1003.182007 KB/s 20:35: 25.942 -> Testno branje /test_8k.bin 20: 35: 30.101 -> Uporabljena prebrana datoteka: 4176 ms, 1004.383118 KB/s 20: 35: 30.101 -> Testno branje /test_16k.bin 20: 35: 34.279 -> Uporabljena prebrana datoteka: 4174 ms, 1004.864380 KB/s 20: 35: 34.279 -> Test read /test_32k.bin 20: 35: 38.462 -> Uporabljena datoteka branja: 4173 ms, 1005.105225 KB /s 20: 35: 38.462 -> Test read /test_64k.bin 20: 35: 42.612 -> Uporabljena datoteka branja: 4173 ms, 1005.105225 KB/s

Korak: Način SD SPI pri merilu vodila HSPI Bus

SanDisk 8 GB MicroSD

08: 41: 19,703 -> Testni zapis /test_1k.bin

08: 41: 53.458 -> Uporabljena datoteka za zapis: 33743 ms, 124.301453 KB/s 08: 41: 53.458 -> Test write /test_2k.bin 08: 42: 10.000 -> Uporabljena datoteka za zapis: 16540 ms, 253.585495 KB/s 08: 42: 10.000 -> Test write /test_4k.bin 08: 42: 17.269 -> Uporabljena datoteka zapisa: 7298 ms, 574.719666 KB /s 08: 42: 17.308 -> Test write /test_8k.bin 08: 42: 22.640 -> Uporabljena datoteka za pisanje: 5345 ms, 784.715454 KB/s 08: 42: 22.640 -> Test write /test_16k.bin 08: 42: 32.285 -> Uporabljena datoteka za zapis: 9662 ms, 434.103088 KB/s 08: 42: 32.285 -> Test write /test_32k.bin 08: 42: 36.659 -> Uporabljena datoteka za zapis: 4355 ms, 963.100830 KB /s 08: 42: 36.659 -> Test write /test_64k.bin 08: 42: 39.594 -> Zapis uporabljene datoteke: 2949 ms, 1422.280151 KB /s 08: 42: 39.594 -> Testno branje /test_1k.bin 08: 42: 44.774 -> Uporabljena datoteka branja: 5192 ms, 807.839783 KB /s 08: 42: 44.774 -> Testno branje /test_2k.bin 08: 42: 49.969 -> Uporabljena datoteka branja: 5189 ms, 808.306824 KB/s 08: 42: 49.969 -> Testno branje /test_4k.bin 08: 42: 55.123 -> Uporabljena datoteka branja: 5161 ms, 812.692139 KB/s 08:42: 55.158 -> Testno branje /test_8k.bin 08: 43: 00.300 -> Beri uporabljena datoteka: 5176 ms, 810.336914 KB/s 08: 43: 00.334 -> Testno branje /test_16k.bin 08: 43: 05.277 -> Uporabljena datoteka branja: 4948 ms, 847.676636 KB/s 08: 43: 05.277 -> Testno branje /test_32k.bin 08: 43: 10.028 -> Uporabljena datoteka branja: 4773 ms, 878.756348 KB /s 08: 43: 10.028 -> Testno branje /test_64k.bin 08: 43: 14.760 -> Uporabljena datoteka branja: 4731 ms, 886.557617 KB/s

Stari 128 MB MicroSD

08: 43: 47.777 -> Testni zapis /test_1k.bin

08: 44: 04.148 -> Uporabljena datoteka za pisanje: 16390 ms, 255.906281 KB/s 08: 44: 04.183 -> Test write /test_2k.bin 08: 44: 20.648 -> Uporabljena datoteka za zapis: 16494 ms, 254.292709 KB/s 08: 44: 20.648 -> Test write /test_4k.bin 08: 44: 36.674 -> Uporabljena datoteka zapisa: 16001 ms, 262.127625 KB /s 08: 44: 36.674 -> Test write /test_8k.bin 08: 44: 52.849 -> Uporabljena datoteka za pisanje: 16175 ms, 259.307831 KB/s 08: 44: 52.849 -> Test write /test_16k.bin 08: 45: 09.225 -> Uporabljena datoteka za zapis: 16397 ms, 255.797043 KB/s 08: 45: 09.225 -> Test write /test_32k.bin 08: 45: 25.363 -> Uporabljena datoteka za pisanje: 16143 ms, 259.821838 KB /s 08: 45: 25.397 -> Test write /test_64k.bin 08: 45: 41.632 -> Uporabljena datoteka za pisanje: 16263 ms, 257.904694 KB /s 08: 45: 41.632 -> Testno branje /test_1k.bin 08: 45: 46.488 -> Uporabljena datoteka branja: 4856 ms, 863.736389 KB /s 08: 45: 46.488 -> Testno branje /test_2k.bin 08: 45: 51.332 -> Uporabljena datoteka branja: 4840 ms, 866.591736 KB/s 08: 45: 51.332 -> Testno branje /test_4k.bin 08: 45: 56.163 -> Uporabljena datoteka branja: 4834 ms, 867.667358 KB/s 08:45: 56.163 -> Testno branje /test_8k.bin 08: 46: 00.998 -> R uporabljena datoteka ead: 4827 ms, 868.925598 KB/s 08: 46: 00.998 -> Testno branje /test_16k.bin 08: 46: 05.808 -> Uporabljena datoteka branja: 4825 ms, 869.285828 KB/s 08: 46: 05.843 -> Test read /test_32k.bin 08: 46: 10.637 -> Uporabljena datoteka branja: 4824 ms, 869.466003 KB /s 08: 46: 10.637 -> Test read /test_64k.bin 08: 46: 15.478 -> Uporabljena datoteka branja: 4825 ms, 869,285828 KB/s

Korak 11: Način SD SPI pri merilu VSPI Bus Benchmark

SanDisk 8 GB MicroSD

08: 54: 17.412 -> Testni zapis /test_1k.bin

08: 54: 48.398 -> Uporabljena datoteka za zapis: 30994 ms, 135.326324 KB/s 08: 54: 48.398 -> Testni zapis/test_2k.bin 08: 55: 06.079 -> Uporabljena datoteka za zapis: 17677 ms, 237.274658 KB/s 08: 55: 06.079 -> Test write /test_4k.bin 08: 55: 13.357 -> Uporabljena datoteka zapisa: 7274 ms, 576.615906 KB /s 08: 55: 13.357 -> Test write /test_8k.bin 08: 55: 18.691 -> Uporabljena datoteka za pisanje: 5323 ms, 787.958679 KB/s 08: 55: 18.691 -> Test write /test_16k.bin 08: 55: 28.336 -> Uporabljena datoteka za zapis: 9669 ms, 433.788818 KB/s 08: 55: 28.336 -> Test write /test_32k.bin 08: 55: 32.646 -> Uporabljena datoteka za zapis: 4309 ms, 973.382202 KB /s 08: 55: 32.646 -> Test write /test_64k.bin 08: 55: 35.551 -> Uporabljena datoteka za zapis: 2915 ms, 1438.869263 KB /s 08: 55: 35.584 -> Testno branje /test_1k.bin 08: 55: 40.745 -> Uporabljena datoteka branja: 5183 ms, 809.242554 KB /s 08: 55: 40.745 -> Testno branje /test_2k.bin 08: 55: 45.916 -> Uporabljena datoteka branja: 5182 ms, 809.398682 KB/s 08: 55: 45.949 -> Testno branje /test_4k.bin 08: 55: 51.091 -> Uporabljena datoteka branja: 5162 ms, 812.534668 KB/s 08:55: 51.091 -> Testno branje /test_8k.bin 08: 55: 56.257 -> Beri uporabljena datoteka: 5177 ms, 810.180420 KB/s 08: 55: 56.293 -> Testno branje /test_16k.bin 08: 56: 01.244 -> Uporabljena prebrana datoteka: 4956 ms, 846.308289 KB/s 08: 56: 01.244 -> Testno branje /test_32k.bin 08: 56: 06.006 -> Uporabljena datoteka branja: 4764 ms, 880.416443 KB /s 08: 56: 06.006 -> Testno branje /test_64k.bin 08: 56: 10.716 -> Uporabljena datoteka branja: 4728 ms, 887.120117 KB/s

Stari 128 MB MicroSD

08: 51: 01.939 -> Testni zapis /test_1k.bin

08: 51: 18.358 -> Uporabljena datoteka za pisanje: 16422 ms, 255.407623 KB/s 08: 51: 18.358 -> Test write /test_2k.bin 08: 51: 34.529 -> Uporabljena datoteka za pisanje: 16173 ms, 259.339874 KB/s 08: 51: 34.529 -> Test write /test_4k.bin 08: 51: 50.911 -> Uporabljena datoteka zapisa: 16372 ms, 256.187653 KB /s 08: 51: 50.911 -> Test write /test_8k.bin 08: 52: 07.056 -> Uporabljena datoteka za zapisovanje: 16137 ms, 259.918457 KB/s 08: 52: 07.056 -> Testni zapis/test_16k.bin 08: 52: 23.383 -> Uporabljena datoteka za zapis: 16351 ms, 256.516663 KB/s 08: 52: 23.383 -> Test write /test_32k.bin 08: 52: 39.533 -> Uporabljena datoteka za zapis: 16128 ms, 260.063507 KB /s 08: 52: 39.533 -> Test write /test_64k.bin 08: 52: 55.764 -> Uporabljena datoteka za zapis: 16250 ms, 258.111023 KB /s 08: 52: 55.764 -> Testno branje /test_1k.bin 08: 53: 00.645 -> Uporabljena datoteka branja: 4855 ms, 863.914307 KB /s 08: 53: 00.645 -> Testno branje /test_2k.bin 08: 53: 05.459 -> Uporabljena prebrana datoteka: 4839 ms, 866.770813 KB/s 08: 53: 05.459 -> Testno branje /test_4k.bin 08: 53: 10.306 -> Uporabljena prebrana datoteka: 4833 ms, 867.846863 KB/s 08:53: 10.306 -> Testno branje /test_8k.bin 08: 53: 15.127 -> R Uporabljena datoteka ead: 4827 ms, 868.925598 KB/s 08: 53: 15.127 -> Testno branje /test_16k.bin 08: 53: 19.963 -> Uporabljena datoteka branja: 4826 ms, 869.105652 KB/s 08: 53: 19.963 -> Test read /test_32k.bin 08: 53: 24.758 -> Prebrana uporabljena datoteka: 4824 ms, 869.466003 KB /s 08: 53: 24.792 -> Test read /test_64k.bin 08: 53: 29.592 -> Prebrana datoteka: 4824 ms, 869,466003 KB/s

12. korak: Zaokrožite

Način 4-bitnega vodila SD ima najboljše zmogljivosti, 1-bitni način vodila SD je približno 20% počasnejši, način SPI pa približno 50% počasnejši. Eden glavnih razlogov je, da plast protokola SD_MMC ne izvaja nobenega zaklepanja, vendar SPI. Način 4-bitnega vodila SD ima dvojne podatkovne linije, zato teoretično podvoji hitrost. Toda moj stari MicroSD ne podpira načina 4-bitnega vodila SD.

V večini primerov bom priporočil način 1-bitnega vodila SD, ker:

  • dobra izvedba
  • boljša združljivost s kartico SD
  • ohlapnejše zahteve po vlečenju SD
  • potrebni so samo 3 zatiči GPIO
  • manjša konfiguracija kode
  • ta način lahko uporabljajo številni kompleti za razvijalce, plošča za razvijalce in odbojna plošča

Priporočena: