Difference between revisions of "DIY-MedTech Arduino Basics - Team Tamberg"
From Hackteria Wiki
(→Vertiefung: LED schlauer schalten) |
(→Vertiefung: LED schlauer schalten) |
||
Line 15: | Line 15: | ||
===Vertiefung: LED schlauer schalten=== | ===Vertiefung: LED schlauer schalten=== | ||
Wie kann man eine LED Lampe so schalten, dass sie beim ersten Knopfdruck an geht, und beim nächsten wieder aus? | Wie kann man eine LED Lampe so schalten, dass sie beim ersten Knopfdruck an geht, und beim nächsten wieder aus? | ||
− | + | int switchPin = 2; | |
− | int switchPin = 2; | + | int ledPin = 13; |
− | int ledPin = 13; | + | int state = 0; |
− | int state = 0; | ||
− | void setup () { | + | void setup () { |
− | + | Serial.begin(9600); | |
− | + | pinMode(switchPin, INPUT); | |
− | + | pinMode(ledPin, OUTPUT); | |
− | } | + | } |
− | void loop () { | + | void loop () { |
− | + | int switchValue = digitalRead(switchPin); | |
− | + | Serial.print(switchValue); | |
− | + | Serial.print(", "); | |
− | + | Serial.println(state); | |
− | + | if ((state == 0) && (switchValue == HIGH)) { | |
− | + | state = 1; | |
− | + | } else if ((state == 1) && (switchValue == LOW)) { | |
− | + | Serial.print("LED on\n"); | |
− | + | digitalWrite(ledPin, HIGH); | |
− | + | state = 2; | |
− | + | } else if ((state == 2) && (switchValue == HIGH)) { | |
− | + | state = 3; | |
− | + | } else if ((state == 3) && (switchValue == LOW)) { | |
− | + | Serial.print("LED off\n"); | |
− | + | digitalWrite(ledPin, LOW); | |
− | + | state = 0; | |
+ | } | ||
+ | delay(100); | ||
} | } | ||
− | |||
− | |||
− |
Revision as of 11:36, 14 February 2018
Arduino Basics mit @tamberg im Rahmen von Medizintechnik DIY
Arduino Tutorial
http://www.tamberg.org/chopen/2017/LoRaWANIoTWorkshop.pdf
- Arduino Programmierumgebung (IDE) einrichten p.12, 13
- Text schicken (Serial Output) vom Arduino zum Computer p.16, 17
- LED blinken (Digital Output), p.24, 25
- Schalter lesen (Digital Input), p.27, 28
- LED schalten, p.29
- Licht messen (Analog Input), p.31, 32
- Servo steuern (PWM Output), p.36, 37
- Servo mit Licht steuern, p.38
Vertiefung: LED schlauer schalten
Wie kann man eine LED Lampe so schalten, dass sie beim ersten Knopfdruck an geht, und beim nächsten wieder aus?
int switchPin = 2; int ledPin = 13; int state = 0;
void setup () { Serial.begin(9600); pinMode(switchPin, INPUT); pinMode(ledPin, OUTPUT); }
void loop () { int switchValue = digitalRead(switchPin); Serial.print(switchValue); Serial.print(", "); Serial.println(state); if ((state == 0) && (switchValue == HIGH)) { state = 1; } else if ((state == 1) && (switchValue == LOW)) { Serial.print("LED on\n"); digitalWrite(ledPin, HIGH); state = 2; } else if ((state == 2) && (switchValue == HIGH)) { state = 3; } else if ((state == 3) && (switchValue == LOW)) { Serial.print("LED off\n"); digitalWrite(ledPin, LOW); state = 0; } delay(100); }