Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- PinBelegung:
- VCC/Vin = 5V
- GND = GND
- A4 = SDA
- A5 = SCL
- D3 = gesteuert über PWM
- */
- #include <EEPROM.h>
- #include <SPI.h>
- #include <Wire.h>
- #include <Adafruit_GFX.h>
- #include <Adafruit_SSD1306.h>
- #include <Bme280BoschWrapper.h>
- #define DS3231_ADDRESSE 0x68
- #define OLED_RESET 4
- Adafruit_SSD1306 display(OLED_RESET);
- Bme280BoschWrapper bme280(true);
- int offsettemp = 0;
- int offsethum = 0;
- int offsetpress = 0;
- int sig = 3;
- int tprom = 30;
- void setup() {
- Wire.begin();
- Serial.begin(9600);
- Serial.println("BME280 Bosch test");
- while(!bme280.beginI2C(0x76))
- {
- Serial.println("Cannot find sensor.");
- delay(1000);
- }
- display.begin(SSD1306_SWITCHCAPVCC, 0x3C); //////Display mit der Adresse 0x3C initialisieren
- display.clearDisplay();
- pinMode(sig, OUTPUT);
- analogWrite(sig, 0);
- }
- void loop() {
- while (Serial.available() > 0) {
- int value = Serial.parseInt();
- // Ausgabe:
- Serial.print("I received: ");
- Serial.println(value);
- if (value != 0){
- EEPROM.write(1, value);
- }
- }
- float temp = (bme280.getTemperature() / 100.0);
- disptemp();
- Serial.println(temp);
- tprom = EEPROM.read(1);
- if (temp < (tprom-1)){ //einschaltwert tprom -1
- analogWrite(sig, 255);
- Serial.println("läuft");
- }
- if (temp > (tprom +1)){ //abschaltwert tprom +1
- analogWrite(sig, 0);
- }
- }
- void disptemp(){
- bool ok = bme280.measure();
- display.setTextColor(WHITE);
- display.setTextSize(1);
- display.setCursor(0,1);
- display.println("Temperatur:");
- display.setCursor(75,1);
- display.println((bme280.getTemperature() / 100.0) - offsettemp);
- display.setCursor(110,1);
- display.println("C");
- display.setCursor(0,10);
- display.println("Luftfeuchte:");
- display.setCursor(75,10);
- display.println((bme280.getHumidity() / 1024.0) - offsethum);
- display.setCursor(110,10);
- display.println("%");
- display.setCursor(0,20);
- display.println("STemp:");
- display.setCursor(75,20);
- display.println(tprom);
- display.setCursor(110,20);
- display.println("C");
- display.display();
- display.clearDisplay();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement