아두이노 우노 R4 - 마이크로 SD 카드

이 가이드에서는 Arduino UNO R4와 함께 Micro SD 카드를 사용하는 방법을 배웁니다. 다음 세부 사항을 다룰 것입니다:

아두이노 UNO R4 마이크로 SD 카드

Hardware Preparation

1×Arduino UNO R4 WiFi Amazon
1×Arduino UNO R4 Minima (Alternatively) Amazon
1×USB Cable Type-C 쿠팡 | Amazon
1×Micro SD Card Amazon
1×Micro SD Card Module 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Optional) MicroSD to SD Memory Card Adapter Amazon
1×(Recommended) Screw Terminal Block Shield for Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Breadboard Shield For Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Enclosure For Arduino UNO R4 Amazon
1×(Recommended) Power Splitter For Arduino UNO R4 Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

마이크로 SD 카드 모듈에 대하여

마이크로 SD 카드 모듈은 아두이노 UNO R4와 연결되어 마이크로 SD 카드를 보유합니다. 이는 마이크로 SD 카드 모듈이 아두이노 UNO R4와 마이크로 SD 카드 사이의 연결 역할을 한다는 것을 의미합니다.

핀아웃

마이크로 SD 카드 모듈 핀아웃

마이크로 SD 카드 모듈에는 6개의 핀이 있습니다:

  • VCC 핀을 Arduino UNO R4의 5V 핀에 연결합니다.
  • GND 핀을 Arduino UNO R4의 GND에 연결합니다.
  • MISO 핀을 Arduino UNO R4의 MISO 핀에 연결합니다.
  • MOSI 핀을 Arduino UNO R4의 MOSI 핀에 연결합니다.
  • SCK 핀을 Arduino UNO R4의 SCK 핀에 연결합니다.
  • SS 핀을 Arduino UNO R4 코드에서 SS 핀으로 식별된 핀에 연결합니다.

준비

  • USB 3.0 SD 카드 리더기를 사용하여 컴퓨터에 Micro SD 카드를 꽂으세요.
  • Micro SD 카드가 FAT16 또는 FAT32로 포맷되어 있는지 확인하세요. 이를 확인하는 방법은 온라인에서 검색해 보실 수 있습니다.

Wiring Diagram

아두이노 UNO R4 마이크로 SD 카드 모듈 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

※ NOTE THAT:

이더넷 쉴드 또는 Micro SD 카드 홀더가 있는 다른 쉴드가 있다면, Micro SD 카드 모듈을 사용할 필요가 없습니다. 그저 Micro SD 카드를 쉴드의 Micro SD 카드 홀더에 넣으면 됩니다.

Arduino UNO R4 - Micro SD 카드에서 파일을 열고, 파일이 없는 경우 생성하는 방법

아두이노 UNO R4 코드

Detailed Instructions

다음 지침을 단계별로 따르세요:

  • Arduino Uno R4 WiFi/Minima를 처음 사용하는 경우, Arduino IDE에서 Arduino Uno R4 WiFi/Minima의 환경 설정 튜토리얼을 참조하세요.
  • Micro SD 카드를 Micro SD 카드 모듈에 삽입합니다.
  • 배선도를 따라 Micro SD 카드 모듈을 Arduino UNO R4에 연결합니다.
  • USB 케이블을 사용하여 Arduino Uno R4 보드를 컴퓨터에 연결합니다.
  • 컴퓨터에서 Arduino IDE를 실행합니다.
  • 적절한 Arduino Uno R4 보드(예: Arduino Uno R4 WiFi)와 COM 포트를 선택합니다.
  • Arduino IDE에서 시리얼 모니터를 엽니다.
  • 제공된 코드를 복사하여 Arduino IDE에 붙여넣습니다.
/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-micro-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 // The Arduino UNO R4 pin connected to the CS pin of SDcard module File myFile; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD Card is either missing or has failed!")); while (1); // don't do anything more: } Serial.println(F("SD Card is ready")); if (!SD.exists("arduino.txt")) { Serial.println(F("arduino.txt doesn't exist. Creating arduino.txt file...")); // create a new file by opening a new file and immediately close it myFile = SD.open("arduino.txt", FILE_WRITE); myFile.close(); } // recheck if file is created or not if (SD.exists("arduino.txt")) Serial.println(F("arduino.txt exists on SD Card.")); else Serial.println(F("arduino.txt doesn't exist on SD Card.")); } void loop() { }
  • Arduino IDE에서 Upload 버튼을 눌러 코드를 Arduino UNO R4에 전송하세요.
  • 첫 번째 업로드 후 결과를 확인하려면 시리얼 모니터를 확인하세요.
COM6
Send
SD Card is ready arduino.txt doesn't exist. Creating arduino.txt file... arduino.txt exists on SD Card.
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • 다음 시도에 대한 결과는 시리얼 모니터에 표시됩니다.
COM6
Send
SD Card is ready arduino.txt exists on SD Card.
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ NOTE THAT:

처음 업로드한 후 시리얼 모니터를 열면 출력을 보지 못할 수도 있습니다.

  • 모듈에서 마이크로 SD 카드를 제거하십시오.
  • 마이크로 SD 카드를 USB SD 카드 리더기에 넣으십시오.
  • USB SD 카드 리더기를 컴퓨터에 연결하십시오.
  • 파일이 있는지 여부를 확인하십시오.

아두이노 UNO R4 - 마이크로 SD 카드에서 파일에 데이터를 쓰고/읽는 방법

이 코드는 다음 작업을 수행합니다:

  • 정보를 파일에 저장
  • 파일의 각 문자를 하나씩 시리얼 모니터에 로드하고 표시
/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-micro-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 // The Arduino UNO R4 pin connected to the CS pin of SDcard module File myFile; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD Card is either missing or has failed!")); while (1); // don't do anything more: } Serial.println(F("SD Card is ready")); // open file for writing myFile = SD.open("arduino.txt", FILE_WRITE); if (myFile) { myFile.println("Created by newbiely.com"); // write a line to Arduino myFile.println("Learn Arduino and SD Card"); // write another line to Arduino myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } // open file for reading myFile = SD.open("arduino.txt", FILE_READ); if (myFile) { while (myFile.available()) { char ch = myFile.read(); // read characters one by one from Micro SD Card Serial.print(ch); // print the character to Serial Monitor } myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } } void loop() { }
  • 시리얼 모니터에 파일의 내용이 표시되었습니다.
COM6
Send
Created by newbiely.com Learn Arduino UNO R4 and SD Card
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ NOTE THAT:

기본적으로 데이터는 파일의 끝에 추가됩니다. 주어진 코드를 사용하여 Arduino UNO R4를 다시 시작하면 텍스트가 다시 파일에 추가됩니다. 이는 시리얼 모니터에 다음과 같은 추가 줄이 표시됨을 의미합니다:

COM6
Send
Created by newbiely.com Learn Arduino UNO R4 and SD Card Created by newbiely.com Learn Arduino UNO R4 and SD Card
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

모듈에서 Micro SD 카드를 제거하고 USB SD 카드 리더기를 사용하여 컴퓨터에서 파일을 볼 수도 있습니다.

Arduino UNO R4 - Micro SD 카드에서 파일을 한 줄씩 읽는 방법

/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-micro-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 // The Arduino UNO R4 pin connected to the CS pin of SDcard module File myFile; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD Card is either missing or has failed!")); while (1); // don't do anything more: } Serial.println(F("SD Card is ready")); // open file for writing myFile = SD.open("arduino.txt", FILE_WRITE); if (myFile) { myFile.println("Created by newbiely.com"); // write a line to Arduino myFile.println("Learn Arduino and SD Card"); // write another line to Arduino myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } // open file for reading myFile = SD.open("arduino.txt", FILE_READ); if (myFile) { int line_count = 0; while (myFile.available()) { char line[100]; // maximum is 100 characters, change it if needed int line_length = myFile.readBytesUntil('\n', line, 100); // read line-by-line from Micro SD Card line_count++; Serial.print(F("Line ")); Serial.print(line_count); Serial.print(F(": ")); Serial.write(line, line_length); // print the character to Serial Monitor // \n character is escaped by readBytesUntil function Serial.write('\n'); // print a new line charactor } myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } } void loop() { }
  • 직렬 모니터에 표시된 결과
COM6
Send
SD Card is ready Line 1: Created by newbiely.com Line 2: Learn Arduino UNO R4 and SD Card
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ NOTE THAT:

파일 내용을 미리 삭제하지 않으면, 시리얼 모니터에 추가 줄이 표시될 수 있습니다.

Arduino UNO R4 - Micro SD 카드에서 파일을 덮어쓰는 방법

보통 내용은 파일의 끝에 추가됩니다. 파일을 교체하려면 먼저 오래된 파일을 삭제한 후 동일한 이름으로 새 파일을 만드십시오.

/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-micro-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 // The Arduino UNO R4 pin connected to the CS pin of SDcard module File myFile; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD Card is either missing or has failed!")); while (1); // don't do anything more: } Serial.println(F("SD Card is ready")); SD.remove("arduino.txt"); // delete the file if existed // create new file by opening file for writing myFile = SD.open("arduino.txt", FILE_WRITE); if (myFile) { myFile.println("Created by newbiely.com"); // write a line to Arduino myFile.println("Learn Arduino and SD Card"); // write another line to Arduino myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } // open file for reading myFile = SD.open("arduino.txt", FILE_READ); if (myFile) { while (myFile.available()) { char ch = myFile.read(); // read characters one by one from Micro SD Card Serial.print(ch); // print the character to Serial Monitor } myFile.close(); } else { Serial.print(F("Error: Unable to open file arduino.txt")); } } void loop() { }
  • 시리얼 모니터의 출력
COM6
Send
SD Card is ready Created by newbiely.com Learn Arduino UNO R4 and SD Card
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Arduino UNO R4 재시작
  • Serial Monitor의 파일 내용이 추가되었는지 확인하십시오.

또한 장치에서 Micro SD 카드를 제거하여 USB SD 카드 리더를 사용하여 컴퓨터에서 내용을 볼 수 있습니다.

Video Tutorial

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

관련 튜토리얼

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!