Πίνακας περιεχομένων:
- Βήμα 1: Διασύνδεση SD
- Βήμα 2: Αντιστοίχιση καρφιτσών ESP32 GPIO
- Βήμα 3: Απαιτήσεις SD Pull-up
- Βήμα 4: Διάφορο υλικό
- Βήμα 5: Πίνακας Breakout υποδοχής κάρτας SD
- Βήμα 6: Αποσυνδέστε το GPIO 2 while Program
- Βήμα 7: Σημείο αναφοράς
- Βήμα 8: Συγκριτικό σημείο λειτουργίας 4-bit SD_MMC
- Βήμα 9: Συγκριτικό σημείο λειτουργίας SD_MMC 1-bit
- Βήμα 10: Λειτουργία SD SPI στο σημείο αναφοράς HSPI Bus
- Βήμα 11: Λειτουργία SD SPI στο σημείο αναφοράς VSPI Bus
- Βήμα 12: Επανάληψη
Βίντεο: Επιλέξτε διεπαφή SD για ESP32: 12 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:33
Αυτές οι οδηγίες δείχνουν κάτι σχετικά με την επιλογή μιας διεπαφής SD για το έργο σας ESP32.
Βήμα 1: Διασύνδεση SD
Στην αρχική βιβλιοθήκη Arduino SD, το SD Interface χρησιμοποιεί τη λειτουργία μεταφοράς διαύλου SD SPI.
Τα SD έχουν στην πραγματικότητα περισσότερη λειτουργία μεταφοράς:
- Λειτουργία διαύλου SPI: Το ESP32 έχει περισσότερους από 1 διαύλους SPI, μπορεί να προσαρμοστεί κατά την προετοιμασία
- Λειτουργία διαύλου SD 1-bit / 4-bit: Το 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 | Ονομα | 4-bit δίαυλος SD | Δίαυλος SD 1-bit | SPI bus (HSPI / VSP Πρωτότυπες ακίδες) |
1 | 2 | Δ3 | 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 | Δ1 | 4 | - | - |
9 | 1 | Δ2 | 12 | - | - |
Η χαρτογράφηση των καρφιών GPIO του διαύλου SD 1-bit / 4-bit δεν μπορεί να αλλάξει.
Απλή κλήση SD_MMC έναρξη () στην αρχική λειτουργία διαύλου 4-bit SD:
SD_MMC.begin ();
Η λειτουργία διαύλου SD 1-bit μπορεί να επιλεγεί με τη μέθοδο έναρξης () SD_MMC, π.χ.
SD_MMC.begin ("/cdcard", true);
Ο δίαυλος SPI (HSPI ή VSPI) μπορεί να επιλεγεί κατά τη δημιουργία της παρουσίας SPIClass, π.χ.
SPIClass spi = SPIClass (HSPI);
Όπως μπορείτε να δείτε 1-bit / 4-bit καρφίτσες διαύλου SD κοινής χρήσης με HSPI αλλά η αντιστοίχιση καρφιτσών καρτών SD δεν είναι η ίδια. Έτσι, εάν το υλικό είναι συνδεδεμένο σύμφωνα με το χάρτη καρφιτσών του δίαυλου SD, δεν μπορεί να χρησιμοποιήσει εγγενείς ακίδες HSPI. Οι ακίδες GPIO μπορούν να παρακαμφθούν στη μέθοδο SPIClass begin (), π.χ.
SPIClass spi = SPIClass (HSPI);
spi.begin (14 / * SCK * /, 2 / * MISO * /, 15 / * MOSI * /, 13 / * SS * /);
Και επίσης, η βιβλιοθήκη SD μπορεί να παρακάμψει το SS pin, το δίαυλο SPI και τη συχνότητα διαύλου στη μέθοδο SD begin (), π.χ.
SD.begin (13 / * SS * /, spi, 80000000);
Βήμα 3: Απαιτήσεις SD Pull-up
Αν θέλετε να χρησιμοποιήσετε τη λειτουργία δίαυλου SD 4-bit, ακολουθήστε πιστά τις απαιτήσεις ESP32 SD Pull-up Requirements, ειδικά:
- Συγκρούσεις συσχέτισης στο GPIO13
- Διενέξεις μεταξύ Bootstrap και SDIO στο DAT2
Αναφορά.:
docs.espressif.com/projects/esp-idf/en/lat…
Βήμα 4: Διάφορο υλικό
Το ESP32 διαθέτει τόνους dev kit και dev board, μερικά από αυτά έχουν ενσωματωμένη υποδοχή κάρτας MicroSD.
Εδώ είναι μερικά παραδείγματα στο χέρι μου:
- TTGO T-Watch, συνδέθηκε με τις καρφίτσες GPIO 2, 13, 14 και 15 σύμφωνα με τη λειτουργία δίαυλου SD 1-bit, ώστε να μπορεί να χρησιμοποιήσει τη λειτουργία διαύλου SD 1-bit και τη λειτουργία διαύλου SPI
- M5Stack Series, συνδέθηκε με τις καρφίτσες 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-bit, ώστε να μπορεί να χρησιμοποιήσει όλες τις λειτουργίες διαύλου SD 4-bit / 1-bit και τη λειτουργία διαύλου SPI
- TTGO T8 dev board, συνδέθηκε με τις καρφίτσες GPIO 2, 13, 14 και 15 σύμφωνα με τη λειτουργία δίαυλου SD 1-bit, ώστε να μπορεί να χρησιμοποιήσει τη λειτουργία διαύλου SD 1-bit και τη λειτουργία διαύλου 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: Πίνακας Breakout υποδοχής κάρτας SD
Ο πίνακας Dev με ενσωματωμένη υποδοχή κάρτας MicroSD ενδέχεται να μην συνδέει όλους τους ακροδέκτες και οι περισσότεροι δεν μπορούν να χρησιμοποιήσουν τη λειτουργία διαύλου SD 4-bit. Ένας ατομικός πίνακας σπάσιμο κάρτας SD παρέχει καλύτερη ευελιξία.
Ταυτόχρονα, πολλοί πίνακες ξεμπλοκαρίσματος LCD ξεσπούν επίσης μια υποδοχή κάρτας SD πλήρους μεγέθους. Ωστόσο, τα περισσότερα από αυτά ξεσπούν μόνο τις ακίδες λειτουργίας SPI. Δεν αρκεί να χρησιμοποιείτε τη λειτουργία διαύλου SD 4-bit, αλλά μπορείτε ακόμα να τη χρησιμοποιήσετε ως λειτουργία διαύλου SD 1-bit με αυτήν την αντιστοίχιση σύνδεσης:
LCD -> ESP32
SD_CS -> μηδέν SD_MOSI -> 15 SD_MISO -> 2 SD_SCK -> 14
Βήμα 6: Αποσυνδέστε το GPIO 2 while Program
Η σύνδεση λειτουργίας διαύλου SD 4-bit κάνει το ESP32 να μην εισέλθει στη λειτουργία προγράμματος. Παρακαλώ θυμηθείτε να αποσυνδέσετε το GPIO 2 από την πλακέτα διάλυσης υποδοχής κάρτας SD DAT0 πριν ανεβάσετε νέο πρόγραμμα.
Βήμα 7: Σημείο αναφοράς
Έχω γράψει ένα απλό πρόγραμμα Arduino για το σημείο αναφοράς:
github.com/moononournation/ESP32_SD_Benchm…
Ακολουθεί το υλικό για το σημείο αναφοράς:
ESP32
NodeMCU ESP32-32S V1.1 (WROOM-32)
Υποδοχή κάρτας SD
Μια πλακέτα ξεμπλοκαρίσματος υποδοχής κάρτας MicroSD
Κάρτα SD
Έχω ένα SanDisk 8 GB MicroSD και ένα παλιό 128 MB MicroSD στο χέρι.
Βήμα 8: Συγκριτικό σημείο λειτουργίας 4-bit SD_MMC
MicroSD SanDisk 8 GB
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_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
Παλιά MicroSD 128 MB
20: 30: 43.309 -> E (274) sdmmc_sd: sdmmc_check_scr: send_scr επιστροφή 0x109
20: 30: 43.309 -> Αποτυχία τοποθέτησης κάρτας
Βήμα 9: Συγκριτικό σημείο λειτουργίας SD_MMC 1-bit
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_32k.bin 20: 32: 31.835 -> Εγγραφή αρχείου που χρησιμοποιήθηκε: 3429 ms, 1223.185791 KB /s 20: 32: 31.835 -> Δοκιμή εγγραφής /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_32k.bin 20: 32: 57.840 -> Ανάγνωση αρχείου που χρησιμοποιήθηκε: 3739 ms, 1121.771606 KB /s 20: 32: 57.840 -> Δοκιμή ανάγνωσης /test_64k.bin 20: 33: 01.568 -> Ανάγνωση αρχείου που χρησιμοποιήθηκε: 3711 ms, 1130.235474 KB/s
Παλιά MicroSD 128 MB
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_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_32k.bin 20: 35: 38.462 -> Ανάγνωση αρχείου που χρησιμοποιείται: 4173 ms, 1005.105225 KB /s 20: 35: 38.462 -> Δοκιμή ανάγνωσης /test_64k.bin 20: 35: 42.612 -> Ανάγνωση αρχείου που χρησιμοποιείται: 4173 ms, 1005,105225 KB/s
Βήμα 10: Λειτουργία SD SPI στο σημείο αναφοράς HSPI Bus
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_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
Παλιά MicroSD 128 MB
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_32k.bin 08: 45: 25.363 -> Εγγραφή αρχείου που χρησιμοποιείται: 16143 ms, 259.821838 KB /s 08: 45: 25.397 -> Δοκιμή εγγραφής /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 ead αρχείο που χρησιμοποιήθηκε: 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_32k.bin 08: 46: 10.637 -> Ανάγνωση αρχείου που χρησιμοποιήθηκε: 4824 ms, 869.466003 KB /s 08: 46: 10.637 -> Δοκιμή ανάγνωσης /test_64k.bin 08: 46: 15.478 -> Ανάγνωση αρχείου που χρησιμοποιήθηκε: 4825 ms, 869.285828 KB/s
Βήμα 11: Λειτουργία SD SPI στο σημείο αναφοράς VSPI Bus
MicroSD SanDisk 8 GB
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_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
Παλιά MicroSD 128 MB
08: 51: 01.939 -> Δοκιμή εγγραφής /test_1k.bin
08: 51: 18.358 -> Εγγραφή αρχείου που χρησιμοποιήθηκε: 16422 ms, 255.407623 KB/s 08: 51: 18.358 -> Δοκιμή εγγραφής/test2k.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_32k.bin 08: 52: 39.533 -> Εγγραφή αρχείου που χρησιμοποιήθηκε: 16128 ms, 260.063507 KB /s 08: 52: 39.533 -> Δοκιμή εγγραφής /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_32k.bin 08: 53: 24.758 -> Ανάγνωση αρχείου που χρησιμοποιείται: 4824 ms, 869.466003 KB /s 08: 53: 24.792 -> Δοκιμή ανάγνωσης /test_64k.bin 08: 53: 29.592 -> Ανάγνωση αρχείου που χρησιμοποιείται: 4824 ms, 869,466003 KB/s
Βήμα 12: Επανάληψη
Η λειτουργία διαύλου SD 4-bit έχει την καλύτερη απόδοση, η λειτουργία διαύλου SD 1-bit είναι περίπου 20% πιο αργή και η λειτουργία SPI είναι περίπου 50% πιο αργή. Ένας από τους κύριους λόγους είναι ότι το επίπεδο πρωτοκόλλου SD_MMC δεν εφαρμόζει κανένα είδος κλειδώματος, αλλά το SPI το κάνει. Και επίσης η λειτουργία διαύλου SD 4-bit έχει διπλές γραμμές δεδομένων οπότε θεωρητικά διπλασιάζει την ταχύτητα. Αλλά το παλιό μου MicroSD δεν μπορεί να υποστηρίξει τη λειτουργία διαύλου SD 4-bit.
Θα προτείνω τη λειτουργία διαύλου SD 1-bit στις περισσότερες περιπτώσεις, επειδή:
- καλή απόδοση
- καλύτερη συμβατότητα με κάρτες SD
- χαλαρότερες απαιτήσεις SD Pull-up
- απαιτούνται μόνο 3 ακίδες GPIO
- μικρότερη διαμόρφωση κώδικα
- πολλά dev kit, dev board και breakout board μπορούν να χρησιμοποιήσουν αυτήν τη λειτουργία
Συνιστάται:
Επιλέξτε έναν τίτλο και λέξεις -κλειδιά για το Instructable σας: 6 βήματα (με εικόνες)
Επιλέξτε έναν τίτλο και λέξεις-κλειδιά για το Instructable σας: Η επιλογή του σωστού τίτλου και των λέξεων-κλειδιών μπορεί να είναι η διαφορά μεταξύ ενός οδηγού που πηγαίνει στην πρώτη σελίδα των αποτελεσμάτων αναζήτησης Google ή συντρίβεται και καίγεται στη φοβερή γη χωρίς προβολές των διαδικτυακών δικτύων. Ενώ οι λέξεις -κλειδιά και ο τίτλος δεν είναι οι μόνοι
Επιλέξτε υποκατάστατα αισθητήρων στα κυκλώματα Tinkercad: 3 βήματα (με εικόνες)
Επιλέξτε υποκατάστατα αισθητήρων σε κυκλώματα Tinkercad: Από σχεδίασης, τα κυκλώματα Tinkercad περιέχουν μια περιορισμένη βιβλιοθήκη συνηθισμένων ηλεκτρονικών εξαρτημάτων. Αυτή η επιμέλεια διευκολύνει τους αρχάριους να περιηγηθούν στην πολυπλοκότητα του κόσμου των ηλεκτρονικών ειδών χωρίς να συγκλονιστούν. Το αρνητικό είναι ότι αν
Arduino RGB Color Picker - Επιλέξτε χρώματα από αντικείμενα πραγματικής ζωής: 7 βήματα (με εικόνες)
Arduino RGB Color Picker - Διαλέξτε χρώματα από αντικείμενα πραγματικής ζωής: Επιλέξτε εύκολα χρώματα από φυσικά αντικείμενα με αυτόν τον επιλογέα χρωμάτων RGB με βάση το Arduino, επιτρέποντάς σας να αναδημιουργήσετε τα χρώματα που βλέπετε σε αντικείμενα πραγματικής ζωής στον υπολογιστή ή το κινητό σας τηλέφωνο. Απλώς πατήστε ένα κουμπί για να σαρώσετε το χρώμα του αντικειμένου χρησιμοποιώντας ένα φτηνό TCS347
Σεμινάριο για τη διεπαφή RGB Led WS2812B με Arduino UNO: 7 βήματα (με εικόνες)
Σεμινάριο για τη διεπαφή RGB Led WS2812B με Arduino UNO: Αυτό το σεμινάριο θα σας διδάξει ορισμένα βασικά για τη χρήση του Sparkfun RGB Led WS2812B με Arduino UNO
Οδηγίες για τη διεπαφή OLED 0.91 ιντσών 128x32 με Arduino UNO: 7 βήματα (με εικόνες)
Σεμινάριο για τη διεπαφή OLED 0.91 ιντσών 128x32 με Arduino UNO: Αυτό το σεμινάριο θα σας διδάξει ορισμένα βασικά για τη χρήση του OLED 0.91 ιντσών LCD128x32 με το Arduino UNO