728x90
반응형
SMALL
안녕하세요 땜블리 입니다.
아두이노와 베이직 트레이닝 보드를 이용한 SD카드 제어 실습을 진행 하겠습니다.
베이직 트레이닝 보드는 아래에서 확인이 가능합니다.
1) SD카드 제어 구동 원리
(1) 동작설명
Arduino에서 SD-Card와 데이터를 주고받는 방식은 SPI를 사용하고, SD-Card 파일 시스템을 사용하기 위해 SD 라이브러리를 사용합니다.
SD.h 라이브러리는 FAT16, FAT32 파일 시스템을 지원합니다.
(2) 연결방법
연결표
사용 라이브러리
(3) 코드작성
#include<SPI.h>
#include<SD.h>
#define SS 4
#define FILENAME F("hello.txt")
#define STATEMENT F("File Write Test")
void setup() {
Serial.begin(115200);
Serial.print("Initializing SD card...");
if (!SD.begin(SS)) {
Serial.println(F("Card Initializing failed, or not present"));
while (1);
}
Serial.println(F("Card initializing complete."));
File dataFile = SD.open(FILENAME, FILE_WRITE);
if (dataFile) {
dataFile.println(STATEMENT);
dataFile.close();
Serial.println(F("File Writing is complete.."));
}
else {
Serial.print(F("error opening"));
Serial.println(FILENAME);
}
}
void loop() {
}
반응형
(4) 동작결과
HELLO 파일이 생성되고 그파일 안에 텍스트 데이터가 저장되어있습니다.
2) 현재 온도/습도를 SD카드에 저장 제어
(1) 동작설명
DHT11센서에서 온도 습도 데이터를 취득한 뒤 SD카드에 쓰기를 합니다.
(2) 연결방법
연결표
(3) 코드작성
#include<SPI.h>
#include<SD.h>
#include<DHT.h>
#define SS 7
File dataFile;
#define DHTPIN 4
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
while (!Serial);
Serial.print("Initializing SD card...");
if (!SD.begin(SS))
{
Serial.println("initialization failed!");
while (1);
}
Serial.println("initialization done.");
delay(2000);
dht.begin();
}
uint16_t line =1;
void loop() {
delay(1000);
byte RH = dht.readHumidity();
byte Temp = dht.readTemperature();
dataFile = SD.open("DHT11Log.txt", FILE_WRITE);
if (dataFile)
{
Serial.print(line);
Serial.print(": Temperature = ");
Serial.print(Temp);
Serial.print("°C, Humidity = ");
Serial.print(RH);
Serial.println("%");
dataFile.print(line++);
dataFile.print(": Temperature = ");
dataFile.print(Temp);
dataFile.print("°C, Humidity = ");
dataFile.print(RH);
dataFile.println("%");
dataFile.close();
}
else
Serial.println("error opening DHT11Log.txt");
}
(4) 동작결과
728x90
반응형
LIST
'아두이노 > 아두이노 IDE' 카테고리의 다른 글
FND 디스플레이 Arduino 제어 (0) | 2023.06.19 |
---|---|
12. 아두이노 IDE 블루투스 [베이직 트레이닝 보드] (0) | 2023.03.10 |
10. 아두이노 IDE OLED제어 [베이직 트레이닝 보드] (0) | 2023.03.08 |
09. 아두이노 IDE DHT11제어 [베이직 트레이닝 보드] (0) | 2023.03.07 |
08. 아두이노 IDE 릴레이제어 [베이직 트레이닝 보드] (0) | 2023.03.06 |
댓글