Arduino lee y escribe la escritura de datos del sensor del módulo de la tarjeta SD

Arduino usa un módulo de tarjeta SD para escribir datos del sensor

prefacio

Para el cableado específico de la tarjeta SD, consulte el módulo de tarjeta SD de lectura y escritura de Arduino (para obtener información de la tarjeta SD).
Este blog utiliza el sensor de temperatura y humedad DHT22 como ejemplo. En cuanto a otros sensores, puede sacar inferencias de uno otro.

preparación de hardware

Módulo de tarjeta SD
Por favor agregue la descripción de la imagen
sensor de temperatura y humedad DHT22
inserte la descripción de la imagen aquí

DHT22 arduino
+ 5V
S 7
TIERRA TIERRA

sección de código

Detección de temperatura y humedad

#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(" % ");

Crear archivo .txt

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

Función para escribir en la tarjeta SD: "myFile"

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

Determinar si el archivo se puede abrir

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

código completo

#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);  
}

representaciones

inserte la descripción de la imagen aquí
¡Compruebe que los datos DATA.txt
inserte la descripción de la imagen aquí
en la tarjeta SD se hayan escrito correctamente! ! !

Suplemento de posdata

Podemos usar los datos registrados en la tarjeta SD para dibujar tablas y gráficos de líneas, etc. ¡ Buena suerte
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
al dibujarlos en un gráfico de líneas !
inserte la descripción de la imagen aquí
! !

Supongo que te gusta

Origin blog.csdn.net/weixin_50679163/article/details/119842489
Recomendado
Clasificación