Arduinoの読み取りと書き込みSDカードモジュールセンサーデータの書き込み

ArduinoはSDカードモジュールを使用してセンサーデータを書き込みます

序文

特定のSDカードの配線については、 Arduinoの読み取りおよび書き込みSDカードモジュールを参照してください(SDカード情報を取得するため)。
このブログでは、例として温度および湿度センサーDHT22を使用しています。他のセンサーについては、1つから推測できます。別。

ハードウェアの準備

SDカードモジュール
画像の説明を追加してください
温度湿度センサーDHT22
ここに画像の説明を挿入

DHT22 Arduino
+ 5V
S 7
GND GND

コードセクション

温度と湿度の検出

#include <dht.h>
#define DHTPin 7 
dht DHT; 

void loop() {
    
    
  
  int readData = DHT.read22(DHTPin);
  float t = DHT.temperature; 
  float h = DHT.humidity;

  Serial.print("Temperature = ");
  Serial.print(t);
  Serial.print(" *C "); 
  Serial.print("    Humidity = ");
  Serial.print(h);
  Serial.println(" % ");

.txtファイルを作成する

myFile = SD.open("可以自主命名.txt", FILE_WRITE);

SDカードに書き込む機能:「myFile」

if (myFile) {
    
      
    myFile.print("Temperature = "); 
    myFile.print(t);
    myFile.print(",");  
    myFile.print("    Humidity = ");  
    myFile.println(h);
    myFile.close(); //结束文件记录
  }

ファイルを開くことができるかどうかを確認します

else {
    
    
    Serial.println("error opening data.txt");
  }

完全なコード

#include <SD.h>
#include <SPI.h>
#include <dht.h>
#define DHTPin 7 
dht DHT; 
File myFile;
int pinCS = 4; 
void setup() {
    
    
   
  Serial.begin(9600);
  pinMode(pinCS, OUTPUT);
  
  // SD Card Initialization
  if (SD.begin())
  {
    
    
    Serial.println("SD card is ready to use.");
  } else
  {
    
    
    Serial.println("SD card initialization failed");
    return;
  }
}
void loop() {
    
    
  
  int readData = DHT.read22(DHTPin);
  float t = DHT.temperature; 
  float h = DHT.humidity;

  Serial.print("Temperature = ");
  Serial.print(t);
  Serial.print(" *C "); 
  Serial.print("    Humidity = ");
  Serial.print(h);
  Serial.println(" % ");

  myFile = SD.open("data.txt", FILE_WRITE);
  if (myFile) {
    
      
    myFile.print("Temperature = "); 
    myFile.print(t);
    myFile.print(",");  
    myFile.print("    Humidity = ");  
    myFile.println(h);
    myFile.close(); // close the file
  }
  else {
    
    
    Serial.println("error opening data.txt");
  }
  delay(500);  
}

レンダリング

ここに画像の説明を挿入

ここに画像の説明を挿入
SDカードのDATA.txtデータが正常に書き込まれたことを確認してください。

追記補足

SDカードに記録されたデータを使って、表や線グラフなどを描くことができます。線グラフ
ここに画像の説明を挿入
ここに画像の説明を挿入
描いてみてください!
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_50679163/article/details/119842489