Forum: Projekte & Code RGB-Moodlight mit Mega8


von Axel L. (lemmi4711)


Angehängte Dateien:

Lesenswert?

Hallo Leute.

Habe aus eigenem Interesse ein LED-RGB Modlight mit PWM programmiert.
3 Modi sind zur Zeit programmiert. Weitere sind noch in Arbeit.

Modus 1: automatischer, sanfter Farbwechsel, Geschwindigkeit des 
Farbwechsels und des Farbübergangs über Potis einstellbar

Modus 2: automatischer, harter Farbwechsel, Geschwindigkeit des 
Farbwechsels über Poti einstellbar

Modus 3: manuelle Farbsteuerung


Der Sourcecode ist in harter Lernarbeit erstellt worden...
Natürlich in Zuhilfenahme dieses Forums, daher stelle ich ihn auch hier 
zur freien Verfügung.

Der Code ist modular aufgebaut. Daher können auch Teile daraus 
problemlos verwendet werden...

Axel.

von Coder (Gast)


Lesenswert?

Hi Axel,

schön, dass du dich an µC und C versuchst. Nur muss ich dir leider 
mitteilen, dass man "goto" und Sprungmarken in C eigentlich nicht mehr 
verwendet. Ist generell nicht gern gesehen. Versuch doch mal den Code 
ohne diese Sprünge zu realisieren. Viel Erfolg

von Axel L. (lemmi4711)


Lesenswert?

@ Coder:

Ich bin der Meinung, daß es egal ist, ob man neuerdings die Sprungmarken 
oder GOTO nicht mehr verwendet.

Hauptsache ist, der Code funktioniert!!!
Und dem Compiler ist das egal.

Wenn Du den Code ohne GOTO, u.s.w. haben möchtest, kannst Du ihn ja 
gerne umprogrammieren und ihn hier ins Netz stellen.



Axel.

von Sebastian (Gast)


Lesenswert?

Hallo Axel,

lass dich nicht runterziehen, hier gibts immer irgendwen der seinen Senf 
dazu abgibt und abbscheisst. Von denen kommt fast nie was Produktives.

von Stefan Salewski (Gast)


Lesenswert?

>Ich bin der Meinung, daß es egal ist, ob man neuerdings die Sprungmarken
>oder GOTO nicht mehr verwendet.

Genauso egal wie die Farbe der Isolierung bei elektrischen Leitungen.

Für näheres siehe
http://de.wikipedia.org/wiki/Sprunganweisung

von Axel L. (lemmi4711)


Lesenswert?

Stefan Salewski wrote:

> Genauso egal wie die Farbe der Isolierung bei elektrischen Leitungen.


Vorsicht!!!!
Bei 230V~/400V~ sollte man die allgemein gültigen Farbregeln verwenden, 
sonst könnte es am anderen Ende gefährlich werden, wenn am einen Ende am 
Grün-gelben Spannung eingespeist wird....

Bei Kleinspannungen stimme ich aber dem zu.

Aber nun schweifen wir von Thread ab...



Wenn genug Interesse am Schaltplan des RGB-Moodlight besteht, 
veröffentliche ich ihn auch gerne hier.


Axel.

von Sepp Obermair (Gast)


Lesenswert?

Was spricht dagegen die Gotos gegen while Schleifen zu ersetzen? so 
könnstest du während der Laufzeit auch noch andere Moden einstellen

von Axel L. (lemmi4711)


Lesenswert?

Mal wider eine Abschweifung vom Thread.......

Sepp Obermair wrote:
> Was spricht dagegen die Gotos gegen while Schleifen zu ersetzen? so
> könnstest du während der Laufzeit auch noch andere Moden einstellen

Eins nach dem anderen....

Im Prinzip habe ich nichts dagegen die gotos gegen while Schleifen zu 
ersetzen.

Ich habe nur was gegen blöde Meckerköpfe, die nur rumblöken und nicht 
mal einen vernünftigen Vorschlag machen können.

Ich habe diesen Code nun mal mit Gotos erstellt, da es mir erst mal 
einfacher erschien. Meine C-Kenntnisse sind eben halt nur 
Grundkenntnisse.

Und wenn ich dann mal einen schönen Code zum Laufen bekomme (ganz 
stolz), diesen poste und dann als erstes nur 'ne blöde Blökerantwort 
bekomme, wird mir kotzübel!

Jeder fängt mal klein an, und die Goto Sprünge sind nun mal so schön 
einfach...
Man könnte ja mal im GCC-Forum einen entsprechenden Thread mit der Frage 
"Goto oder While? - Was ist einfacher oder besser?" aufmachen.

Genau - das mache ich gleich mal... Da bin ich neugierig, was dabei 
rauskommt.


Ich hoffe die Abschweifungen hören mal auf.....................

Axel.

von Stefan Salewski (Gast)


Lesenswert?

>Ich habe nur was gegen blöde Meckerköpfe, die nur rumblöken und nicht
>mal einen vernünftigen Vorschlag machen können.

Solch einen habe ich in diesem Thread nicht gesehen.
Wenn man als Anfänger etwas veröffentlicht, muss man mit Kritik rechnen. 
Man sollte diese in der Regel auch ernst nehmen.

>Man könnte ja mal im GCC-Forum einen entsprechenden Thread mit der Frage
>"Goto oder While? - Was ist einfacher oder besser?" aufmachen.

Hast Du meinen obigen Link gelesen?
Dann sollte sich der neue Thread erübrigen.

von Axel L. (lemmi4711)


Lesenswert?

@ Stefan Salewski:

Den Link habe ich gelesen.

Auch dort gibt es keine Ächtung von 'goto' Anweisungen.

Aber ich habe solch folgende Kommentare schon öfter erlebt und bisher 
waren das alles Poster ohne reelle Sachkenntnis.

>Coder (Gast) wrote:
>Versuch doch mal den Code ohne diese Sprünge zu realisieren.

Wenn so etwas kommt, kann man das schnell in den falschen Hals kriegen. 
Vor allem, wen der Poster senen Namen nicht nennt und sich hinter einem 
Pseudonym versteckt.

Mit Kritik habe ich gerechnet, aber dies sollte aber in angemessener 
Weise erfolgen. -> siehe Deine Posts.

Ich erkenne, daß Du angemessen reagierst und sachlich bleibst.

Der neue Thread sol zeigen, wie andere darüber denken und ist ein 
interessanter Denkansatz.

Aber mal ehrlich, warum denn so kompliziert eine mehrzeilige Schleife 
basteln, wenn es so schön einfach mit einer einzigen Zeile geht.


Axel.

von Timo B. (spida)


Lesenswert?

Vielleicht willst du einen Blick auf das Fnordlicht 
(http://www.lochraster.org/fnordlicht/) werfen.

von Coder (Gast)


Lesenswert?

Hallo Axel,

schade dass du meinen Tipp so falsch verstehst :( Ich wollte doch dich 
doch lediglich darauf hinweisen, dass man in den meisten Fällen nicht zu 
einem goto greifen sollte (Soll nicht heißen, dass es dafür auch seine 
Berechtigung gibt).
Also bitte nicht als persönlichen Angriff werten.

PS: Da ich beruflich programmiere behaupte ich mal, dass ich deshalb 
schon etwas Sachverstand besitze.

Schönen Restfeiertag zusammen.

von Michael K. (kunze)


Lesenswert?

Hi Axel,

genau sowas habe ich gesucht... sag mal kannst du mir eventuell deinen 
Bauplan und/oder eine Liste der benötigten Elektronikteile schicken.

Würde das gerne nachbauen :D

Gruß
Michael

von Andreas S. (sean1587)


Lesenswert?

Hallo

Nettes Programm :)

Ich blick bei den Registern mit bin-Wert (zB.:0b11110001) nicht ganz 
durch.
Wie kann ich TCCR1A, TCCR1B, TCCR2 auf invertierte PWM umstellen?

von Axel L. (lemmi4711)


Angehängte Dateien:

Lesenswert?

Hallo, Leute...

nach einiger Zeit in Abwesenheit, bin auch ich mal wieder da.

Anbei habe ich auf Wunsch einiger User den aktuellen Sourcecode, die 
Hex-Datei und die EAGLE-Dateien beigefügt.

Viel Spaß damit.

Axel.

von Axel L. (lemmi4711)


Lesenswert?

Andreas Scheuerer wrote:
> Hallo
>
> Nettes Programm :)
>
> Ich blick bei den Registern mit bin-Wert (zB.:0b11110001) nicht ganz
> durch.
> Wie kann ich TCCR1A, TCCR1B, TCCR2 auf invertierte PWM umstellen?

Hallo,

das Datenblatt sagt eigentlich alles...

Die folgenden Register müssen dafür eingestellt werden:

COM1A1, COM1A0   =>  TCCR1A
COM1B1, COM1B0   =>  TCCR1B
COM21 , COM20    =>  TCCR2

     1,0         => nicht invertierte PWM
     1,1         => invertierte PWM


Gruß, Axel.

von Andreas S. (sean1587)


Lesenswert?

Ok, danke sehr

von Manfred R. (manfredr)


Lesenswert?

Hier gibt es ebenfalls ein RGB-Moodlight, allerdings mit tiny2313 und 
programmiert mit BASCOM:

http://www.amhamberg.de/moodlight.shtml

Ggrüsse,
Manfred

von Gast (Gast)


Lesenswert?

> Aber ich habe solch folgende Kommentare schon öfter erlebt und bisher
> waren das alles Poster ohne reelle Sachkenntnis.

Ja, das redet man sich eben ein, wenn man verletzt ist ... Nimm die 
Kritik ernst, denn schließlich möchtest du noch was lernen.

Aber mal im Ernst ... Wie schwer ist es mehr Sachkenntnis zu besitzen 
als ein Anfänger, der das auch zugegeben hat, dass er einer ist?

Sei weniger beleidigt und gewöhn dich daran, dass man immer kritisiert 
wird, bei allem, was man macht. Wenn du das nicht möchtest, dann 
veröffentliche nichts mehr ...

Grüße
Gast

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.