Analoge Ein- und Ausgabe

Fritzing Sketch Analog Input Output

Fritzing Sketch Analog Input Output

In diesem Beispiel wird eine LED über ein Potentiometer an- und ausgedimmt. Das Potentiometer ist auf der einen Seite mit dem 5V+ und auf der anderen Seite mit dem GND verbunden. Das mittlere Beinchen des Potentiometers ist mit dem Analog In 3 verbunden.

Wichtig hier bei ist, dass eine analoge Ausgabe nur auf PWM-Kanälen funktionieren kann (Digital Pins 3,5,6,9,10 oder 11)

/* Grundlagen analoge Ein- und Ausgabe
Autor: Stefan Hermann
URL: www.physical-computing.de */

int ledPin1=3; // wichtig ist, dass PWM-Pins benutzt werden (Pins: 3,5,6,9,10,11)
int potiPin=3; // Analog In
int val; // Speichert den aktuellen Sensorwert zwischen

void setup(){
pinMode(ledPin1,OUTPUT); // deklariert den Pin von LED1 als Ausgang
}

void loop(){
val=analogRead(potiPin); // der aktuelle Poti-Wert wird eingelesen. es können Werte zwischen 0 und 1023 entstehen
// die Analoge Ausgabe erfolgt auf digitalen Pins. Werte zwischen 0 und 255 können angegeben werden
analogWrite(ledPin1,val/4); // val/4 ergibt Werte zwischen 0 und 255
}

  • Hallo zusammen,

    ich hab das gerade nachgebaut und versucht abzuändern. Statt 2 habe ich 3 LED’s auf board gepackt und wollte, dass sie mit steigenden Potentiometer-Werten nacheinander anfangen hell zu werden. Wenn ich das richtig verstanden habe, bedeutet ein kleiner Wert wenig leuchten. Also habe ich:

    analogWrite(ledPin1,val/4);
    analogWrite(ledPin2,val/8);
    analogWrite(ledPin3,val/12);

    einfach durch höhere Werte geteilt, die, die sich dann rechnerisch ergeben steigen ja langsamer.

    Leider fangen trotzdem alle 3 LED’s gleichzeitig und vor allem gleich hell an zu leuchten. Sind die Wertunterschiede nicht hoch genug? Oder wieso ist das so?

    lg,
    diaak

  • edit: Ja, sind sie. Hätte ich ja auch gleich selbst probieren können. ;D Nun muss ich mir nur noch ne Funktion ausdenken, die die Werte unterschiedlich schnell steigen, aber trotzdem bei den gleichen Maximalwerten enden lässt.

  • Also man muss darauf achten, dass man für analoge Ausgaben PWM-Kanäle benutzt.

    Die analogen Ausgabewerte können zwischen 0 und 255 liegen.

You can follow any responses to this entry through the RSS 2.0 feed.