Hoelscher-Hi DMX Code Anpassen

Gast #3135172
Lesenswert?

Hallo,

Also ich würde gerne eine LED per DMX steuern, doch scheitere gerade an 
der Programmierung. Deshalb hab ich nun auf was fertiges 
zurückgegriffen. Ich bin total neu in Mikrokontrollern und co.

Hier der Code (C Version): 
http://hoelscher-hi.de/hendrik/light/ressources.htm dann unter AN012: 
DMX-Empfang mit AVRs (CD Symbol=Code, PDF Symbol=Anleitung)

Ich hab folgendes angepasst:

demo_dmx_in.c
#include <avr/io.h>
#include "C:\Users\Xotix\Downloads\rxd\C\lib_dmx_in.h"
DmxAddress= 1; (kommentar enfernt)
//get_dips(); (auskommentiert da ich ja keinen DIP Schalter habe sondern 
die Adresse oben gesetzt habe)

lib_dmx_in.h
//#define USE_DIP (auskommentiert)

Weiter habe ich alle DDRE,PORTE,PINE, PE in ***B umgewandelt da mein 
Atmega8/Attiny2313 diese nicht kennt. Wobei dies so oder so nur für den 
DIP Schalter zuständig war, sofern ich dies gesehen hab, weshalb dass ja 
keinen Einfluss haben sollte.

Weiter noch eine kleine Frage: Sehe ich es richtig, dass ich in der FOR 
Schleife die DMX Channels des Gerätes definieren kann?

Also im Grunde habe ich von DIP Adressierung auf Hardgecodete 
Adressierung geswitcht. Weiter habe ich den avr/io.h Include geadded 
sowie den anderen Include angepasst (Pfad). Weiter habe ich alle ***E 
Dinge zu *** B geändert. Die FOR schleife ist immernoch for(;, der Code 
springt jedoch in die for.

Hier noch der komplette Code:
dmx-ho-c.c http://pastebin.com/gh0sgvJr
lib_dmx_in.h http://pastebin.com/RUp9h8XU
lib_dmx_in.c http://pastebin.com/kLFEVnNT (Bei der Importierung bzw. 
Öffnung dieser Datei gab es einige Fehler. So wurde z.B. DmxAddress 
DmxaDDRBss, fehler wurden jedoch korrigiert.

Ich benutze Atmel Studio 6 mit Standard Einstellungen und AVRDUDE für 
die Übertragung.


Ach ja, die LED bringe ich zum leuchten etc. wenn ich diesen 
entsprechend anpasse. Also ausserhalb der FOR oder in der else.

Vielen Dank

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren