โมดูลการ์ด Micro SD ช่วยให้ Arduino อ่านและเขียนข้อมูลไปยังการ์ด microSD ทำให้เหมาะสำหรับการบันทึกข้อมูลการจัดเก็บเซ็นเซอร์หรือการจัดการไฟล์ในโครงการ Arduino บทช่วยสอนนี้จะแนะนำคุณผ่านการเชื่อมต่อและใช้โมดูลการ์ด Micro SD กับ Arduino
สิ่งที่คุณต้องการ
- โมดูลการ์ด Micro SD
- คณะกรรมการ Arduino (เช่น Uno, Mega, Nano)
- การ์ด microSD (จัดรูปแบบเป็น FAT32)
- เครื่องหั่นขนมปังและสายจัมเปอร์
- คอมพิวเตอร์ที่ติดตั้ง Arduino IDE
ขั้นตอนที่ 1: ทำความเข้าใจโมดูลการ์ด Micro SD
โมดูลใช้โปรโตคอล SPI เพื่อสื่อสารกับ Arduino มันมีหน่วยงานกำกับดูแลแรงดันไฟฟ้าออนบอร์ดทำให้สามารถทำงานกับไมโครคอนโทรลเลอร์ 5V และ 3.3V
Micro SD Card Module Pinout
เข็มหมุด | การทำงาน |
---|---|
VCC | แหล่งจ่ายไฟ (3.3V/5V) |
gnd | พื้น |
มิโซะ | เอาต์พุตข้อมูล SPI |
Mosi | อินพุตข้อมูล SPI |
SCK | นาฬิกา SPI |
CS | เลือกชิป |
ขั้นตอนที่ 2: การเดินสายโมดูลการ์ด Micro SD ไปยัง Arduino
นี่คือวิธีการเชื่อมต่อโมดูลการ์ด Micro SD กับ Arduino Uno:
Micro SD PIN | พิน Arduino |
---|---|
VCC | 5V |
gnd | gnd |
มิโซะ | PIN 12 |
Mosi | พิน 11 |
SCK | PIN 13 |
CS | พิน 10 |
บันทึก: หากคุณใช้บอร์ด Arduino ที่แตกต่างกันให้ตรวจสอบให้แน่ใจว่าพิน SPI นั้นตรงกับ pinout ของคณะกรรมการของคุณ
ขั้นตอนที่ 3: ติดตั้งไลบรารีที่ต้องการ
ห้องสมุด SD ถูกสร้างขึ้นใน Arduino IDE และทำให้การอ่านง่ายขึ้นและเขียนลงในการ์ด SD
ขั้นตอนในการตรวจสอบการติดตั้งไลบรารี:
- เปิด Arduino IDE
- ไป ร่าง > รวมห้องสมุด.
- ตรวจสอบให้แน่ใจว่ามีการแสดงรายการไลบรารี "SD" ถ้าไม่ติดตั้งจากตัวจัดการไลบรารี
ขั้นตอนที่ 4: อัปโหลดรหัส
นี่คือตัวอย่างตัวอย่างในการเขียนและอ่านข้อมูลจากการ์ด SD:
รหัสตัวอย่าง: การเขียนและการอ่านข้อมูล
#include <SPI.h>
#include <SD.h>
#define CS_PIN 10 // Chip Select pin for the SD card module
File myFile;
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("Initializing SD card...");
if (!SD.begin(CS_PIN)) {
Serial.println("SD card initialization failed!");
return;
}
Serial.println("SD card initialized.");
// Write to the SD card
myFile = SD.open("test.txt", FILE_WRITE);
if (myFile) {
Serial.println("Writing to test.txt...");
myFile.println("Hello, SD card!");
myFile.close();
Serial.println("Write complete.");
} else {
Serial.println("Error opening test.txt for writing.");
}
// Read from the SD card
myFile = SD.open("test.txt");
if (myFile) {
Serial.println("Reading from test.txt...");
while (myFile.available()) {
Serial.write(myFile.read());
}
myFile.close();
} else {
Serial.println("Error opening test.txt for reading.");
}
}
void loop() {
// Nothing to do here
}
ขั้นตอนที่ 5: ทดสอบการตั้งค่า
- เชื่อมต่อ Arduino กับคอมพิวเตอร์ของคุณผ่าน USB
- เปิด Arduino IDE และเลือกที่ถูกต้อง กระดาน และ ท่าเรือ ภายใต้ เครื่องมือ เมนู.
- อัปโหลดรหัสไปยัง Arduino โดยคลิก อัพโหลด.
- เปิดมอนิเตอร์อนุกรม (เครื่องมือ > จอภาพอนุกรม) และตั้งค่าอัตราการรับส่งข้อมูลเป็น
9600
. - สังเกตข้อความเกี่ยวกับการเริ่มต้นการ์ด SD การเขียนข้อมูลและการอ่านข้อมูลในจอภาพอนุกรม
ตัวเลือก: การจัดรูปแบบการ์ด SD
ตรวจสอบให้แน่ใจว่าการ์ด SD ของคุณถูกจัดรูปแบบเป็น FAT16 หรือ FAT32 ก่อนการใช้งาน ใช้เครื่องมือการจัดรูปแบบระบบปฏิบัติการหรือซอฟต์แวร์ของคุณเช่น SD Card Formatter
แอปพลิเคชันของโมดูลการ์ด Micro SD
- การบันทึกข้อมูล (เช่นอุณหภูมิความชื้นหรือเซ็นเซอร์ตรวจจับความเคลื่อนไหว)
- การจัดเก็บไฟล์การกำหนดค่าสำหรับโครงการ IoT
- การบันทึกรูปภาพหรือเสียงสำหรับโครงการมัลติมีเดีย
- การสร้างระบบจัดเก็บข้อมูลตามไฟล์
การแก้ไขปัญหา
- การเริ่มต้นการ์ด SD ล้มเหลว: ตรวจสอบให้แน่ใจว่ามีการเดินสายที่เหมาะสมและตรวจสอบว่าการ์ด SD ถูกจัดรูปแบบอย่างถูกต้อง
- ข้อผิดพลาดในการเปิดไฟล์: ตรวจสอบชื่อไฟล์และตรวจสอบให้แน่ใจว่าไม่เกิน 8 อักขระ (รวมถึงส่วนขยาย 3 ตัวอักษร)
- การทำงานที่ไม่เสถียร: ใช้แหล่งจ่ายไฟ 5V ที่เสถียรและหลีกเลี่ยงสายจัมเปอร์ยาว
บทสรุป
คุณสามารถเชื่อมต่อโมดูลการ์ด Micro SD ได้สำเร็จกับ Arduino เพื่อให้สามารถจัดเก็บข้อมูลและดึงข้อมูลสำหรับโครงการของคุณได้ โมดูลอเนกประสงค์นี้เป็นสิ่งจำเป็นสำหรับการสร้างเครื่องบันทึกข้อมูลอุปกรณ์มัลติมีเดียหรือระบบที่ใช้ไฟล์ ทดลองเพิ่มเติมโดยการอ่านและเขียนไฟล์ขนาดใหญ่หรือรวมโมดูลการ์ด SD เข้ากับเซ็นเซอร์และจอแสดงผล!