DMX -> Keine Ausgabe

  • Guten Abend,


    ich bin gerade wiedermal am Basteln. Meine Anlage sollte so funktionieren, dass ich Daten per DMX an den Hauptcontroller sende und dieser dann die Daten per I2C weiter sendet.
    Was Funktioniert (getestet): DIe Senderoutine per I2C, das Sendegerät für DMX.


    Sobald ich Daten von DMXControll ausgeben und diese dann per I2C weiter senden lasse funktioniert nichts. Wenn ich am Stecker bisschen rumwackel oder nur eines der beiden DMX Signale ( + oder - ) anlege Flackern auch irgend welche Leds, ohne jeden Sinn.
    Ich weis es nicht ob es ein Hard- oder Software Fehler ist. Die Hardware sollte jedoch nach meiner Überzeugung funktionieren, denn sie tut es auch schon in anderen Schaltungen.


    Kennt jemand dieses Verhaltensmuster und könnte mir mal nen Tipp geben woran es liegen kann oder wenigstens welche Art von Fehler es sein könnte ( Übertragung, software .....)


    Über jede Hilfe bin ich sehr Dankbar.

  • Mal DMX+ und DMX- tauschen - sind die vertauscht, ist es nicht so, dass gar nix geht, sondern dann kommt meist wildes Geflacker dabei raus...


    Einfach mal ausprobieren, oft kommt man auf die einfachsten Sachen nicht.. ;)


    Problem könnte auch eine Doppelerdung sein, dazu mal bei der DMX-Verbindung GND auftrennen, wenn obige Maßnahme nix hilft...


    geht's dann immer noch nicht, mal weitersehen - DMX-Splitter mit galvanischer Trennung hast Du nicht zufällig da...?

    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!

  • So dank dir pesi.


    Einen doofen Fehler hab ich schon behoben, Ich hatte den 3 Poligen Stecker falsch belegt. Jetzt, wenn ich DMX + und DMX- vertausche, Leuchtet alles Weiß auf und Flackert wenn ich etwas bewegtes Ausgeben will ( willkürlich weiß), wenn ich das DMX Signal richtig anlege, gehen nur die ersten paar Leds. Aber auch nicht in der Richtigen fabe, sie blinken auch viel zu schnell.


    Dank für eure Hilfe


    MfG

  • Und noch mal was zu den einfachsten Sachen: Du hast schon nen Quarz an dem µC....? Und den Usart richtig eingestellt..?


    Weil wenn da was nicht passt (z.B. Usart auf die falsche Zahl Stopbits oder Baudrate eingestellt, oder Takt stimmt eben nicht genau, wegen fehlendem Quarz), dann kann's durchaus auch sein, dass der trotzdem was empfängt, aber dann halt eben nur wirres Zeug... ;)

    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!

  • Hui.....


    es funktioniert schon mal teilweise. Wenn ich den internen Quarz mit 8 Mhz einschalte und benutze gibt er mir das richtige aus.


    Wenn ich jetzt jedoch auf meinen externen Quarz 16MHz umstelle macht der garnix mehr. Ich hab jetzt schon den Quarz, und die Kondis getauscht, jedoch ohne Erfolg. Ich habe nach möglichen Lötbrücken gemessen, jedoch stimmt alles.
    Ich verwende für meinen externen die Fuses: low: FF, High, D9 und mit dem internen: low: E4, High D9.



    .... Das ist doch zum Mäuse melken


    Ich hab je ein wenig PWM fähige Hardware dahinter geklemmt, das hat damit aber nichts zu tun, weil sie ja gar nicht erst angesteuert wird -> Keine PWM -> keine Störfrequenz. Da liege ich doch richtig, oder?



    EDIT: Es hat den Anschein, als ob der Quarz noch nie Funktioniert hätte.

  • es funktioniert schon mal teilweise. Wenn ich den internen Quarz mit 8 Mhz einschalte und benutze gibt er mir das richtige aus.
    Wenn ich jetzt jedoch auf meinen externen Quarz 16MHz umstelle macht der garnix mehr.

    Ja, dann ist da wohl die Baudrate falsch eingestellt - womit ist das gleich noch mal programmiert, C, asm oder Bascom...? - Falls Bascom, musst Du dem natürlich dann auch mitteilen, welchen Quarz Du dran hast (da gibt's irgendsonen Befehl....), sonst berechnet es die Einstellung für den Usart natürlich falsch...

    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!

  • ... bei dem Projekt läuft auch gerade alles schief.... und ich komm als nicht drauf, dass ist das schlimme...


    Ich hab das alles eingestellt:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $baud = 250000


    Wie gesagt, ich hab das jetzt gerade mit dem internen Quarz auf 8 MHz laufen, da funktioniert alles genau so wie es soll. Nur sobald ich den externen Quarz per Fusebits und im Programm Code einstelle, funktioniert rein gar nichts mehr.
    Hab erstmal die Hardware gecheckt, doch da hab ich keinen Fehler finden können. In der Software Spiel ich jetzt auch schon ewig rum und bekomm es nicht gebacken.


    ich programmiere mit Bascom.

  • Ah, OK, dann liegt's wohl wirklich an dem Quarz - evtl. ist der einfach kaputt...?


    Mach' doch mal irgendein ganz simples Programm drauf, z.B. nur eine LED blinken lassen, und stell' dann auf den Quarz um - wenn die dann nicht mehr blinkt, dann läuft da der µC tatsächlich nicht, dann muss da irgendwo das Problem liegen - weil ansonsten sollte das ja alles passen von den Einstellungen und der restlichen HW her...

    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!

  • Da deine Angelegenheit ja nun Pesis Hoheitsgebiet (DMX) verlassen hat, erlaube ich mir auch ein paar Worte darüber zu schreiben.
    Der Ansatz einfach eine LED mit bekanntem Takt blinken zu lassen kam mir auch zuerst. Allerdings gehe ich jetzt einfach mal davon aus, dass die LED bei dir blinken wird; schließlich funktioniert das Flashen ja noch nachdem du auf den Quarz gefused hast. Demnach muss dein Quarz ja schwingen.?
    Die Frage die ich mir stelle ist, ob er das nun richtig tut; was du im Groben ja durch die Blinkfrequenz feststellen solltest. Du sagst du hast die Hardware überprüft; haben die Kondensatoren sicher um die 22pF? Ansonsten einfach mal mitsamt dem Quarz tauschen, kann nicht schaden. Ob die Fusebits geeignet sind, kann ich leider nicht beurteilen. Da würde ich als Nächstes suchen.

  • Da deine Angelegenheit ja nun Pesis Hoheitsgebiet (DMX) verlassen hat

    ?( - Das ist doch nicht "mein Hoheitsgebiet", da kann doch gerne jeder was dazu schreiben... 8o


    schließlich funktioniert das Flashen ja noch nachdem du auf den Quarz gefused hast. Demnach muss dein Quarz ja schwingen.?

    Das stimmt natürlich, da hatte ich gar nicht dran gedacht... ;) - wird immer seltsamer, das Ganze...


    ich werfe jetzt einfach mal das Wort "Neni" in die Runde, weil er dann automatisch hier rein schaut (wetten...? ;)) - evtl. liegt's ja auch am Bascom, dass man hier noch spezielle Sachen je nach 8 MHz oder 16 MHz beachten muss - benutzt Du so ne eigene DMX-Routine zum Empfangen, oder diesen Bascom-Befehl...?

    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!

  • Huch, da wurde ja wieder mal mein Name gerufen ;) .


    Zum Problem:
    Naja, es ist nicht ganz so einfach, ohne Code und Schaltplan mögliche Fehlerquellen zu finden. Allerdings würde ich aufgrund der bisherigen Fehlerbeschreibung tatsächlich auch auf ein Problem mit dem Quarz-Oszillator am AVR tippen. Also ich würde für den externen Quarz-Oszi unbedingt auch die CKOPT-Fuse programmieren (CKOPT = 0), was für das High-Byte dann einen Wert von C9 (anstatt D9) ergeben würde. Das Low-Byte bleibt auf FF. CKOPT = 0 schaltet den externen Quarz-Oszi auf Full-Swing, was eine deutlich stabilere und störunempfindlichere Oszillation (bei etwas erhöhtem Stromverbrauch) ermöglicht und wird eigentlich für den externen Quarz-Oszi bei > 8 MHz im Atmel-Datenblatt empfohlen.


    Gruss
    Neni

  • Hey leute,


    danke für die Hilfe. Ich hatte gestern mal das Paket, Quarz + Kondis getauscht, danach ging es immer noch nicht ( ich hab auch mit dem CKOPT Fusebit herrum gespeilt hilft aber auch nichts) Danach ist mir eingefallen: Hups ich hatte mal ausversehen 2,2 pF anstatt 22pF gekauft ok da ich mir nicht sicher war und mein Messgerät nur bis 0,00 MikroF messen kann, hab ich schnell mal 2 neue eingelötet, bei denen ich mir sicher bin, dass sie 22pF sind. Hat aber alles nichts gebracht.


    Zur empfangsroutine der DMX Daten, ich verwende die vorgefertigten Daten von Gerolds Seite. Die Ausgabe erfolgt mit 400kHz I2C, hierfür wurden die Hardware Pins ( samt Hardware ^^) genommen.


    Ich werde später nochmal den Quarz tauschen, ich kann es mir auch nicht anders erklären, dass nichts funktioniert.


    Ich hab auch schonmal geschaut, ob vielleicht eine DatenLeitung ( PWM) unter oder über dem Quarz entlang läuft aber nichts. Die ganzen Daten/Getakteten Leitungen sind in ein paar cm Entfernung. Der Quarz selbst ist DIRekt neben dem AVR platziert.


    Da ich sehr viele Leds takte, war auch schon meine Überlegung, dass auf dem GND eine zugroße restschwingung vorhanden ist und das irgend wie den Quarz stört. Doch es funktioniert ja nichts -> Keine Leds -> keine restschwingung auf GND.


    EDIT: Ich hab gerade mal getestet, wenn ich alles auf externe 16MHz umstelle und eine led blinken lasse funktioniert dies auch nicht./Den ATmega hab ich auch mal Spasseshaber getauscht, nicht das noch irgend was mit den 2 Pins vom Quarz war. -> keine reaktion


    EDIT2: Also auch mit anderen Quarzen geht es nicht ( hab sie dran gehalten..... )