Hallo,
Ich stehe vor der Aufgabe ein Spektrometer über RS232 einzulesen, verwende dazu JAVA. Mit dem Datenaustausch über die serielle Schnittstelle hab ich ein paar Erfahrungen gemacht, sogar ein paar positive
Zu meinem Problem: Das Gerät verwendet ein etwas trickreiches Protokoll. Ich habe zwar eine Verbindung zu dem Messgerät und kann auch Daten einlesen (nämlich die, die es nach dem Einschalten automatisch sendet) aber ich schaffe es einfach nicht gezielte Anfragen an das Spektrometer zu stellen. Diese werden scheinbar ignoriert denn ich bekomme keine Antwort.
Das Protokoll sieht so aus: DLE STX seq node lsb msb data DLE ETX
DLE STX…0x10,0x02 Startsequenz
seq…zb 0x00 Anfragenummer
node…0x00 Datenrichtung Empfänger oder Senden
lsb…Last significant Bit der Länge des Datenstroms
msb…most significant Bit der Länge des Datenstroms
data…Datenbits zb 0x06 für getDeviceConfiguration
DLE ETX…0x10,0x03 Schlusssequenz
Um also von dem Gerät die DeviceConfiguration zu bekommen muss ich “0x10,0x02,0x00,0x00,0x01,0x00,0x06,0x10,0x03” rausschicken.
Daher:
byte[] sendBuffer1 = {0x10,0x02,0x00,0x00,0x01,0x00,0x06,0x10,0x03};
outputStream.write(sendBuffer1);
Leider bekomme ich dann aber keine Anwort vom Gerät.
Hoffe Ihr könnt mit diesen Informationen was anfangen, ansonsten bitte einfach fragen. Freu mich auf eure Antworten - danke schon jetzt!
martin