Forum: Analoge Elektronik und Schaltungstechnik ICs, die über UART oder SPI angesteuert PWM-Signale für LEDs ausgeben


von dirk (Gast)


Lesenswert?

Hallo,

gibt es ICs, die man über UART oder SPI ansteuern kann und die dann 
PWM-Signale ausgeben?

Ich möchte mehrere Hochleistungs-LEDs unabhängig voneinander dimmen und 
das ganze mit einem ATMEGA ansteuern.


Ein IC wie ich es suche sollte folgende Eigenschaften haben:

- mind. 8 unabhängige PWM-Kanäle, besser 10 oder 12

- direkte Ansteuerung der Gates der MOSFETs möglich

- PWM-Frequenz relativ hoch, mind. 3kHz

- Auflösung mind. 10 Bit

- über UART oder SPI ansteuerbar

von Crazy Harry (crazy_h)


Lesenswert?

Der PCA9685 kann das über I2C, evtl. gibts ja das gleiche für SPI.
Via UART: einen uC davor und selber bauen.

von Halb Wissender (Gast)


Lesenswert?

dirk schrieb:
> gibt es ICs, die man über UART oder SPI ansteuern kann und die dann
> PWM-Signale ausgeben?

Ja, die heissen z.B. ATMegaXXX und STM32XXX in ihren vielfältigsten
Ausführungen.

von Michael K. (Gast)


Lesenswert?

dirk schrieb:
> mit einem ATMEGA ansteuern.

Mehr brauchst Du nicht.
Man muss nicht zwangsläufig PWM Hardware dafür haben.
Software PWM nach dem Prinzip der Pulse Dichte Modulation könnte was für 
Dich sein.

4kanal, 10bit, 100 Hz habe ich mal auf einem 8081 gemacht.
Ob 4 oder 10 Kanäle macht fast keinen Unterschied, weil es nur um einen 
weiteren Vergleich + Ausgang setzen geht.
PDM kommt durch das Dithering mit geringeren Wiederholraten aus.

50% duty
PWM: 1111100000
PDM: 1010101010

Wie kommst Du eigentlich auf 3Khz?
Scheint mir sehr willkürlich gesetzt zu sein.

Crazy H. schrieb:
> einen uC davor und selber bauen.
Nicht so ohne weiteres mit den Anforderungen des TO zu machen.
Entweder genug PWM Hardware in der MCU oder genügend Speed um das mit 
PDM zu machen, sollten schon sein.

von c-hater (Gast)


Lesenswert?

dirk schrieb:

> gibt es ICs, die man über UART oder SPI ansteuern kann und die dann
> PWM-Signale ausgeben?
>
> Ich möchte mehrere Hochleistungs-LEDs unabhängig voneinander dimmen und
> das ganze mit einem ATMEGA ansteuern.

Dann lass' es doch einfach den ATmega selber machen, dann entfällt 
schonmal die Anforderung bezüglich der Ansteuerung.

Alles, was zu tun bleibt, ist eine effizient programmierte Soft-PWM und 
der Drops ist gelutscht.

Und wenn du am vorhandenen Atmega nicht mehr genug Pins frei hast, dann 
nimmst du halt einen zweiten oder einen Tiny nur für die PWM-Geschichte.

von MinMax (Gast)


Lesenswert?

dirk schrieb:
> Hallo,
>
> gibt es ICs, die man über UART oder SPI ansteuern kann und die dann
> PWM-Signale ausgeben?
>
> Ich möchte mehrere Hochleistungs-LEDs unabhängig voneinander dimmen und
> das ganze mit einem ATMEGA ansteuern.
>
>
> Ein IC wie ich es suche sollte folgende Eigenschaften haben:
>
> - mind. 8 unabhängige PWM-Kanäle, besser 10 oder 12
>
> - direkte Ansteuerung der Gates der MOSFETs möglich

Klingt nach Konstantspannungsnetzteil + Widerstand + LED + Power-MOSFET 
als Schalter in Reihe, also recht ineffektiv. Hochleistungs-LEDs werden 
normalerweise mit einem Konstantstromnetzteil betrieben, und gute 
Netzteile haben meist auch einen PWM Steuereingang.

>
> - PWM-Frequenz relativ hoch, mind. 3kHz

Overkill. Ergibt mit der gewünschten Auflösung eine minimale 
Pulsbreite/Auflösung von 300 nsec, da wird die MOSFET Ansteuerung aber 
schon anspruchsvoll.

>
> - Auflösung mind. 10 Bit

Overkill. Temperaturabhängige Intensitätsänderungen der LEDs werden 
deine Auflösung deutlich übersteigen. Und dein Auge kann das sowieso 
nicht mehr unterscheiden.

Ich denke du solltest dein Konzept bzw. deine Anforderungen nochmals 
überdenken.

von dirk (Gast)


Lesenswert?

Vielen Dank für eure Antworten!

Ein Atmega ist wahrscheinlich nicht der optimale 
Leistungs-MOSFET-Treiber, man könnte aber noch einen kräftigen 
Bustreiber dazwischen schalten.

MinMax schrieb:
>> - Auflösung mind. 10 Bit
>
> Overkill. Temperaturabhängige Intensitätsänderungen der LEDs werden
> deine Auflösung deutlich übersteigen. Und dein Auge kann das sowieso
> nicht mehr unterscheiden.
>
> Ich denke du solltest dein Konzept bzw. deine Anforderungen nochmals
> überdenken.

Für höhere Helligkeitsstufen hast du Recht, aber wenn man in ganz 
kleinen Schritten hochdimmen möchte, benötigt man meiner Erfahrung nach 
eine hohe bis sehr hohe Auflösung.
Oder gibt es einen Trick, wie man auch bei einer relativ geringen 
Auflösung ein softes Dimmverhalten im unteren Lichtbereich hinbekommt?
Bei 8 Bit Auflösung stellst du nämlich die LED von 0 auf 1 und sie 
leuchtet schon viel zu hell. Von 1 auf 2 ist der Helligkeitssprung immer 
noch viel zu groß und erst ab Stufe 20 (oder je nachdem 40) wird das 
Dimmverhalten akzeptabel.

von Michael K. (Gast)


Lesenswert?

dirk schrieb:
> Für höhere Helligkeitsstufen hast du Recht, aber wenn man in ganz
> kleinen Schritten hochdimmen möchte, benötigt man meiner Erfahrung nach
> eine hohe bis sehr hohe Auflösung.

Stimmt.
10b war bei mir das Minimum bei niedrigster Dimmstufe und 
dunkeladaptiertem Auge.

10b sind auch nicht das Problem, sondern die 3Khz die Du erreichen 
willst.
Was lässt Dich glauben das Du eine so hohe Wiederholrate brauchst?

Bei 100Hz ist auch schon kein Geflacker mehr sichtbar.
Mit einem C über den LEDs erreichst Du viel mehr als über eine high 
speed PWM die Dir eine Menge Probleme bereitet.

Schau Dir wirklich mal das PDM Verfahren an.
Leicht und Recourcenschonend zu programmieren und Du bekommst so viele 
PDM Ausgänge wie Du nur haben willst.
Nur hohe Wiederholraten benötigen einen irre hohen MCU Takt um auf Deine 
Pulsbreiten zu kommen.
Dazu starke Mosfet Treiber, weil Du die Fets sonst im Linearbetrieb 
betreibst mit diversen Folgeproblemen.

von MaWin (Gast)


Lesenswert?

dirk schrieb:
> gibt es ICs, die man über UART oder SPI ansteuern kann und die dann
> PWM-Signale ausgeben?

Eine Menge, z.B. TLC5940=AS1112 (16*120mA/17V Konstantstrom, TI, 
Darisus), MAX6966 (10, Maxim), PCA9626B (24*100mA 40V open drain, I2C, 
Philips) WS2803 (18 x 30mA/30V eBay 1.-) PCA9532 (16*12.5mA, I2C, 
Philips) TB62718 LT8500 TLC5904 TLC5905 TLC5910 TLC5911. Die habne aber 
alle Ausgänge für LEDs bis 100mA. Damit man über die einen MOSFET 
steuern kann der dann Hochleistungs-LEDs steuert, muss man was 
dranbauen, netterweise übernehmen die ICs auch die Pegelwandlung.
1
                +5-15V
2
                 |   |
3
               220R  |
4
      +-------+  |   |
5
SCLK--|       |--+--|I P-MOSFET
6
      |TLC5940|      |     LED
7
SDATA-|       |      +--R--|>|-- GND
8
      +-------+

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.