LEDs steuern über Digitalen Pin ohne PWM

Hallo,

ich hab mich jetzt eine Zeitlang mit dem Basic-Sketch "Blink" gespielt.
Da gibt es eine Version mit digitalWrite und eine mit analogWrite.

Bei analogWrite kann ich die Helligkeit als Wert mit übergeben, bei digitalWrite nur HIGH oder LOW.
Die Helligkeit bei digitalWrite ist wesentlich geringer als wenn ich analogWrite mit Helligkeit = 255 verwende.

Ich würde gerne digitalWrite verwenden und trotzdem maximale Helligkeit, geht das ?
Außerdem würde ich gerne über einen digitalen PIN nicht nur eine, sondern 10 LEDs (gleichzeitig) schalten ohne dass die an Helligkeit verlieren.

Geht das ?

lG
Gawan

analogWrite() mit 255 macht intern auch nur digitalWrite()

Gawan:
Außerdem würde ich gerne über einen digitalen PIN nicht nur eine, sondern 10 LEDs (gleichzeitig) schalten ohne dass die an Helligkeit verlieren.

Mit einem Transistor

Der übernimmt dann die Funktion eines Schalters der eine angelegte Spannung an alle LEDs gleichzeitig durchschaltet, oder wie darf ich das Verstehen ?

Wie ein Relais ?

lG

Gawan:
Ich würde gerne digitalWrite verwenden und trotzdem maximale Helligkeit, geht das ?
Außerdem würde ich gerne über einen digitalen PIN nicht nur eine, sondern 10 LEDs (gleichzeitig) schalten ohne dass die an Helligkeit verlieren.

Bei analogWrite() brauchst Du vorher den pinMode nicht zu setzen.
Bei digitalWrite() müßtest Du vorher in der setup() Funktion den pinMode des Pins auf OUTPUT setzen.

Ansonsten steuerst Du die LED nur mit einem 20K PullUp-Vorwiderstand an und sie glimmt dann allenfalls dunkel.

Allerdings solltest Du das mit dem pinMode() Aufruf im setup() gesehen haben, wenn Du tatsächlich "eine zeitlang mit dem Basic-Sketch "Blink" gespielt" hast.

Gawan:
Außerdem würde ich gerne über einen digitalen PIN nicht nur eine, sondern 10 LEDs (gleichzeitig) schalten ohne dass die an Helligkeit verlieren.

Du könntest Dir WS2812-LEDs besorgen, dann könntest Du bis zu 1000 LEDs mit nur einem einzigen Pin ansteuern, und das sogar bunt und in vielen RGB Farben. Aber Du brauchst ggf. eine externe 5V Stromquelle, um die ganzen LEDs zu versorgen. Aus dem 5V Pin am Arduino darfst Du ja nur maximal 500mA entnehmen, bei Versorgung mit 12V Netzteil sogar deutlich weniger. Aber bei USB-Stromversorgung des Boards sollten500mA für bis zu 10 WS2812 RGB-LEDs "mit fast voller" Helligkeit ausreichen.

kann es sein das du im Setup kein pinMode() hast?

zu spät

Gawan:
Der übernimmt dann die Funktion eines Schalters der eine angelegte Spannung an alle LEDs gleichzeitig durchschaltet, oder wie darf ich das Verstehen ?

Wie ein Relais ?

Das könnte man so sehen. Nur das Relais macht es potentialfrei und benötigt zusätzlich Strom.

Aber bedenke bitte, wenn die Leds parallel geschaltet werden, dann benötigt jede Led einen eigenen Widerstand. In Reihenschaltung kannst du je nach Spannung mehrere in Reihe schalten und diese kommen mit einem Vorwiderstand aus.

Alles klar, der PinMode wars, ich hab einen anderen Pin für eine andere Funktion im Setup() gesetzt und nicht drauf geachtet den LED-Pin ebenfalls zu setzen.
Danke !

Wenn ich mit 5V 10 blaue LEDs (3.4V) betreiben will, geht das nur mit Parallelschaltung und einem Widerstand je LED ... empfiehlt mir zumindest mein Hausverstand ... irrt er ? :slight_smile:

Korrekt, da blaue LEDs mehr als 3V Fluss-Spannung haben. Bei roten LEDs bring man zwei in Reihe. Alles andere ist an 5V etwas grenzwertig oder geht gar nicht.

Gawan:
Wenn ich mit 5V 10 blaue LEDs (3.4V) betreiben will, geht das nur mit Parallelschaltung und einem Widerstand je LED ... empfiehlt mir zumindest mein Hausverstand ... irrt er ? :slight_smile:

So ist es richtig.
Aber die 5 Volt nicht aus dem Arduino-Port nehmen, das ist für ein Port zu viel.