To jest moduł czytnika kart microSD 3,3V, który umożliwia mikrosterownikowi komunikację z kartą microSD przez magistralę SPI. Używa CS (chip select) razem z MOSI, MISO i CLK oraz współdzieli GND i zasilanie 3,3V z systemem.
| Pin | Sygnał | Opis |
|---|---|---|
3V3 |
power | 3.3V power input for the microSD card reader; use only 3.3V logic/power. |
CS |
chip-select | SPI chip-select input for the microSD card; active low. |
MOSI |
MOSI | SPI data from host MCU to microSD card. |
CLK |
SCK | SPI clock input from the host MCU to the microSD card. |
MISO |
MISO | SPI data output from microSD card to host MCU. |
GND |
ground | Ground reference for power and SPI signals. |
| Z | Do | Przewód |
|---|---|---|
board:5V |
x1:3V3 |
red |
board:GND |
x1:GND |
black |
board:D10 |
x1:CS |
green |
board:D11 |
x1:MOSI |
blue |
board:D13 |
x1:CLK |
yellow |
board:D12 |
x1:MISO |
purple |
Ten przykład został napisany i sprawdzony kompilacją dla arduino-uno. Codey Online dostosuje go do każdej innej obsługiwanej płytki.
#include <SPI.h>
#include <SD.h>
const int SD_CS_PIN = 10;
void setup() {
Serial.begin(9600);
while (!Serial) {
;
}
Serial.println("Micro-SD Card Reader 3.3V example");
Serial.println("Initializing SD card...");
pinMode(SD_CS_PIN, OUTPUT);
digitalWrite(SD_CS_PIN, HIGH);
if (!SD.begin(SD_CS_PIN)) {
Serial.println("SD card initialization failed!");
Serial.println("Check wiring, card format, and that the module is powered correctly.");
while (true) {
delay(1000);
}
}
Serial.println("SD card initialized successfully.");
File root = SD.open("/");
if (root) {
Serial.println("Files on the card:");
printDirectory(root, 0);
root.close();
} else {
Serial.println("Could not open root directory.");
}
}
void loop() {
// Simple periodic status message so you can see the sketch is running.
Serial.println("SD card ready.");
delay(2000);
}
void printDirectory(File dir, int numTabs) {
while (true) {
File entry = dir.openNextFile();
if (!entry) {
break;
}
for (int i = 0; i < numTabs; i++) {
Serial.print('\t');
}
Serial.print(entry.name());
if (entry.isDirectory()) {
Serial.println("/");
printDirectory(entry, numTabs + 1);
} else {
Serial.print("\t");
Serial.println(entry.size(), DEC);
}
entry.close();
}
}
Opisz, co chcesz zbudować. Codey Online napisze kod, narysuje schemat połączeń, skompiluje projekt i wgra go na płytkę bezpośrednio z przeglądarki.
Zacznij za darmo