16Bit Ganzzahlen für die RS232 weiterverarbeiten? - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: 16Bit Ganzzahlen für die RS232 weiterverarbeiten? (/Thread-16Bit-Ganzzahlen-fuer-die-RS232-weiterverarbeiten) |
16Bit Ganzzahlen für die RS232 weiterverarbeiten? - FrankH - 19.07.2009 14:56 Hallo liebes Forum, ich habe ein kleines Programm mit LabVIEW 6.1 geschrieben. Ziel ist es, Daten zu berechnen und diese dann mittel RS232 an einem Mikrocontroller zu senden. Bei den Daten handelt es sich um 16Bit unsigned Integer Werte, die ich in einem Array gesammelt habe. Wenn ich ein Character sende, also "a" o. "b" usw. dann funktioniert das gut und der µC verarbeitet es wunderbar. Als nächstes habe ich also versucht die Array-Werte in einen String zu wandeln, irgendwo habe ich in "Beispiele" von LabVIEW ein TypeCast (Typenwandlung) gefunden, funktioniert aber nicht wirklich. Verstanden habe ich das auch noch nicht richtig... Meine Frage: Was sollte ich als nächstes machen um die 16Bit Ganzzahlen aus meinem Array über die serielle Schnittstelle versenden zu können? Ich stehe gerade ziemlich auf dem Schlauch. MfG Frank 16Bit Ganzzahlen für die RS232 weiterverarbeiten? - schrotti - 19.07.2009 22:43 Ein Character hat 8 Bit. Damit du also 16 Bit senden kannst, musst du zuerst die 16 Bit Zahl in zwei 8 Bit Zahlen zerlegen. Erst danach kannst du das Array als String interpretieren. Anbei zwei Möglichkeiten. [attachment=19784] Edit: Funktioniert auch mit dem Typecast alleine. Wenn man aber nur kurz darüber nachdenkt, wie Typecast arbeitet, wird einem auch sofort klar, dass dem dem Typecast gar nichts anderes übrig bleibt [attachment=19785] 16Bit Ganzzahlen für die RS232 weiterverarbeiten? - Lucki - 20.07.2009 07:05 Es gibt da verschiedene Methoden:
16Bit Ganzzahlen für die RS232 weiterverarbeiten? - FrankH - 20.07.2009 09:16 Hallo Schrotti, danke für deine Erklärung. Ich weiß nicht ob es an meiner LV Version liegt (6.1), jedoch kann ich die Elemente in deiner FOR-Schleife nicht finden. Ich muss schon in dem Beispiele-Ordner nach dem TypeCast (Typenwandlung) suchen, weil der in meiner Funtkionspalette nicht vorhanden ist. Dein Beispiel habe ich mit dem Typenwandlungselement versucht nachzustellen.... siehe das Ergebnis ;-( [attachment=19793] Lucki, ich würde gerne mehr dazu erfahren. Gruss Frank 16Bit Ganzzahlen für die RS232 weiterverarbeiten? - Lucki - 20.07.2009 13:58 ' schrieb:ich würde gerne mehr dazu erfahren.Gur, dann nehme ich mal einfach die Zahlen von Schrotti: [attachment=19814] Die Funktion "Zahl nach Hexadezimal" steht glaube ich in dieser Eleganz in LV6 noch nicht zur Verfügung, aber es gibt etwas Entsprechendes. Das Steuerzeichen 0xA (n) habe ich angefügt, damit Dein µC das Ende der Zeichenkette erkennt. Es kann auch ein anderes Steuerzeichen sein. 16Bit Ganzzahlen für die RS232 weiterverarbeiten? - RoLe - 20.07.2009 15:57 ' schrieb:Ich weiß nicht ob es an meiner LV Version liegt (6.1), jedoch kann ich die Elemente in deiner FOR-Schleife nicht finden.Als Ergänzung: Die Funktionen gibt es schon in LV 6.1, aber ev. nur in den Prof. Version. Anbei ein Bild von meinem 6.1, auch die Funktion von Lucki gibt es bereits. 16Bit Ganzzahlen für die RS232 weiterverarbeiten? - FrankH - 22.07.2009 12:57 Super, habe alles hinbekommen und die Elemente konnte ich Dank RoLe auch finden. Mein Hauptfehler lag im µC-Programm. Ich habe dort das High- u. Lowbyte vertauscht und konnte deswegen nie den Wert richtig abfragen. Also Danke nochmals an alle für ihre Hilfen Frank |