Autor Beitrag
mannyk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 83
Erhaltene Danke: 1



BeitragVerfasst: Sa 16.01.10 10:40 
Hallo Leute,

ich versuche schon seit langer Zeit meine 8-fach Relaisplatine von Conrad anzusteuern.
Ein bisschen Hilfe brauche ich aber noch, da mir noch nicht alles ganz klar ist.
Das Problem hat, meine ich, auch mehr mit C# zu tun, als mit der Platine selbst.

Der Befehlsrahmen für die Platine sind (genau wie die Antwort) immer 4 Bytes.
Commando - Board-Adresse - Daten - Prüfsumme (XOR aus den ersten 3 Bytes)

Um z.B. alle Relais zu schalten, gibt es den Rahmen: 03 01 255 253
Als Antwort sollte von der Relaiskarte genau der Rahmen zurückkommen, allerdings das Commando invertiert. (Also hier mit 252)

Folgenden Code habe ich geschrieben. Doch leider tut sich bei der Karte nichts und wenn ich die Antwort lesen will, sind es genau jene Bytes, die ich auch geschickt habe.


ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
SerialPort port = new SerialPort("COM1"19200, Parity.None, 8, StopBits.One);
port.Handshake = Handshake.None;

port.Open();

byte[] data = new Byte[4] { 0301255253 };
port.Write(data, 04);

for (int i = 0; i < 4; i++) {
    Console.Write(port.ReadByte().ToString() + " ");
}
             
port.Close();


Deshalb nun meine Frage, was ich falsch machen könnte. Muss ich die Bytes villeicht in einem anderen Format senden?

Lg und vielen Dank,
mannyk

PS: Für interessierte habe ich die Bedienungsanleitung dazugetan.

Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt
Einloggen, um Attachments anzusehen!
mannyk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 83
Erhaltene Danke: 1



BeitragVerfasst: Sa 16.01.10 10:55 
Ich habe eigentlich nichts verändert und jetzt funktioniert es!

Trotzdem würde ich gern den Thread noch offenhalten, falls ich noch eine Frage hätte. :)
quantiqum
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Do 31.07.14 13:16 
Hallo

ich stehe nun am selben Problem wie das beschrieben hast, ich habe mir den VB Code angeschaut uns versucht in C# nachzubauen.
Da es bei dir nun läuft wollte ich gerne fragen ob ich dein Code Schnippsel verwenden kannst und ob du ein Update dazu hast.

Ich danke dir viel mals Mr. D
mannyk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 83
Erhaltene Danke: 1



BeitragVerfasst: Do 31.07.14 13:41 
Hallo,
kein Problem. Ich habe eine Bibliothek geschrieben, mit welcher man die Platine ansteuern kann. Ich werde den Code hier morgen veröffentlichen.
Lg,
mannyk
Hobelschlunze
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Di 24.03.15 07:11 
Hallo,
ich wollte fragen ob du den Code posten kannst da ich eine Relaiskarte von Conrad mit C# ansteuern möchte.
z.B. Relais 1 und 4 an oder Relais 2 und 3 an.

Gruß Hobel
kobluci
Hält's aus hier
Beiträge: 1



BeitragVerfasst: So 05.06.16 12:55 
Hallo,
hat nun irgend jemand den C# Code und kann ihn bitte posten denn ich habe das selbe Problem.