1 | #include <EEPROM.h>
|
2 | int bandgappin = A4;
|
3 | int bandgapzahl;
|
4 | bool spggut;
|
5 | bool spgguta;
|
6 | bool spggutflanke;
|
7 | bool led; //led MF zur Sichtkontrolle
|
8 | unsigned long ledstart;
|
9 | unsigned long ledist;
|
10 | unsigned long ledvz = 200;
|
11 | int mp = 13; // Messpunkt, LED
|
12 | int drehungenende = 1200; // Maximale Tischhöhe 118cm Hub 55cm
|
13 | int drehungenlinks;
|
14 | int drehungenrechts;
|
15 | void setup() {
|
16 | drehungenlinks = drehungenende;
|
17 | drehungenrechts = drehungenende;
|
18 | // EEPROM.put(0, drehungenlinks);
|
19 | // EEPROM.put(2, drehungenrechts);
|
20 | pinMode(mp, OUTPUT);
|
21 | }
|
22 | void loop() {
|
23 | bandgapzahl = analogRead(bandgappin); // Kontrolle der 5V vom 7805
|
24 | if(bandgapzahl < 600){spggut = HIGH;}
|
25 | else{spggut = LOW;}
|
26 | if(spggut != spgguta){ // Puls bei abfallender Flanke
|
27 | if(spgguta == HIGH){spggutflanke =HIGH;}}
|
28 | else{spggutflanke = LOW;}
|
29 | spgguta = spggut;
|
30 | if(spggutflanke == LOW){ledist = millis(); // Monoflop, damit ich die LED aufblitzen sehe
|
31 | if(ledist - ledstart > ledvz){led = LOW;}}
|
32 | else{ledstart = millis(); led = HIGH;}
|
33 | digitalWrite(mp,led);
|
34 | }
|
35 |
|
36 | /* Die LED blinkt auf, wenn man den Netzstecker zieht.
|
37 | * An A4 liegen 2V5 vom TL431.
|
38 | * Als nächstes werden, wenn spggutflanke == HIGH,
|
39 | * die Werte in das EEPROM geschrieben. Mal sehen
|
40 | * ob das klappt.
|
41 | */
|