DMX-Receiver 27-Kanal mit ATmega8535

  • Hey Pesi und Jens


    ihr sprecht mir schon wieder aus den Gedanken.


    HSB Wert rein - RGB kommt mit Werten 0-255 Raus,
    diese schick ich dann an eine 256stellige Lookup Tabelle
    die mir das ganze dann an eine an das menschlichen Auge angepassten 12Bit Wert ausspuckt.


    So werde ich das ganze zumindest testen, denke es sollte die Farbtreue sogar verbessern ;)


    Greetz


    PS: Ich denke ich kann die Sammelbestellung wohl bald starten =) Wenn wir alle Matrixen bauen wollen xD

  • HSB Wert rein - RGB kommt mit Werten 0-255 Raus,
    diese schick ich dann an eine 256stellige Lookup Tabelle
    die mir das ganze dann an eine an das menschlichen Auge angepassten 12Bit Wert ausspuckt.

    So rum ist es aber falsch - Du musst erst bei HSB *nur* den B-Kanal mit der tabelle "behandeln" und dann mit dem resultierenden Wert von HSB nach RGB umrechnen.


    Wenn Du erst in RGB umrechnest, und dann R, G und B einzeln jeweils durch die Kurve schickst, *dann* kommt es ja zu den Farbverschiebungen!


    So werde ich das ganze zumindest testen, denke es sollte die Farbtreue sogar verbessern ;)

    Wenn's richtig gemacht ist (siehe oben), dann ja - ist dann sowas wie die Gamma-Korrektur bei nem PC-Monitor...


    P.S.: bin gerade am Layouten - nächste Hürde ist dann, ob mein Drucker so feine Strukturen sauber rausbringt (ist ziemlich viel Staub drin, im Drucker...)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Das war hier, ganz unten - wundert mich nicht, dass Du das überlesen hast, da kommen erst mal etliche Zeilen an Benkly gerichtet... ;)


    Nein, eigentlich hab ich den Beitrag gar nicht gelesen, musste ich erstmal nachholen :)

    Zitat

    was ist WPF...? - ich bin halt kein Informatiker, also ich habe ehrlich gesagt keine Ahnung, wo ich dieses Programm dann laufen lassen sollte...?! - ist das Java oder was (nicht lachen, bei Hochsprachen bin ich halt echt der Depp :D)?


    Mal von oben runter:
    Ich programmiere für das .NET Framework (ist sowas wie Java, nur mMn viel besser und eben von Microsoft). Programmierbar ist das mit vielen Sprachen, ich nehme C# - ist auch die bekannteste. WPF ist eine relativ neue Libary für moderne User Interfaces. Geniale Sache, was ich damit aber eigentlich sagen wollte ist, dass ich halt "irgendwie" damit die Ausgabe ausspucke - sonst nix. Programmiert wird das ganze mit dem Visual Studio (ist auch in ner richtig guten kostenlosen Version verfügbar). Willst du dir eine eigene Portbelegung generieren müsstest du also den Quellcode anpassen, da ich zu faul war eine ordentliche Eingabemöglichkeit zu programmieren :P
    Lässt sich natürlich auf Wunsch auch noch realisieren, sobald ich Zeit hab.

    Zitat

    wegen den 244 Hz: ja, das ist komisch - bei meiner indirekten Beleuchtung mit Rebels im Bad sehe ich die 244 Hz gar nicht flimmern, bei ner einzelnen 5-mm-RGB-LED, die zum testen an oben erwähntem 8-MHz-Controller hängt, sehe ich die 300 Hz noch deutlich flimmern (beim bewegen, wenn ich direkt in die LED schaue) - könnte also auch von der Fläche abhängen, wenn es keine scharfen Kanten gibt, dann auch keinen so ausgeprägten Stroboskopeffekt...? - Was hast Du da eigentlich an LEDs dran...?


    Während der Entwicklung mit meinem kleinen Kanal-Testmodul: Rote 5mm Slotty (die einzige Led aus der Slotmachine, die ich aktuell verwende :D ), Beine in eine Pollin-20mA-KSQ geschraubt (hab ich bestellt, um sie nachzubauen, jetzt ist sie mein Testmodul) und ans andere Ende zwei Kabel mit Krokoklemmen. Für RGB hab ich eine von Bennys viereckigen Platinen hier liegen, aber damit hab ich noch nicht getestet, ob ich den Effekt auch sehe.

  • Pesi


    Was ist den die uC Programmiersprache deiner Wahl?
    Ich selbst arbeite im mom nur mit C/C++ (gcc, g++ compailer)


    evtl kann man ja ma zusammen an einer sinvollen routine HSB rein RGB 12Bit raus arbeiten.


    jens


    Juhu noch ein C# Progger, wenn was anfällt, kann man auch gerne mal zusammen arbeiten =)

  • Was ich von Pesi bisher gesehen hab war in Assembler (sollte er aber ruhig nochmal bestätigen ^^ ).


    Wenn es auf die Matrix zugeht könnte man sich da sicher etwas zusammentun, wäre ja langweilig, wenn die nicht vom Rechner ansteuerbar wäre ;)
    Ansonsten steht bei mir auch noch meine Zimmerbeleuchtungs-Software an. Muss zwar erst die Hardware fertigmachen, aber danach ist natürlich die Software dran.

  • Also für den, den es interessiert, hätte ich hier mal eine Lookup Tabelle 8Bit auf 12Bit
    Das ganze basiert auf folgender Formel, ganz interessant http://www.mikrocontroller.net/articles/LED-Fading



    Greetz

  • Auf den ersten Blick sehen die ganzen 1en am Anfang ziemlich seltsam aus, aber Sinn macht es schon - immerhin geht es ja grade dadrum, dass die zweite Stufe nicht doppelt so hell ist wie die erste. Ich frage mich grade, ob das die RGB-Mischung beeinflusst? Farbtheorie ist nicht so mein Ding, auf der langen Listen von Sachen, um die ich mich noch kümmern muss *g*


    Und, wenn es auch überhaupt nicht zum Thema passt, ich bin dafür, dass du dir mal nen Avatar suchst :)

  • So Jens nun mit Avatar und Beruf :P


    Wegen der Tabelle, das ganze ergibt sich daraus das man den Startwert 1 insgesamt 256 mal mit 1,03xxxxx multipliziert.
    Wie gesagt auf dem angegebenen Link ist das recht anschaulich dargestellt, und auch nen Excel Sheet mit dabei um sowas zu berechnen.
    Hier nochma ne Grafik zu den Werten oben. Man beachte der PWM Wert auf der y-Achse ist log.

  • Eine (zwei) kurze Frage(n) zur Software:
    - ist ein Strobeeffekt vorgesehen/enthalten? Falls nicht, lässt sich das einfach dazu bauen?
    - ist ein Masterdimmer vorgesehen/enthalten? Falls nicht ...?


    Danke


    Darf ich die bisherigen Antworten so interpretieren, dass beides möglich ist ... und sich auch freundlicherweise jemand bereit erklärt, das noch in die Software einzubauen?
    Dann kann ich mich ja hinsetzen, und ein Layout für SMD dafür zusammen zu schieben ;)


    Womit nun auch geklärt ist, welcher Receiver es für meine Zwecke werden wird :thumbup:

  • Darf ich die bisherigen Antworten so interpretieren, dass beides möglich ist


    Jepp

    ... und sich auch freundlicherweise jemand bereit erklärt, das noch in die Software einzubauen?


    Theoretisch schon... praktisch müsste ich dann gucken, wann ich dazu komme :D
    Für dieses WE steht erstmal die Planung des Layouts an. Wenn du fleissig mithilfst / Fragen beantwortest (falls ich denn welche hab) schaffe ich es vllt. noch Strobo und Dimmer einzubauen ;)




    @nighty: Die Grafik zeigt das super, danke :)
    In die Seite konnte ich noch nicht reingucken, bin hier eigentlich noch am arbeiten. Also arbeiten-arbeiten, nicht basteln-arbeiten :D
    Und das Forum nebenbei geöffnet, um das ganze angenehmer zu machen :thumbup:


  • Theoretisch schon... praktisch müsste ich dann gucken, wann ich dazu komme :D ...


    Nur keine Hektik, meine Bude hat noch offene Wände. Jetzt sind erstmal Heizungs- und Wasserleitungen fällig :D


    Wenn du fleissig mithilfst / Fragen beantwortest (falls ich denn welche hab) schaffe ich es vllt. noch Strobo und Dimmer einzubauen ;)


    Ich sitz immer noch dämlich grinsend vorm Monitor. Was soll ICH bitte dabei helfen? Ich weiss, was ein µC ist, kann auch nach Anleitung nen Code rein bruzeln, aber damit sind meine Kenntnisse schon am Ende. Über die Hälfte der Beiträge hier im Thread sind böhmische Dörfer für mich ... ne, nicht wirklich, böhmische Dörfer kenne ich wenigstens vom Durchfahren :P

  • Ahhhh, hört sich auch nicht schlecht an =)
    Na da gibt es aber nur ein, raus ausm Forum und laufen lassen...
    Wenn ich Zeit finde werde ich auch noch nen SMD Layout machen :D
    Wobei ich arbeitstechnisch gerade 3fach überbucht bin und eigentlich schon längst im Bett liegen sollte xD

  • Das war auf das Layouten bezogen - du wolltest mit dem Layouten deiner Platine anfangen, und ich will am WE genau das selbe für eine nicht-SMD-Version machen ;)


    Achso, klar, sowas geht noch ganz gut. Hab ja mit dem Kram jahrelang die Brötchen verdient.


    Edit:
    Nope, bringe den Ersties Programmieren bei (Tutorenstelle Grundlagen der Programmierung I) - aktuell korrigiere ich deren Übungszettel :evil:
    Würde die gerne morgen Mittag zurückgeben.


    Mit der Arbeit siehts bei mir ähnlich mies aus (was die Zeit betrifft): Tagsüber tel. Support und Baustelle, nachts Bereitssschaft und "richtige" Arbeit. Dabei hab ich glücklicherweise (???) oft genug Zeit, für Forum und andere Arbeiten am Rechner.

  • Nope, bringe den Ersties Programmieren bei (Tutorenstelle Grundlagen der Programmierung I) - aktuell korrigiere ich deren Übungszettel :evil:

    Machs einfach so wie ein Prüfer bei meiner Abschlussprüfung. Es musste Pseudocode geschrieben werden (alternativ Struktogramm) über mehrere Seiten, ein Prüfer war dabei, mit dem Standpunkt "geht so nicht = 0 Punkte", selbst wenn man sich nur bei nem Variablennamen verschrieben hatte oder so. Jede IDE hätte das sofort angezeigt und jeder Compiler freundliche Warnings ausgespuckt. Null Punkte bei nem Schreibfehler oder Typo fand ich schon sehr hart.


    Welches Problem genau damals zu lösen war, weiß ich leider nimmer... nach der Prüfung haben wir uns mit der ganzen Klasse getroffen und ordentlich hochprozentige Reset-Flüssigkeit eingefüllt, um den Kopf wieder frei zu bekommen :D

  • Das mit dem Tutorium ist nicht so tragisch - Ich kriege die Zettel Montags, Donnerstags ist die Übung. Wenig Zeit hab ich eher wegen Uni und dem anderen Nebenjob - IT-Support bei Privatpersonen und kleinen Unternehmen. Ist halt Glückssache was da grade los ist, heute war ich bis in den Abend unterwegs. Deshalb sitze ich auch noch hier, ursprünglich war das Korrigieren für die zweite hälfte des Nachmittags geplant ^^
    Freue mich schon aufs Wochenende, ich muss es einfach schaffen da mein Ambilight in Betrieb zu nehmen :D


    Edit:
    @Domi: Thx, "meine Ersties" sind eigentlich ganz nett - das ist so erholsam, die können alle schon programmieren :D
    Nen bisschen zugucken, wie die friedlich vor sich hinprogrammieren, etwas unterhalten, vier, fünf Fragen beantworten (von der ganzen Gruppe) und ein oder zwei stellen (pro Person), fertig.

  • Was ich von Pesi bisher gesehen hab war in Assembler (sollte er aber ruhig nochmal bestätigen ^^ ).

    Ja, stimmt.

    Also für den, den es interessiert, hätte ich hier mal eine Lookup Tabelle 8Bit auf 12Bit
    Das ganze basiert auf folgender Formel, ganz interessant http://www.mikrocontroller.net/articles/LED-Fading

    Damit hatte ich mich auch schon mal intensiv beschäftigt, die Tabellen von mikrocontroller.net haben mir nicht soo gefallen, habe dann eigene erstellt - bei Interesse kann ich's mal raussuchen, ist in irgendnem Uralt-Thread drin (vor 1,5 Jahren oder so)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Kommt noch - ich will da ja noch nen Text zur Erklärung dazu schreiben, erst überlegen, und der ganze Thread gehört mal "aufpoliert"... da fehlt ja noch mehr, z.B. auch der 27-Kanal-Receiver mit DIPs...


    Da hatte ich nur bis jetzt nicht so die Zeit und auch Motivation dazu, das Zeug in der Lobby geht eh' immer irgendwie unter, der DMX-Thread hat *insgesamt* ca. so viele Zugriffe wie ein beliebiger Thread über die Slotmachine *pro Woche*...

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!