INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Problem mit DMXSerial.h als DMXReceiver Arduino Uno
05.02.2016, 09:56 (Dieser Beitrag wurde zuletzt bearbeitet: 05.02.2016 13:12 von ardu_arne.)
Beitrag #1
Problem mit DMXSerial.h als DMXReceiver Arduino Uno
Hallo,
ich möchte mit einem UNO einen DMX Receiver realiseren. Dazu verwende ich die DMXSerial.h von http://www.mathertel.de. Anhand seines Beispielcodes, DMX zu Empfangen und eine LED am PinOut zu dimmen habe ich mein Programm geschrieben. Der Kompiler schließt erfolgreich ab. Jedoch tut sich auf meinem Arduino, bzw an den Relais leider überhaupt nichts Undecided Was mache ich falsch? Hab ich etwas bei der Software übersehen oder ist die soweit okay?
Zum Hardwareaufbau: SN75176 auf einem Breadboard, Pin1 geht an den RX vom Arduino. Stromversorgung und Masse sind auch vorhanden. Hänge ich ein DMX Pult (http://www.thomann.de/de/stairville_ddc6...wodG10Nog) an den SN75176 (pin 6 und 7) leuchtet auch sofort die RX LED am Arduino auf. Nur wenn ich die Fader bewege passiert nichts. Das Pult habe ich an einem "Kauf-Gerät" gestestet. Funktion ist gegeben.
Code:
//Arduino DMX_Receiver zur Relaisansteuerung.
//Benötigt einen DMX Kanal.
//Kanalwerte: 0-20 - Beide Relais aus
//            21-117 - Relais 1 an
//            118-137 - Beide Relais aus
//            138-235 - Relais 2 an
//            236-255 - Beide Relais aus




#include "DMXSerial.h" //DMXSerial.h library einfügen.


const int Relais1 =    A0; //Relais Anschlusspins deklarieren.
const int Relais2 =    A1;
  
void setup () {
  
  pinMode(Relais1,   OUTPUT); //Anschlusspins als Output setzen.
  pinMode(Relais2,   OUTPUT);
  
  DMXSerial.init(DMXReceiver); //DMXSerial als Receiver initialisieren, lauscht auf dem Bus.

  DMXSerial.write(1, 0); //Vor Start den Wert auf 0 setzen, damit ein ungewolltes Schalten der Relais
                         //verhindert wird.
  
  digitalWrite(A0, LOW); //Beide Pins zusätzlich ersteinmal auf LOW setzen.
  digitalWrite(A1, LOW);

}


void loop() {
  
int i = 2; //Variable i erzeugen und als DMX Kanal 2 festlegen.
           //Im späteren Programm soll diese Variable in der loop
           //jedes mal neu gesetzt werden, damit es möglich ist,
           //die Adresse von 1 - 512 zu vergeben.
           //Das Teilprogramm existiert bereits und ist lauffähig.

  
if (DMXSerial.read(i) <= 20){ //Wenn DMX Kanal(i) unter Wert 20 ist, dann...
  digitalWrite(Relais1, LOW); //Setze beide Relais auf LOW (aus)
  digitalWrite(Relais2, LOW);
}
if((DMXSerial.read(i) >= 21) && (DMXSerial.read(i) < 118)){ //Wenn DMX Kanal(i) über/gleich Wert 21 ist und unter Wert 118, dann...
  digitalWrite(Relais1, HIGH);//Setze Relais1 auf HIGH (an)
  digitalWrite(Relais2, LOW); //Setze Relais2 auf LOW (aus)
}
if((DMXSerial.read(i) >= 118) && (DMXSerial.read(i) < 138)){ //Wenn DMX Kanal(i) über/gleich Wert 118 ist und unter Wert 138, dann...
  digitalWrite(Relais1, LOW); //Setze beide Relais auf LOW (aus).
  digitalWrite(Relais2, LOW);
}
if((DMXSerial.read(i) >= 138) && (DMXSerial.read(i) < 236)){ //Wenn DMX Kanal(i) über/gleich Wert 138 ist und unter Wert 236, dann...
  digitalWrite(Relais1, LOW); //Setze Relaiis1 auf LOW (aus)
  digitalWrite(Relais2, HIGH); //Setze Relais2 auf HIGH (an)
}  
if(DMXSerial.read(i) >= 236){ //Wenn DMX Kanal(i) über/gleich Wert 236 ist, dann...
  digitalWrite(Relais1, LOW); //Setze beide Relaus auf LOW (aus)
  digitalWrite(Relais2, LOW);
}


}

Ich bitte um Hilfe Angel

_____________________________________________________________________
Edit sagt:
Multiposting zu http://forum.arduino.cc/index.php?topic=377077.0
Es gibt also möglicherweise auch dort Antworten zu diesem Thema.

Gruß
Arne
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.02.2016, 13:28
Beitrag #2
RE: Problem mit DMXSerial.h als DMXReceiver Arduino Uno
Hallo,
ich habe mal diverse Beiträge über den Sinn und Zweck von Crosspostings gelöscht.
I.d.R. führen diese Diskussionen zu nichts.
Ich würde mir wünschen dass der Thredstarter dies gleich in seinem Eingangspost vermerkt. Damit wäre dann jedem geholfen und unnötige Diskussionen am eigentlichen Thema vorbei obsolet.

Zum eigentlichen Thema.
Es wurde kurz angedeutet, dass Pin 6 und 7 des SN75176 mit dem Bus verbinden sind.
Viel interessanter wäre aber zu wissen mit welchen Arduino Pins die Anschlüsse 1, 2, 3 und 4 des SN75176 verbunden sind.
Ich befürchte einen Konflikt mit den Arduino Pins für die USB-Kommunikation.

Gruß
Arne

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Zeit-Server-Problem 182 19 778 07.06.2018 21:42
Letzter Beitrag: ardu_arne
  Problem mit TFT Display Anzeige wechseln Thor Wallhall 9 557 02.06.2018 23:30
Letzter Beitrag: Thor Wallhall
  Bootloader update mit USBASP Problem sepp01 15 1.047 12.05.2018 17:23
Letzter Beitrag: sepp01
  C++ Library Datenübergabe Problem jose_ph 9 831 08.05.2018 14:10
Letzter Beitrag: Tommy56
  Problem mit der Textauswertung Franz54 13 592 15.04.2018 18:17
Letzter Beitrag: Tommy56
  Problem mit RIFD UID ParadoxDev 6 365 27.03.2018 12:04
Letzter Beitrag: ParadoxDev
  Problem mit OLED 0.96" Display torsten_156 5 1.920 07.03.2018 23:27
Letzter Beitrag: Tommy56
  Ucglib Library Problem Bully 26 1.374 05.03.2018 18:47
Letzter Beitrag: Tommy56
  Problem mit Wire.available() abfrage avoid 1 425 11.01.2018 13:40
Letzter Beitrag: Tommy56
  SerialComInstruments 4 Problem Darstellung Nextero 35 1.742 15.12.2017 18:51
Letzter Beitrag: ElEspanol

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste