
Wrzucam tutaj swój pierwszy "projekt" na majsterkowie. Konstrukcja powstała w wyniku zabaw z Arduino nano i potrzeby wykorzystania części, które walały się z demontażu - jak LCD 24x2. Kilka sztuk takich LCD zalegało mi nie wykorzystywane, więc trzeba było je zagospodarować. Konstrukcja nie jest żadnym nowum - typowa aż do bólu aplikacja DHT22 i BME 280, odczyt, przesłanie danych na LCD.Kod poniżej://uzyte biblioteki#include <DHT.h>#include <LiquidCrystal.h>#include <Wire.h>#include <SPI.h>#include <Adafruit_Sensor.h>#include <Adafruit_BME280.h>//definicja pinu i typu czujnika DHT#define DHTPIN 8#define DHTTYPE DHT22//definicja pinow magistrali SPI#define BME_SCK 13#define BME_MISO 12#define BME_MOSI 11#define BME_CS 10//definicja pinow LCDLiquidCrystal lcd(7, 6, 5, 4, 3, 2);//definicja DHTDHT dht(DHTPIN, DHTTYPE);//uzyte zmiennefloat Tzew;float Wilg;float temperatura;float cisnienie;float wilgotnosc;#define SEALEVELPRESSURE_HPA (1013.25) //cisnienie na poziomie morza#define ALTITUDE 160.0 // wysokosc wzgledna w metrach dla miejsca pomiaru - u mnie 160 m npmAdafruit_BME280 bme(BME_CS); // inicjalizacja czujnika BME w trybie hardware SPIvoid setup() {Serial.begin(9600);Serial.println(F("Start Testu"));lcd.begin(24, 2); //start LCD 24x2bool status;status = bme.begin(); if (!status) {Serial.println("Brak sensora BME 280 - sprawdz polaczenie");while (1);}Serial.println("OK");}void loop() {temperatura = bme.readTemperature(); //odczyt temperatury z czujnika BMEcisnienie = bme.readPressure(); //odczyt cisnienia z czujnika BMEcisnienie = bme.seaLevelForAltitude(ALTITUDE,cisnienie); //przeliczenie cisnienia dla danej wysokosci npmwilgotnosc = bme.readHumidity(); //wilgotnosc z czujnika BMETzew = dht.readTemperature(); //temperatura z czujnika DHTWilg = dht.readHumidity(); //wilogotnosc z czujnika DHTlcd.setCursor(0,0);lcd.print("Tzew: ");lcd.print(Tzew);lcd.print(" Twew:......
Czytaj dalej...