Gast
#230781
Hi,
da mein Display ja jetzt läuft, mach ich mich ans nächste Problem, und
zwar: Wie kann ich erkennen ob ein DMX Signal verpolt ist. Im moment
hole ich die DMX Daten über folgenden Quelltext (Bascom) rein:
Rec_isr:
$asm
.def Uart_status = R16
.def Uart_byte = R17
.def Uart_temp1 = R18
.def Uart_temp2 = R19
IN Uart_status,USR
IN Uart_byte,UDR
SBRC Uart_status,FE
RJMP Asm_reset
RJMP Asm_Loop1
Asm_reset:
LDI Uart_temp1,$00
STS {Dmx_count_temp} , Uart_temp1
STS {Dmx_byte} , Uart_byte
RJMP Asm_exit
Asm_loop1:
STS {Dmx_byte} , Uart_byte
Asm_exit:
$end Asm
If Dmx_count_temp <> 0 Then
Incr Dmx_count
Dmx_rxd = 1
If Dmx_adr = Dmx_count Then
Dmx_buf = Dmx_byte
End If
Else
Dmx_count = 0 : Dmx_count_temp = 1
End If
Return
Der Quelltext stammt aus irgendeinem Dimmer-Projekt hier aus dem Forum.
Das funktioniert auch alles schon prima, jetzt aber die Frage, wie ich
erkennen kann, ob das DMX Signal verpolt ist. Anbieten würde sich ja da
sowohl die Erkennung der Polarität der Start & Stop Bits als auch die
Erkennung von Mark und Break. Nur wie mache ich das am besten, bzw. ist
das so, mit dem Quelltext möglich?
Danke für eine Antwort schon mal!