dimmen eines LED Cubes

Gast #5749626
Lesenswert?

Hallo
ich habe eine Frage ich weis normalerweise dimmt man mit einem Atmega32 
über einen PWM Ausgang, jedoch habe ich nun schon meinen fertigen 
LED-Cube zusammengelötet und jetzt ist die Frage ob ich einen Internen 
PWM Code schreiben kann sodass ich an meinem A PORT komplett alle 8 Pins 
über pwm ansteuern kann. Für Beiträge wäre ich sehr sehr dankbar.

ich habe an den 8 Pins des A Ports meine LED´s angeschlossen deswegen 
muss ich alle 8 dimmbar bekommen.
Mfg M.
Gast #5749642
Lesenswert?

ms schrieb:
> könntest du mir bitte sagen wie ich dieses machen kann ??

DDRA=0 schaltet alle Ausgangstreiber von Port A aus.
DDRA=255 schaltet sie ein.

Jetzt musst du das nur noch in einstellbaren Intervallen machen - dabei 
wird ein Timer im Normalen Modus und zwei ISR hilfreich sein. Beim 
Overflow schaltest du die Ausgänge an, bei Erreichen des Compare-Wertes 
schaltest du sie aus. Durch Variieren des Compare-Wertes bestimmst du 
die Helligkeit der LEDs.

Mit einem 16bit Timer klappt das am besten, weil das Auge auf Helligkeit 
logarithmisch reagiert.

Siehe Datenblatt 
(http://ww1.microchip.com/downloads/en/DeviceDoc/doc2503.pdf) ab Seite 
86.
Gast #5749663
Lesenswert?

ms schrieb:
> ja tut mir echt leid ich wollte nur Fragen ob du ein Beispiel
> schreiben
> könntest wie ich bei einem internen Timer dann bei dem Overflow mein A
> Register ansteuern kann.

Das fällt in die Kategorie der Dinge, die man entweder selber macht, 
fertig einkauft oder bleiben lässt.

Individuelle Entwicklungen sind halt teuer, ich kann mir auch keinen 
Massanzug leisten.
#5749860
Lesenswert?

M.A. S. schrieb:
> Was, wenn der TO
> tatsächlich Geld rüberwachsen läßt und man eigentlich gar keine Lust
> hat, das für ihn zu machen?

Naja, für 200 Eur würd ich das auch nicht machen, ne Null dran und wir 
könnten drüber reden.

ms schrieb:
> ich wollte nur Fragen ob du ein Beispiel schreiben
> könntest

Wie wärs denn, wenn Du mal mit Infos rüberwachsen könntest, wieviele 
LEDs, an welchen Ausgängen hängen die, wie hast Du die verschalten? Also 
wenigstens Schaltplan sollte schon drin sein.

Ist ja nicht so, dass es nur DEN EINEN LED-Cube geben würde...
#5750130
Lesenswert?

ms schrieb:
> ja tut mir echt leid ich wollte nur Fragen ob du ein Beispiel
> schreiben könntest wie ich bei einem internen Timer dann bei dem
> Overflow mein A Register ansteuern kann.

Hallo,

die Timer sind mit all ihren Einstellungen schon reichlich kompliziert. 
Du könntest diverse Beispiele aus Tutorials heraus suchen und diese 
aufbauen und die Programme laufen lassen. So lernst Du es selbst. 
Braucht natürlich ordentlich Zeit.

http://web.archive.org/web/20170714121847/https://www.uni-koblenz.de/~physik/informatik/MCU/Timer.pdf


https://www.mikrocontroller.net/articles/AVR-Tutorial:_PWM


MfG
#5750214
Lesenswert?

Andre schrieb:
> Apollo M. schrieb:
>> diese einsicht muss früh reifen, sonst gammelt man lebenslang als
>> unterbezahlter entwickler rum! :_))
>
> 8h Bullshit labern hinterlässt immer so einen üblen Nachgeschmack im
> Hals, da bleibe ich lieber unterbezahlter Entwickler.

Genau, denn auch die Einsicht, dass man als Job am besten das tut, was 
man gerne tut, auch wenn's vielleicht nicht maximalen Profit bringt, 
reift hoffentlich auch früh.

Karl K. schrieb:
> M.A. S. schrieb:
>> Was, wenn der TO
>> tatsächlich Geld rüberwachsen läßt und man eigentlich gar keine Lust
>> hat, das für ihn zu machen?
>
> Naja, für 200 Eur würd ich das auch nicht machen, ne Null dran und wir
> könnten drüber reden.

Für ein paar Zeilen Beispielcode für eine PWM?
#5750457
Lesenswert?

ms schrieb:
> danke schon mal könntest du mir bitte einen Beispielcode schreiben ??
> ich bin neu auf diesem Gebiet :/

Beispiele für Timerinterrupt sollten sich reichlich finden lassen, z.B.:
https://www.nongnu.org/avr-libc/user-manual/group__demo__project.html

Ein Cube ist allerdings nicht geeignet zum Einstieg in die 
Programmierung. Das ist schon ein recht komplexes Stück Hardware und 
Software.

Abgesehen davon gibt es nicht den einen einzigen Cube. D.h. bei Fragen 
sollte man immer den Link zur konkreten Ausführung posten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren