// Include configuartion file.
#include "MySlowServo.h"
#define SERVO_PIN 9
byte status = 0;
const int btn_open_Pin = 8;
const int btn_closed_Pin = 7;
LangsamerServo servo;
void setup() {
Serial.begin(9600);
pinMode(btn_open_Pin , INPUT_PULLUP);
pinMode(btn_closed_Pin , INPUT_PULLUP);
servo.attach(SERVO_PIN);
servo.write(45);
/*
// Vent öffnen
servo.write(10,25);
while (!servo.amZiel()) servo.tic();
*/
/*
// Vent schließen
servo.write(90,25);
while (!servo.amZiel()) servo.tic();
*/
}
// Das soll anstelle von delay() verwendet werden
void pause(int ms) {
unsigned long start = millis();
while (millis() < start + ms) {
//_loop();
if (servo.amZiel()) {
if ( status == 1) Serial.println("open");
if ( status == 0) Serial.println("closed");
}
}
}
// in diesen Loop kommt alles, was regelmässig aufgerufen werden muss
void _loop() {
servo.tic();
}
void loop() {
//_loop();
//pause(500);
if ( digitalRead(btn_open_Pin) == !true) {
delay(100);
servo.write(10,25);
status = 1;
}
if ( digitalRead(btn_closed_Pin) == !true) {
delay(100);
servo.write(90,25);
status = 0;
}
//if (servo.amZiel() == false) servo.tic();
if (!servo.amZiel()) servo.tic();
if (servo.status_change == true) {
servo.status_change = false;
if ( status == 1) Serial.println("open");
if ( status == 0) Serial.println("close");
status = !status;
}
}