LabVIEWForum.de - string zerlegen

LabVIEWForum.de

Normale Version: string zerlegen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
danke eckilein,
diee string befindet sich in einem file, und jetzt kann ich die nicht mehr senden
ich danke euch alle für eure hilfe aber leider hat nicht funktioniert, wie ich erwartet habe oder ich habe euch mein problem nicht rechtig erklärt .
ich lese von ein file eine string die aus einpaar tausend bytes besteht , dann sende ich die per uart ( mit usb adapter )zum meinem wlan modul und dass funktioniert gut, aber wenn ich lange string sende, dann bekomme ich die (string) nicht ganz nur eine teil davon , deswegen wollte ich diese string zerteilen ( zb 128 bytes oder mehr+ das Rest ) und hintereineinder senden ( alle Teile wirden hintereinander automatisch gesendet). ich habe mein program weiter entwickelt aber ich habe wieder das gleiche problem.
kann jemand mir bitte hilfen.
danke
[attachment=20839] LV VI 8.5
Hallo

Ein Problem ist das du den Block Teil-String wohl anders benutzt als du eigendlich willst.
Ich habe das so verstanden das du z.B einen String der Größe 3000Byte hast und den in kleine passende Stücke zerlegen möchtest.
[attachment=20840]
Was du hier machst, ist das du im ersten Durchlauf den ganzen String schickst, im 2. Durchlauf die ersten 128 Byte auslässt und wieder den Rest des Strings schickst.
Wenn du die Konstante 128 die du hast, mit dem Anschluss "Länge(Rest)" verbindest, passt es. So bekommst du im 1. Durchlauf die vorderen 128 Byte im 2. Durchlauf die nächsten 128 Byte.

Thomas
danke Thomas,
kannst du es mir nochmal erklären oder einbeispiel geben, ich bin kein echte programiere ( diplomant)
danke nochmal
Der vordere Teil ist das VI wie ich es öffne.
Und der rechte Teil beinhaltet nur die Verbindung zwischen der 128 und dem Längenanschluss von der Funktion TeilString.
Dadurch erreichst du, dass die Teilstrings alle die gleiche Länge(128Byte) haben.
[attachment=20841]
hi Thomas,
ich kann jetzt nur 128 byt senden, wenn ich auf daten senden knopf drücken,. und wenn ich 50000 bytes hätte, muss ich bis morgen drücken, ich probiere die ganze zeit dass ich es nur einmal sende und wird die komplette string + rest gesendet
Sobald du die Maustaste loslässt wir das Event gestartet.
Jedes mal wenn das Event gestartet wird, liest du die komplette Datei ein.
Danach überprüfst du wie lang der String ist und schreibst es in Length2. Da gibts jetzt ein Problem. Darüber willst du den Wert einlesen. Der Wert wurde aber wohl schon eingelesen. (also die 0 vom Frontpanel) Das Problem nennt man Race Condition. Du musst also gewährleisten das zuerst die Länge in der Variable gespeichert wird bevor du sie ausliest. Ich würde dir empfehlen die lokale Variable zu löschen und direkt mit dem AUsgang von Stinglänge verbinden.
Dann sollte die For-Schleife auch entsprechend oft aufgerufen werden.
danke thomas, ich habe es anderes gemacht und es klappt
[attachment=20842] Lv VI 8.5
hallo zusammen,
das programm, was ich geschrieben habe funktioniert supper die string teil werden automatisch hintereinander + rest gesendet.
Es hängt jetzt bei mir in der zeit messung, ich möchte die zeit messen, bei senden von die erste teile der string bis das ende (end könnte auch rest sein)
ich habe es im programm gesendet aber ich weiss es nicht, ob es rechtig ist oder nicht . programm steht in meiner letztem schreiben
ich danke euch
Ironie
' schrieb:das programm, was ich geschrieben habe funktioniert supper die string teil werden automatisch hintereinander + rest gesendet.
Wieso Einzahl und nur du? Die Foren-Community hat ganz schön mit geschrieben an diesem Programm!Tongue
Seiten: 1 2 3
Referenz-URLs