Difference between revisions of "DIY-MedTech Arduino Basics - Team Tamberg"

From Hackteria Wiki
Jump to: navigation, search
(Vertiefung: LED schlauer schalten)
(Vertiefung: LED schlauer schalten)
Line 28: Line 28:
 
     void loop () {
 
     void loop () {
 
         int switchValue = digitalRead(switchPin);
 
         int switchValue = digitalRead(switchPin);
        Serial.print(switchValue);
 
        Serial.print(", ");
 
 
         Serial.println(state);
 
         Serial.println(state);
 
         if ((state == 0) && (switchValue == HIGH)) {
 
         if ((state == 0) && (switchValue == HIGH)) {
 
             state = 1;
 
             state = 1;
 
         } else if ((state == 1) && (switchValue == LOW)) {
 
         } else if ((state == 1) && (switchValue == LOW)) {
            Serial.print("LED on\n");
 
 
             digitalWrite(ledPin, HIGH);
 
             digitalWrite(ledPin, HIGH);
 
             state = 2;
 
             state = 2;
Line 40: Line 37:
 
             state = 3;
 
             state = 3;
 
         } else if ((state == 3) && (switchValue == LOW)) {
 
         } else if ((state == 3) && (switchValue == LOW)) {
            Serial.print("LED off\n");
 
 
             digitalWrite(ledPin, LOW);
 
             digitalWrite(ledPin, LOW);
 
             state = 0;
 
             state = 0;
 
         }
 
         }
        delay(100);
 
 
     }
 
     }
 
</pre>
 
</pre>

Revision as of 10:40, 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.println(state);
        if ((state == 0) && (switchValue == HIGH)) {
            state = 1;
        } else if ((state == 1) && (switchValue == LOW)) {
            digitalWrite(ledPin, HIGH);
            state = 2;
        } else if ((state == 2) && (switchValue == HIGH)) {
            state = 3;
        } else if ((state == 3) && (switchValue == LOW)) {
            digitalWrite(ledPin, LOW);
            state = 0;
        }
    }