Diky vsem za pomoc.
Kód: Vybrat vše
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SH1106.h>
#include <Encoder.h>
int OLED_RESET = 4;
Adafruit_SH1106 display(OLED_RESET);
#define sensorPin 1
#define relayPin 8
int boostmbar;
//Stores target temp
int target = 0;
//Used for encoder
long oldPosition = 0;
long newPosition = 0;
#define offset 0
//Set encoder pins: pins 2 and 3
Encoder myEnc(2, 3);
void setup() {
  pinMode(relayPin, OUTPUT);
  display.begin(SH1106_SWITCHCAPVCC); // 3.3V power supply
  display.clearDisplay(); // Clear the display and ram // put your setup code here, to run once:
}
void loop() {
  int boostmbar = map(analogRead(sensorPin), 21, 961, 100, 2600);
  if (boostmbar > (target + offset)) {
    digitalWrite(relayPin, HIGH);
  }
  else if (boostmbar < (target - offset)) {
    digitalWrite(relayPin, LOW);
  }
  newPosition = myEnc.read();
  if (newPosition != oldPosition) {
    if (newPosition > oldPosition) {
      target = target + 10;
    } else {
      target = target - 10;
    }
    oldPosition = newPosition;
  }
  display.setTextColor(WHITE);
  display.setTextSize(4);
  display.setCursor(0, 0);
  display.println(boostmbar);
  display.setTextColor(WHITE);
  display.setTextSize(2);
  display.setCursor(30, 40);
  display.println(target);
  delay(10);
  display.display();
  display.clearDisplay();
}