extract output into a function
[speedo_scaler.git] / speedo_scaler.ino
1 #include <Streaming.h>
2
3 int inPin = 2;
4 int outPin = 3;
5 int ledPin = 13;
6 int threshold = 5;
7
8
9 int lastState = 0;
10 int count = 0;
11 int outputState = HIGH;
12
13 void setup() {
14   pinMode(inPin, INPUT_PULLUP);
15   pinMode(outPin, OUTPUT);
16   pinMode(ledPin, OUTPUT);
17   next();
18   
19   Serial.begin(115200);
20   Serial << "online" << endl;
21 }
22
23 void loop() {
24   int current = digitalRead(inPin);
25   if (current != lastState) {
26     lastState = current;
27     digitalWrite(ledPin, current);
28     count++;
29     Serial << current << " " << count << endl;
30     if (count >= threshold) {
31       next();3
32       count = 0;
33     }
34   }
35 }
36
37 void next() {
38   if (outputState == LOW) {
39     outputState = HIGH;
40   } else {
41     outputState = LOW;
42   }
43   digitalWrite(outPin, outputState);
44 }