תוכן עניינים:

בחר ממשק SD עבור ESP32: 12 שלבים (עם תמונות)
בחר ממשק SD עבור ESP32: 12 שלבים (עם תמונות)

וִידֵאוֹ: בחר ממשק SD עבור ESP32: 12 שלבים (עם תמונות)

וִידֵאוֹ: בחר ממשק SD עבור ESP32: 12 שלבים (עם תמונות)
וִידֵאוֹ: Home Assistant - חבר את קלטת הכתובת WS2812B דרך ESP8266 עם קושחת WLED 2024, נוֹבֶמבֶּר
Anonim
בחר ממשק SD עבור ESP32
בחר ממשק SD עבור ESP32

מדריכים אלה מראים משהו על בחירת ממשק SD לפרויקט ESP32 שלך.

שלב 1: ממשק SD

בספריית Arduino SD המקורית, ממשק SD משתמש במצב העברת אוטובוס SD SPI.

ל- SD יש למעשה יותר מצב העברה:

  • מצב אוטובוס SPI: ל- ESP32 יש יותר מאוטובוס SPI אחד, הוא יכול להתאים אישית תוך אתחול
  • מצב אוטובוס SD של 1 סיביות / 4 סיביות: ESP32 מקדיש ספרייה נוספת בשם SD_MMC ליישום ה- API של מצב אוטובוס SD
  • מצב SD UHS-II: אין תמיכה ב- ESP32

הפניה:

www.arduino.cc/en/reference/SD

en.wikipedia.org/wiki/SD_card

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

שלב 2: מיפוי סיכות ESP32 GPIO

להלן מיפוי סיכות ברירת המחדל של ESP32 GPIO:

סיכת כרטיס SD סיכת MicroSD שֵׁם אוטובוס SD של 4 סיביות אוטובוס SD של 1 סיביות אוטובוס SPI (סיכות HSPI / VSP אינטיביות)
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 - -

לא ניתן לשנות את מיפוי סיכות GPIO של אוטובוס SD של 1 סיביות / 4 סיביות.

שיחה פשוטה SD_MMC מתחילה () למצב האוטובוס הראשוני של 4 סיביות SD:

SD_MMC.begin ();

ניתן לבחור מצב אוטובוס SD של 1 סיביה בשיטת SD_MMC begin (), למשל

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

ניתן לבחור את אוטובוס SPI (HSPI או VSPI) תוך יצירת מופע SPIClass, למשל

SPIClass spi = SPIClass (HSPI);

כפי שאתה יכול לראות סיכות אוטובוס SD של 1 סיביות / 4 סיביות עם סיכות שיתוף עם HSPI אך מיפוי סיכות כרטיס SD אינו זהה. אז אם החומרה מחוברת לפי מפת סיכות האוטובוסים של SD, היא לא יכולה להשתמש ישירות בסיכות HSPI מקוריות. ניתן לעקוף את סיכות GPIO בשיטת SPIClass begin (), למשל

SPIClass spi = SPIClass (HSPI);

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

וגם ספריית SD יכולה לעקוף את סיכת ה- SS, אוטובוס SPI ותדר האוטובוסים בשיטת SD begin (), למשל

SD.begin (13 / * SS * /, spi, 80000000);

שלב 3: דרישות משיכה של SD

אם ברצונך להשתמש במצב אוטובוס SD של 4 סיביות, נא לדבוק בדרישות המשיכה של ESP32 SD, במיוחד:

  • סכסוכים נפתחים ב- GPIO13
  • התנגשויות בין Bootstrap ו- SDIO ב- DAT2

הפניה:

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

שלב 4: חומרה מגוונת

חומרה מגוונת
חומרה מגוונת

ל- ESP32 יש טונות של ערכת dev ולוח dev, לחלקן יש חריץ לכרטיס MicroSD מובנה.

להלן כמה דוגמאות בידי:

  • TTGO T-Watch, הוא מחובר לסיכות GPIO 2, 13, 14 ו -15 לפי מצב אוטובוס SD של 1 סיביות, כך שהוא יכול להשתמש במצב 1-bit SD של אוטובוס ו- SPI באוטובוס
  • סדרת M5Stack, היא התחברה לסיכות GPIO 4, 18, 19 ו- 23 לפי פינים מקומיים של VSPI, כך שהיא יכולה להשתמש בהגדרות ברירת מחדל של ספריית SD [SD.begin (4)]
  • ODROID-GO, הוא התחבר לסיכות GPIO 18, 19, 22 ו -23 לפי פינים מקוריים של VSPI, כך שהוא יכול להשתמש בהגדרות ברירת המחדל של ספריית SD [SD.begin (22)]
  • ESP32-CAM, הוא מחובר לסיכות GPIO 2, 4, 12, 13, 14 ו -15 בהתאם למצב אוטובוס SD של 4 סיביות, כך שהוא יכול להשתמש בכל מצב אוטובוס SD של 4 סיביות / 1 סיביות ומצב אוטובוס SPI
  • לוח TTGO T8 dev, הוא מחובר לסיכות GPIO 2, 13, 14 ו -15 לפי מצב אוטובוס SD של 1 סיביות, כך שהוא יכול להשתמש במצב 1-bit SD באוטובוס ובמצב אוטובוס 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: לוח פריצת כרטיסי SD

לוח פריצת כרטיס SD
לוח פריצת כרטיס SD
לוח פריצת כרטיס SD
לוח פריצת כרטיס SD

לוח Dev עם חריץ כרטיס MicroSD מובנה עשוי שלא לחבר את כל הפינים ורובם אינם יכולים להשתמש במצב אוטובוס SD של 4 סיביות. לוח פריצה של כרטיס חריץ לכרטיס SD מספק גמישות טובה יותר.

יחד עם זאת, לוח פריצת LCD רבים פורץ גם חריץ לכרטיס SD בגודל מלא. עם זאת, רובם פורצים רק את סיכות מצב SPI. זה לא מספיק לשימוש כמצב אוטובוס SD של 4 סיביות, אך אתה עדיין יכול להשתמש בו כמצב של אוטובוס SD של סיביות אחת על ידי מיפוי חיבור זה:

LCD -> ESP32

SD_CS -> אפס SD_MOSI -> 15 SD_MISO -> 2 SD_SCK -> 14

שלב 6: נתק את GPIO 2 בזמן התוכנית

נתק את GPIO 2 בזמן התוכנית
נתק את GPIO 2 בזמן התוכנית

חיבור מצב אוטובוס SD של 4 סיביות גורם לכך ש- ESP32 לא הצליח להיכנס למצב התוכנית. זכור לנתק את GPIO 2 מלוח פריצת כרטיס ה- SD DAT0 לפני העלאת תוכנית חדשה.

שלב 7: אמת מידה

אמת מידה
אמת מידה
אמת מידה
אמת מידה

כתבתי תוכנית ארדואינו פשוטה למדד:

github.com/moononournation/ESP32_SD_Benchm…

להלן החומרה לאמות המידה:

ESP32

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

חריץ לכרטיס SD

לוח פריצה של כרטיס MicroSD

כרטיס זיכרון

יש לי MicroSD של SanDisk בנפח 8 ג'יגה -בייט ו- MicroSD ישן של 128 מגה -בתים ביד.

שלב 8: SD_MMC אמת מידה של 4 סיביות

SanDisk 8 GB MicroSD

20: 27: 46.000 -> כתיבת מבחן /test_1k.bin

20: 27: 59.399 -> כתוב קובץ בשימוש: 13404 ms, 312.914368 KB/s 20: 27: 59.399 -> כתיבת בדיקה/test_2k.bin 20: 28: 17.248 -> כתיבת קובץ בשימוש: 17834 ms, 235.185822 KB/s 20: 28: 17.248 -> כתיבת מבחן /test_4k.bin 20: 28: 21.122 -> כתיבת קובץ בשימוש: 3873 ms, 1082.959961 KB /s 20: 28: 21.122 -> כתיבת בדיקה /test_8k.bin 20: 28: 23.147 -> כתוב קובץ בשימוש: 2024 ms, 2072.284668 KB/s 20: 28: 23.147 -> בדיקת כתיבה/test_16k.bin 20: 28: 27.237 -> כתיבת קובץ בשימוש: 4097 ms, 1023.750061 KB/s 20: 28: 27.237 -> Test לכתוב /test_32k.bin 20: 28: 30.088 -> כתיבת קובץ בשימוש: 2842 ms, 1475.828247 KB /s 20: 28: 30.088 -> כתיבת מבחן /test_64k.bin 20: 28: 31.882 -> כתיבת קובץ בשימוש: 1811 ms, 2316.015381 KB /s 20: 28: 31.882 -> קריאת בדיקה /test_1k.bin 20: 28: 35.422 -> קובץ קריאה בשימוש: 3520 ms, 1191.563599 KB /s 20: 28: 35.422 -> קריאת בדיקה /test_2k.bin 20: 28: 38.813 -> קריאת קובץ בשימוש: 3389 ms, 1237.622925 KB/s 20: 28: 38.813 -> בדיקת קריאה/test_4k.bin 20: 28: 42.273 -> קריאת קובץ בשימוש: 3474 ms, 1207.341431 KB/s 20:28: 42.273 -> בדיקת קריאה /test_8k.bin 20: 28: 45.752 - > קובץ קריאה בשימוש: 3487 ms, 1202.840210 KB/s 20: 28: 45.752 -> קריאת בדיקה/test_16k.bin 20: 28: 48.988 -> קריאת קובץ בשימוש: 3213 ms, 1305.416748 KB/s 20: 28: 48.988 -> קריאת בדיקה /test_32k.bin 20: 28: 52.077 -> קריאת קובץ בשימוש: 3093 ms, 1356.063354 KB /s 20: 28: 52.077 -> קריאת בדיקה /test_64k.bin 20: 28: 55.141 -> קריאת קובץ בשימוש: 3080 ms, 1361.786987 KB/s

128 MB ישן MicroSD

20: 30: 43.309 -> E (274) sdmmc_sd: sdmmc_check_scr: send_scr החזיר 0x109

20:30: 43.309 -> הר הכרטיס נכשל

שלב 9: SD_MMC אמת מידה של סיביות

SanDisk 8 GB MicroSD

20: 31: 45.194 -> כתיבת מבחן /test_1k.bin

20: 31: 59.506 -> כתוב קובץ בשימוש: 14325 ms, 292.796082 KB/s 20: 31: 59.506 -> כתיבת בדיקה/test_2k.bin 20: 32: 17.686 -> כתיבת קובץ בשימוש: 18163 ms, 230.925735 KB/s 20: 32: 17.686 -> כתיבת בדיקה /test_4k.bin 20: 32: 21.291 -> כתיבת קובץ בשימוש: 3611 ms, 1161.535278 KB /s 20: 32: 21.291 -> כתיבת בדיקה /test_8k.bin 20: 32: 23.939 -> כתוב קובץ בשימוש: 2652 ms, 1581.562622 KB/s 20: 32: 23.939 -> מבחן כתיבה/test_16k.bin 20: 32: 28.397 -> כתיבת קובץ בשימוש: 4448 ms, 942.964050 KB/s 20: 32: 28.397 -> Test לכתוב /test_32k.bin 20: 32: 31.835 -> כתיבת קובץ בשימוש: 3429 ms, 1223.185791 KB /s 20: 32: 31.835 -> Test write /test_64k.bin 20: 32: 33.882 -> כתיבת קובץ בשימוש: 2058 ms, 2038.048584 KB /s 20: 32: 33.882 -> קריאת בדיקה /test_1k.bin 20: 32: 38.031 -> קריאת קובץ בשימוש: 4146 ms, 1011.650757 KB /s 20: 32: 38.031 -> קריאת בדיקה /test_2k.bin 20: 32: 42.062 -> קריאת קובץ בשימוש: 4019 ms, 1043.618774 KB/s 20: 32: 42.062 -> בדיקת קריאה/test_4k.bin 20: 32: 46.170 -> קריאת קובץ בשימוש: 4106 ms, 1021.506104 KB/s 20:32: 46.170 -> בדיקת קריאה /test_8k.bin 20: 32: 50.288 -> השתמש בקובץ קריאה: 4121 ms, 1017.787903 KB/s 20: 32: 50.288 -> קריאת בדיקה/test_16k.bin 20: 32: 54.112 -> קריאת קובץ בשימוש: 3840 ms, 1092.266724 KB/s 20: 32: 54.112 -> Test read /test_32k.bin 20: 32: 57.840 -> קרא קובץ בשימוש: 3739 ms, 1121.771606 KB /s 20: 32: 57.840 -> Test read /test_64k.bin 20: 33: 01.568 -> קרא קובץ בשימוש: 3711 ms, 1130.235474 KB/s

128 MB ישן MicroSD

20: 33: 27.366 -> כתיבת מבחן /test_1k.bin

20: 33: 42.386 -> כתוב קובץ בשימוש: 15020 ms, 279.247925 KB/s 20: 33: 42.386 -> כתיבת בדיקה/test_2k.bin 20: 33: 57.927 -> כתיבת קובץ בשימוש: 15515 ms, 270.338654 KB/s 20: 33: 57.927 -> כתיבת מבחן /test_4k.bin 20: 34: 13.108 -> כתיבת קובץ בשימוש: 15195 ms, 276.031860 KB /s 20: 34: 13.108 -> כתיבת בדיקה /test_8k.bin 20: 34: 28.162 -> כתוב קובץ בשימוש: 15048 ms, 278.728333 KB/s 20: 34: 28.162 -> בדיקת כתיבה/test_16k.bin 20: 34: 43.287 -> כתיבת קובץ בשימוש: 15142 ms, 276.998016 KB/s 20: 34: 43.287 -> Test לכתוב /test_32k.bin 20: 34: 58.278 -> כתיבת קובץ בשימוש: 14964 ms, 280.292969 KB /s 20: 34: 58.278 -> כתיבת מבחן /test_64k.bin 20: 35: 13.370 -> כתיבת קובץ בשימוש: 15101 ms, 277.750092 KB /s 20: 35: 13.370 -> קריאת בדיקה /test_1k.bin 20: 35: 17.563 -> קובץ קריאה בשימוש: 4197 ms, 999.357666 KB /s 20: 35: 17.563 -> קריאת בדיקה /test_2k.bin 20: 35: 21.746 -> קריאת קובץ בשימוש: 4191 ms, 1000.788330 KB/s 20: 35: 21.746 -> קריאת בדיקה/test_4k.bin 20: 35: 25.942 -> קריאת קובץ בשימוש: 4181 ms, 1003.182007 KB/s 20:35: 25.942 -> בדיקת קריאה /test_8k.bin 20: 35: 30.101 -> קובץ קריאה בשימוש: 4176 ms, 1004.383118 KB/s 20: 35: 30.101 -> בדיקת קריאה/test_16k.bin 20: 35: 34.279 -> קריאת קובץ בשימוש: 4174 ms, 1004.864380 KB/s 20: 35: 34.279 -> Test read /test_32k.bin 20: 35: 38.462 -> קרא קובץ בשימוש: 4173 ms, 1005.105225 KB /s 20: 35: 38.462 -> Test read /test_64k.bin 20: 35: 42.612 -> קרא קובץ בשימוש: 4173 ms, 1005.105225 KB/s

שלב 10: מצב SPI SD במדד האוטובוסים של HSPI

SanDisk 8 GB MicroSD

08: 41: 19.703 -> כתיבת מבחן /test_1k.bin

08: 41: 53.458 -> כתוב קובץ בשימוש: 33743 ms, 124.301453 KB/s 08: 41: 53.458 -> כתיבת בדיקה/test_2k.bin 08: 42: 10.000 -> כתיבת קובץ בשימוש: 16540 ms, 253.585495 KB/s 08: 42: 10.000 -> כתיבת מבחן /test_4k.bin 08: 42: 17.269 -> כתיבת קובץ בשימוש: 7298 ms, 574.719666 KB /s 08: 42: 17.308 -> כתיבת בדיקה /test_8k.bin 08: 42: 22.640 -> כתוב קובץ בשימוש: 5345 ms, 784.715454 KB/s 08: 42: 22.640 -> בדיקת כתיבה/test_16k.bin 08: 42: 32.285 -> כתיבת קובץ בשימוש: 9662 ms, 434.103088 KB/s 08: 42: 32.285 -> Test לכתוב /test_32k.bin 08: 42: 36.659 -> כתיבת קובץ בשימוש: 4355 ms, 963.100830 KB /s 08: 42: 36.659 -> כתיבת מבחן /test_64k.bin 08: 42: 39.594 -> כתיבת קובץ בשימוש: 2949 ms, 1422.280151 KB /s 08: 42: 39.594 -> קריאת בדיקה /test_1k.bin 08: 42: 44.774 -> קובץ קריאה בשימוש: 5192 ms, 807.839783 KB /s 08: 42: 44.774 -> קריאת בדיקה /test_2k.bin 08: 42: 49.969 -> קריאת קובץ בשימוש: 5189 ms, 808.306824 KB/s 08: 42: 49.969 -> בדיקת קריאה/test_4k.bin 08: 42: 55.123 -> קריאת קובץ בשימוש: 5161 ms, 812.692139 KB/s 08:42: 55.158 -> קריאת בדיקה /test_8k.bin 08: 43: 00.300 -> קריאה קובץ בשימוש: 5176 ms, 810.336914 KB/s 08: 43: 00.334 -> קריאת בדיקה/test_16k.bin 08: 43: 05.277 -> קריאת קובץ בשימוש: 4948 ms, 847.676636 KB/s 08: 43: 05.277 -> קריאה בבדיקה /test_32k.bin 08: 43: 10.028 -> קובץ קריאה בשימוש: 4773 ms, 878.756348 KB /s 08: 43: 10.028 -> קריאת בדיקה /test_64k.bin 08: 43: 14.760 -> קובץ קריאה בשימוש: 4731 ms, 886.557617 KB/s

128 MB ישן MicroSD

08: 43: 47.777 -> כתיבת מבחן /test_1k.bin

08: 44: 04.148 -> כתוב קובץ בשימוש: 16390 ms, 255.906281 KB/s 08: 44: 04.183 -> כתיבת בדיקה/test_2k.bin 08: 44: 20.648 -> כתיבת קובץ בשימוש: 16494 ms, 254.292709 KB/s 08: 44: 20.648 -> כתיבת מבחן /test_4k.bin 08: 44: 36.674 -> כתיבת קובץ בשימוש: 16001 ms, 262.127625 KB /s 08: 44: 36.674 -> כתיבת בדיקה /test_8k.bin 08: 44: 52.849 -> כתוב קובץ בשימוש: 16175 ms, 259.307831 KB/s 08: 44: 52.849 -> כתיבת בדיקה/test_16k.bin 08: 45: 09.225 -> כתיבת קובץ בשימוש: 16397 ms, 255.797043 KB/s 08: 45: 09.225 -> Test לכתוב /test_32k.bin 08: 45: 25.363 -> כתיבת קובץ בשימוש: 16143 ms, 259.821838 KB /s 08: 45: 25.397 -> Test write /test_64k.bin 08: 45: 41.632 -> כתיבת קובץ בשימוש: 16263 ms, 257.904694 KB /s 08: 45: 41.632 -> קריאת בדיקה /test_1k.bin 08: 45: 46.488 -> קובץ קריאה בשימוש: 4856 ms, 863.736389 KB /s 08: 45: 46.488 -> קריאת בדיקה /test_2k.bin 08: 45: 51.332 -> קריאת קובץ בשימוש: 4840 ms, 866.591736 KB/s 08: 45: 51.332 -> בדיקת קריאה/test_4k.bin 08: 45: 56.163 -> קריאת קובץ בשימוש: 4834 ms, 867.667358 KB/s 08:45: 56.163 -> בדיקת קריאה /test_8k.bin 08: 46: 00.998 -> R השתמש בקובץ eead: 4827 ms, 868.925598 KB/s 08: 46: 00.998 -> קריאת בדיקה/test_16k.bin 08: 46: 05.808 -> קריאת קובץ בשימוש: 4825 ms, 869.285828 KB/s 08: 46: 05.843 -> Test read /test_32k.bin 08: 46: 10.637 -> קרא קובץ בשימוש: 4824 ms, 869.466003 KB /s 08: 46: 10.637 -> Test read /test_64k.bin 08: 46: 15.478 -> קרא קובץ בשימוש: 4825 ms, 869.285828 KB/s

שלב 11: מצב SPI SD במדד האוטובוסים VSPI

SanDisk 8 GB MicroSD

08: 54: 17.412 -> כתיבת מבחן /test_1k.bin

08: 54: 48.398 -> כתוב קובץ בשימוש: 30994 ms, 135.326324 KB/s 08: 54: 48.398 -> כתיבת בדיקה/test_2k.bin 08: 55: 06.079 -> כתיבת קובץ בשימוש: 17677 ms, 237.274658 KB/s 08: 55: 06.079 -> כתיבת מבחן /test_4k.bin 08: 55: 13.357 -> כתיבת קובץ בשימוש: 7274 ms, 576.615906 KB /s 08: 55: 13.357 -> כתיבת מבחן /test_8k.bin 08: 55: 18.691 -> כתוב קובץ בשימוש: 5323 ms, 787.958679 KB/s 08: 55: 18.691 -> כתיבת בדיקה/test_16k.bin 08: 55: 28.336 -> כתיבת קובץ בשימוש: 9669 ms, 433.788818 KB/s 08: 55: 28.336 -> Test לכתוב /test_32k.bin 08: 55: 32.646 -> כתוב קובץ בשימוש: 4309 ms, 973.382202 KB /s 08: 55: 32.646 -> כתיבת בדיקה /test_64k.bin 08: 55: 35.551 -> כתיבת קובץ בשימוש: 2915 ms, 1438.869263 KB /s 08: 55: 35.584 -> קריאת בדיקה /test_1k.bin 08: 55: 40.745 -> קובץ קריאה בשימוש: 5183 ms, 809.242554 KB /s 08: 55: 40.745 -> קריאת בדיקה /test_2k.bin 08: 55: 45.916 -> קריאת קובץ בשימוש: 5182 ms, 809.398682 KB/s 08: 55: 45.949 -> בדיקת קריאה/test_4k.bin 08: 55: 51.091 -> קריאת קובץ בשימוש: 5162 ms, 812.534668 KB/s 08:55: 51.091 -> קריאת בדיקה /test_8k.bin 08: 55: 56.257 -> קריאה קובץ בשימוש: 5177 ms, 810.180420 KB/s 08: 55: 56.293 -> קריאת בדיקה/test_16k.bin 08: 56: 01.244 -> קריאת קובץ בשימוש: 4956 ms, 846.308289 KB/s 08: 56: 01.244 -> קריאה בבדיקה /test_32k.bin 08: 56: 06.006 -> קרא קובץ בשימוש: 4764 ms, 880.416443 KB /s 08: 56: 06.006 -> קריאת בדיקה /test_64k.bin 08: 56: 10.716 -> הקובץ הקובץ בשימוש: 4728 ms, 887.120117 KB/s

128 MB ישן MicroSD

08: 51: 01.939 -> כתיבת מבחן /test_1k.bin

08: 51: 18.358 -> כתיבת קובץ בשימוש: 16422 ms, 255.407623 KB/s 08: 51: 18.358 -> כתיבת בדיקה/test_2k.bin 08: 51: 34.529 -> כתיבת קובץ בשימוש: 16173 ms, 259.339874 KB/s 08: 51: 34.529 -> כתיבת מבחן /test_4k.bin 08: 51: 50.911 -> כתיבת קובץ בשימוש: 16372 ms, 256.187653 KB /s 08: 51: 50.911 -> כתיבת בדיקה /test_8k.bin 08: 52: 07.056 -> כתוב קובץ בשימוש: 16137 ms, 259.918457 KB/s 08: 52: 07.056 -> כתיבת בדיקה/test_16k.bin 08: 52: 23.383 -> כתיבת קובץ בשימוש: 16351 ms, 256.516663 KB/s 08: 52: 23.383 -> Test לכתוב /test_32k.bin 08: 52: 39.533 -> כתיבת קובץ בשימוש: 16128 ms, 260.063507 KB /s 08: 52: 39.533 -> Test write /test_64k.bin 08: 52: 55.764 -> כתיבת קובץ בשימוש: 16250 ms, 258.111023 KB /s 08: 52: 55.764 -> בדיקת קריאה /test_1k.bin 08: 53: 00.645 -> קובץ קריאה בשימוש: 4855 ms, 863.914307 KB /s 08: 53: 00.645 -> קריאת בדיקה /test_2k.bin 08: 53: 05.459 -> קריאת קובץ בשימוש: 4839 ms, 866.770813 KB/s 08: 53: 05.459 -> קריאת בדיקה/test_4k.bin 08: 53: 10.306 -> קריאת קובץ בשימוש: 4833 ms, 867.846863 KB/s 08:53: 10.306 -> בדיקת קריאה /test_8k.bin 08: 53: 15.127 -> R שימוש בקובץ ead: 4827 ms, 868.925598 KB/s 08: 53: 15.127 -> קריאת בדיקה/test_16k.bin 08: 53: 19.963 -> קריאת קובץ בשימוש: 4826 ms, 869.105652 KB/s 08: 53: 19.963 -> Test read /test_32k.bin 08: 53: 24.758 -> קרא קובץ בשימוש: 4824 ms, 869.466003 KB /s 08: 53: 24.792 -> Test read /test_64k.bin 08: 53: 29.592 -> קרא קובץ בשימוש: 4824 ms, 869.466003 KB/s

שלב 12: עגול למעלה

למצב אוטובוס SD של 4 סיביות יש את הביצועים הטובים ביותר, מצב אוטובוס SD של 1 סיביות איטי יותר בכ -20% ומצב SPI איטי בסביבות 50%. אחת הסיבות העיקריות לכך ששכבת פרוטוקול SD_MMC אינה מיישמת כל סוג של נעילה אך SPI כן. וגם למצב אוטובוס SD של 4 סיביות יש קווי נתונים כפולים ולכן תיאורטית הכפיל את המהירות. אבל ה- MicroSD הישן שלי אינו יכול לתמוך במצב אוטובוס SD של 4 סיביות.

ברוב המקרים אמליץ על מצב אוטובוס SD של 1 סיביות מכיוון:

  • ביצועים טובים
  • תאימות טובה יותר לכרטיס SD
  • דרישות Pull-up SD רופפות יותר
  • רק 3 סיכות GPIO נדרשות
  • תצורת קוד פחותה
  • ערכת dev רבים, לוח dev ולוח פריצה יכולים להשתמש במצב זה

מוּמלָץ: