/** * Das Programm liest einen Wert über den Analog-In Port A5 ein (Poti an +5V und Masse). * Dieser Wert liegt zwischen 0 und 1023. Die PWM Funktion analogWrite() verarbeitet aber nur * Werte zwischen 0 und 255. Mit hilfe der map() Funktion wird der Wert aus dem einen Bereich * (0 bis 1023) in den Wert des anderen Bereichs (0 bis 255) transformiert. * Die so generierte PWM regelt die Helligkeit der Roten LED. */ /* Als Anschlussports für die LED sind hier PWM fähige gewählt (die mit der ~ vor der Portnummer). Nur an diesen Ports können wir PWM Signale ausgeben und so z.B. die Helligkeit regeln. */ const int red = 9; // Pin für rot in RGB LED const int green = 10; // Pin für grün in RGB LED const int blue1 = 5; // Pin für erstes blau in RGB LED const int blue2 = 6; // Pin für zweites blau in RGB LED const int potpin = 5; // Anschlusspin des Poti (Analog In A5) int potiwert; // Variable in der der Potiwert gespeichert wird void setup () { pinMode (red, OUTPUT); pinMode (green, OUTPUT); pinMode (blue1, OUTPUT); pinMode (blue2, OUTPUT); pinMode (potpin, INPUT); // definiert den Analogen Port A5 als Eingang } void loop () { /* Mit der analogRead() Funktion kann der momentane Wert an Pin A5 eingelesen werden */ potiwert = analogRead (potpin); /* Mit Hilfe der map() Funktion transformieren wir Werte aus dem Bereich 0 bis 1023 in den Bereich 0 bis 255) */ potiwert = map (potiwert, 0, 1023, 0, 255); /* Mit der analogWrite() Funktion wird eine PWM mit dem Puls-Pausen Verhältnis erzeugt */ analogWrite (red, potiwert); }