Probleme mit AVR+DMX Empfang

Alles was mit Beleuchtungstechnik zu tun hat
Antworten
lucas
Beiträge: 4
Registriert: 30.10.2011, 01:41

Probleme mit AVR+DMX Empfang

Beitrag von lucas » 04.11.2011, 21:44

Hallo Leute,

ich habe die DMX512-RGBWLED Schaltung+Code als Vorlage verwendet um einen Einkanal DMX-Switch zu bauen.
Leider will mein AVR partout das DMX nicht korrekt empfangen. Eine "Debugausgabe" in Form von Togglen einer LED in der DMX Empfang Routine zeigt mir, dass anscheinend nach dem Frame Error kein Null empfangen wird:

Code: Alles auswählen

ISR (USART_RX_vect) {
....

    if (USARTstate &(1<<FE)) {                      //check for break
        OKAY HIER geht er rein
    }
    else if (DmxState == BREAK) {
        hier auch noch....
        if (DmxByte == 0) {
            aber hier nicht mehr...
....
        }
        else gDmxState= IDLE;
    }
....
}
Anbei auch mein Schaltplan. Ich habe schon den AVR getauscht, den Code zigmal aufgespielt und auch die Fuses Kontrolliert.
Ich setze (entgegen dem Schaltplan) einen 16Mhz Quarz ein, im Makefile und auch in der main.h habe ich F_CPU sowie F_OSC angepasst.
Laut AVR Handbuch sind 16Mhz auch 0% Error Rate bei 250kbaud...
Ich bin ratlos.
Lasse ich den AVR den Clock auf PORTD2 ausgeben, sehe ich auf dem Oszi 16Mhz...
Fuses: LFUSE=0xFF HFUSE=0xDF EFUSE=0xFF


Hat irgendwer noch eine Idee, wo es hängt?

DMX Senden tue ich mit dem DE-USB Interface. Meine sonstige DMX Hardware funktioniert einwandfrei, auch eine Änderung der Timing-Optionen bringt keine Hilfe.
DMX Polung habe ich schon getausch, und am MAX481 Pin 1 habe ich auch das DMX Signal (respektive an PORTD0).

*ratlos* und vielleicht schon Blind...
Zu Hilfe! :)

Grüße
Lucas
Dateianhänge
schaltplan.png
schaltplan.png (27.14 KiB) 2878 mal betrachtet

Benutzeravatar
admin
PC_DIMMER-Entwickler
Beiträge: 1810
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: Probleme mit AVR+DMX Empfang

Beitrag von admin » 04.11.2011, 22:55

Hi Lucas,


soweit sieht die Hardware eigentlich OK aus. Und wenn Du die Quarztakte überall angepasst hast, sollte das auch kein Problem sein... wird denn im Empfangs-Interrupt das Byte "DmxByte" überhaupt beschrieben? Hier der Auszug aus dem Originalcode. Die Zeile mit dem Kommentar " // get data" meine ich...

Code: Alles auswählen

// *************** DMX Reception ISR ****************
ISR (USART_RX_vect)
{
	uint8_t USARTstate= UCSRA;						//get state
	uint8_t DmxByte= UDR;							//get data
	uint8_t DmxState= gDmxState;					//just get once from SRAM!!!
	 
	if (USARTstate &(1<<FE))						//check for break

Wenn das alles so auch in deinem Code ist, dann lade doch mal testweise die Original-Firmware in den Chip und teste diese mal (natürlich mit im Code angepasstem 16 MHz Quarz). Bei DMX-Empfang sollte PD6 während Änderns eines Kanalwertes auf High gezogen werden.

Wenn das auch nicht klappt, liegts an was anderem. Dann wirklich noch einmal jede kleine Lötstelle nachprüfen. Sollte das aber funktionieren, schick mir einfach mal deinen gesamten Code, dann kann ich da mal drüberschauen.


beste Grüße,
Christian :wink2:

lucas
Beiträge: 4
Registriert: 30.10.2011, 01:41

Re: Probleme mit AVR+DMX Empfang

Beitrag von lucas » 05.11.2011, 01:13

Hm, dein Code funktioniert auch leider nicht.
Liegts vielleicht daran, dass ich unter Linux direkt mit avr-gcc kompiliere?
Ich hatte die Compiler Flags schon vermutet, aber selbst die aus dem AVR-Studio File in mein Makefile zu übernehmen bringt keine Lösung.
Magst du mir mal dein Hex File geben? (Am besten Fixe Adresse auf Eins)
Ich müsste dann ja zumindest an den PWM Ausgängen messen können.
Die rote LED (DMX Error) muss mit 50ms Toggeln?

Benutzeravatar
admin
PC_DIMMER-Entwickler
Beiträge: 1810
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: Probleme mit AVR+DMX Empfang

Beitrag von admin » 05.11.2011, 15:28

Hi,

ich hab grad keinen Compiler hier, aber ich hab noch ein kompiliertes Hex-File für dich. Leider ist es für 8Mhz, sodass du zum Testen nen anderen Quarz einbauen müsstest...

In der Eeprom-Datei ist bereits Startadresse 1 vorgegeben.

viel Erfolg,
Christian
Dateianhänge
RGBLED_8Mhz.zip
(2.01 KiB) 96-mal heruntergeladen

lucas
Beiträge: 4
Registriert: 30.10.2011, 01:41

Re: Probleme mit AVR+DMX Empfang

Beitrag von lucas » 08.11.2011, 21:41

Vielen Dank. Ich denke diese Woche kommt noch kram von Reichelt, da ist ne Auswahl Quarze dabei.
Werde es dann mal direkt testen.

Antworten