Arduino – DS18B20 zapis temperatury na karcie SD

W tym przykładzie opiszę jak odczytać temperaturę z czujnika DS18B20 a następnie zapisać na kartę SD do pliku temp.csv.

Arduino Nano lub odpowiednik,
– czujnik DS18B20
– rezystor 4,7kΩ

Opis połączeń:

Pin Arduino Moduł SD
D11 MOSI
D12 MISO
D13 SCK
D4 CS
Vcc Vcc
GND GND
Pin Arduino Pin DS18B20
Vcc Vcc
D7 Data
GND GND

Schemat połączeniowy:

Potrzebne biblioteki:

Biblioteka 1-Wire

Biblioteka DallasTemperature

Kod programu:

#include <SD.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define DS18B20 7
const int chipSelect = 4;
OneWire ourWire(DS18B20);
DallasTemperature sensors(&ourWire);
void setup()
{
Serial.begin(9600);
while (!Serial) {
;
}
Serial.print(„inicjacja karty SD…   „);
pinMode(10, OUTPUT);
//init SD card
if (!SD.begin(chipSelect))
{
Serial.println(„blad karty, nie zainstalowana”);
return;
}
Serial.println(„karta zainicjowana.”);
sensors.begin();
}
void loop()
{
sensors.requestTemperatures();
// open the file.
File dataFile = SD.open(„temp.csv”, FILE_WRITE);
// if the file is available, write to it:
if (dataFile)
{
dataFile.println(sensors.getTempCByIndex(0));
dataFile.close();
}

else
{
Serial.println(„blad otwarcia pliku temp.csv”);
}
}

Post Author: swistak

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Potwierdz, że nie jesteś botem. *