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 

dynamische Byte-Anzahl einer Nachricht



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

22.03.2021, 14:18
Beitrag #1

Gottimp Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: Mar 2021

2020
2019
DE



dynamische Byte-Anzahl einer Nachricht
Hi Community,

ich möchte gerne ein Programm welches ich bereits mit eurer Hilfe erstellen konnte erweitern.

In dem bereits vorhandenen Programm wird die Nachricht eines Mikrokontrollers über eine Uart gelesen und dargestellt.

Im zweiten Schritt möchte ich gerne die dynamische länge der Antwort berücksichtigen.

Nach meinen Bisherigen Informationen ist es nicht möglich die größe eines Cluster dynamisch zu gestalten, sondern nur die Möglichkeit Daten nicht anzuzeigen.

Wie kann man einen dynamischen Empfang realisieren?

der Aufbau der Nachricht ist wie folgt:

"getData-Antwort: 0|0|0|0|0|FFF|618|735|152", wobei die einzelnen Nachrichten mit den Strichen abgegrenzt ist jedoch nicht fest in ihrer Byte länge.

Anbei das bereits vorhandene Programm.

Ich freu mich über eure Antworten, bleibt gesund

Gruß Gotti


Angehängte Datei(en)
17.0 .vi  UART_Rx.vi (Größe: 10,57 KB / Downloads: 222)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.03.2021, 14:31
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: dynamische Byte-Anzahl einer Nachricht
Hallo Gotti,

wieviele unterschiedliche Nachrichten willst du denn auswerten?
Wie stark unterscheiden sie sich?

Ich würde für jeden Typ Nachricht einen Case in einer Casestruktur vorsehen, der Case selbst wird durch den Nachrichtentyp ausgewählt…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.03.2021, 18:15
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: dynamische Byte-Anzahl einer Nachricht
Hallo,

bei einer variablen Anzahl von Elementen in deiner Antwort bietet sich ein Array an, den String könntest du z.B. mit der Funktion "Spreadsheet-String to Array" zerteilen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2021, 14:14
Beitrag #4

Gottimp Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: Mar 2021

2020
2019
DE



RE: dynamische Byte-Anzahl einer Nachricht
Wie immer vielen Dank für eure schnellen Antworten!

Ich denke ich versuche zunächst die Nachricht etwas genauer zu beschreiben:

also sendet man: "getData\00"

bekommt man die Antwort: "getData-Antwort: 0|0|0|0|0|TTT|622|694|151" ,die für mich interessanten Werte sind die nach dem Doppelpunkt und getrennt werden die Nachrichten durch die Trennstriche.

Verändern sich Messwerteso können die Antworten auch wie folgt ausfallen:
- "getData-Antwort: 0|132|237|25000|14000|TTT|640|743|168"
- "getData-Antwort: 0|652|1129|23000|13500|TTF|634|867|165"

Die Messwerte würde ich dann gerne im Frontpanel darstellen bzw wären zum Beispiel Led für die True/False Werte schön.

Muss ich dann beim Visa Read die Byteanzahl auf die maximal Mögliche Byte-anzahl stellen?
Könnt ihr mir eine empfehlung geben, ob es besser mit einer Case Struktur oder dem "Spreadsheet-String to Array" funktioniert?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2021, 14:24 (Dieser Beitrag wurde zuletzt bearbeitet: 23.03.2021 14:29 von GerdW.)
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: dynamische Byte-Anzahl einer Nachricht
Hallo Gotti,

Zitat:"getData-Antwort: 0|0|0|0|0|TTT|622|694|151"
"getData-Antwort: 0|132|237|25000|14000|TTT|640|743|168"
"getData-Antwort: 0|652|1129|23000|13500|TTF|634|867|165"
Die Messwerte würde ich dann gerne im Frontpanel darstellen bzw wären zum Beispiel Led für die True/False Werte schön.
Könnt ihr mir eine empfehlung geben, ob es besser mit einer Case Struktur oder dem "Spreadsheet-String to Array" funktioniert?
Wenn du einen String mit den Querstrichen bekommst, dann solltest du SpreadsheetStringToArray benutzen:
   
(Frage jetzt bitte nicht, wie man in einem String nach dem ":" sucht und den String daran aufteilt…)

Zitat:Muss ich dann beim Visa Read die Byteanzahl auf die maximal Mögliche Byte-anzahl stellen?
Ja. Ich hoffe, die Message wird immer mit dem richtigen TermChar beendet!?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2021, 17:48
Beitrag #6

Gottimp Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: Mar 2021

2020
2019
DE



RE: dynamische Byte-Anzahl einer Nachricht
Vielen Dank Gerd.

Nach deiner Vorarbeit war es sehr leicht umzusetzen. Nur scheitere ich zur Zeit leider noch wie von Dir vermutet an dem Doppelpunkt.
Ich konnte zwar den string aufteilen, jedoch wird auch der Doppelpunkt weiter gereicht und so empfange ich die erste Nachricht nicht bzw sie wird als 0 interpretiert.
Dann wollte ich nach dem Leerzeichen suchen :"\s" was jedoch nicht funktioniert.

Würde mich freuen, wenn ich noch eine Hilfestellung bekommen könnte.

Grüße Gotti


Angehängte Datei(en)
17.0 .vi  UARTTest.vi (Größe: 9,48 KB / Downloads: 224)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.03.2021, 18:15
Beitrag #7

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: dynamische Byte-Anzahl einer Nachricht
Nimm doch einfach eine passendere Funktion:
   

Und warum schon wieder diese ganzen Rube-Goldberg-Konstrukte?
Warum mehrfach StringToNum, wenn einmal ausreicht?
Warum mehrere IndexArray, wenn eines ausreicht?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Problem: Empfangene Byte Anzahl ändert sich MKVH28 7 6.670 26.03.2015 17:39
Letzter Beitrag: Lucki
  Byte (hex) erzeugt Timeout im VISA Lolleg 2 4.306 06.06.2014 13:26
Letzter Beitrag: Lolleg
  Jeweiliges High und Low Byte richtig zusammenfügen rookieNo.x 2 8.008 29.10.2012 18:43
Letzter Beitrag: rookieNo.x
  Spezielles Byte nach Eingang weiterverarbeiten, RS232 Maxix 16 14.323 06.02.2012 16:34
Letzter Beitrag: Maxix
  Delay nach jedem gesendeten Byte hans75 5 6.106 21.09.2010 16:13
Letzter Beitrag: GerdW
  VISA Read - Byte Count Wert LabVIEWDompteur 5 11.441 13.05.2009 12:13
Letzter Beitrag: rolfk

Gehe zu: