LEDs mit verschiedenen Funktionen
Ziel :
Eine Schaltung von LEDs mit verschiedenen
Funktionen zu programmieren.
Material :
- einige Kabel
- 5 verschiedene LEDs (bevorzugt in gleicher Farbe)
- 5 220 Ohm Widerstände
- 1 Potentiometer
Aufbau :
Code:
Hauptdatei.ino
int normales_leuchten = 0;
int drehlicht = 1;
#include "normales_leuchten.h"
#include "drehlicht.h"
void setup() {
if(normales_leuchten==1) {
normales_leuchten_setup();
}
if(drehlicht==1) {
drehlicht_setup();
}
Serial.begin(9600);
}
void loop() {
potentiometerloop();
if(normales_leuchten==1) {
normales_leuchten_loop();
}
if (drehlicht==1) {
drehlicht_loop();
}
}
drehlicht.h
int delay1 = 130;
int eingang = A0;
void drehlicht_setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
}
void drehlicht_loop() {
digitalWrite(led5, LOW);
digitalWrite(led1, HIGH);
delay(delay1);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(delay1);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(delay1);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
delay(delay1);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
delay(delay1);
}
void potentiometerloop() {
delay1 = analogRead(eingang);
if (delay1 < 10) {
delay1 = 10;
}
if (delay1 > 800) {
drehlicht = 0;
normales_leuchten = 1;
}
else {
drehlicht = 1;
normales_leuchten = 0;
}
Serial.println(delay1);
}
normales_leuchten.h
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
void normales_leuchten_setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
}
void normales_leuchten_loop() {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
}
Von Leon Güthlein, Jiyar Sanli, Jan-Niklas Schrimpf
Erstellt: Jan-Niklas Schrimpf (24.01.2017)
Letzte Änderung: Maximilian Stauch (28.06.2017)