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 

Synchronisation uC - LabVIEW



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!

11.02.2015, 14:58 (Dieser Beitrag wurde zuletzt bearbeitet: 11.02.2015 14:59 von jg.)
Beitrag #10

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Synchronisation uC - LabVIEW
(11.02.2015 14:47 )ETech_Uri schrieb:  Ich übertrage ja einen Binärstring bestimmer Struktur, die Idee/Anregung habe ich auch hier aus dem Forum. I16 hat eine Länge von 2 Byte, damit kann ich Werte von -32768 ... 32767 realisieren. Müsste ich das mit Zeichen machen bräuchte ich dafür 1 bis. max 6 Byte was unvorteilhaft wäre für die Geschwindigkeit. 10 I16 Zahlen sind 20 Datenbyte was mit Start/Stop 22 Gesamtbyte macht. Am Ende ist das ja nur eine Sache wie ich meine Bytes interpretiere.
Aber genau hier entsteht das von mir beschriebene Problem. Diese 2 Bytes können als String in Hex-Darstellung alle Werte zwischen 0x0000 bis 0xFFFF enthalten, und somit auch die von dir gewählten Start- und Stopp-Bytes 0x01 und 0x02. Extrembeispiel: Alle deine I16-Werte sind 513dez, also in Hex-Darstellung 0x0201. Dein Datenstring inkl. Start- und Stopp-Byte lautet somit 21-mal "0x01 0x02". Was ist jetzt der Anfang, was das Ende der Nachricht?

Deutlich einfacher wäre das Parsen, wenn das Übertragungsformat anders wäre. Lucki hat hier einen Vorschlag angedeutet. Du könntest die I16-Werte nicht binär übertragen, sondern vor der Übertragung in einen Hex-String wandeln. Jeder Wert entspricht somit einem String aus 4 ASCII Zeichen, wobei jedes ASCII-Zeichen aus der Menge {0-9, A-F} stammt. Das Start-Byte kannst du dir dann schenken, und als Stopp-Byte nimmst du z.B. <CR> oder <LF>, ein ASCII-Zeichen, welches jetzt nicht mehr in den Daten vorkommt.

Nachteil: Die Übertragung ist jetzt 41 Zeichen lang.

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
Antwort schreiben 


Nachrichten in diesem Thema
RE: Synchronisation uC - LabVIEW - jg - 11.02.2015, 11:47
RE: Synchronisation uC - LabVIEW - jg - 11.02.2015 14:58

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Synchronisation 2er Geräte mit integrierter Strommessung Eliii 3 4.791 24.07.2014 12:48
Letzter Beitrag: GerdW
  Synchronisation von Kamera und dispenser (RS232 Schnittstelle) Eliii 14 9.569 28.05.2014 10:29
Letzter Beitrag: Eliii
  Synchronisation bei serieller Schnittstelle über lange Zeiträume pax 4 6.791 16.10.2009 10:18
Letzter Beitrag: pax
  Synchronisation von Messdaten über RS232 Stude 0 3.976 09.06.2009 11:31
Letzter Beitrag: Stude
  Synchronisation LV mit TDS 5034B Oszi AndiMetzger 2 3.760 02.08.2007 09:02
Letzter Beitrag: AndiMetzger
  Synchronisation zwischen zwei Schleifen geht verloren asdkamps 2 4.159 15.05.2006 15:48
Letzter Beitrag: asdkamps

Gehe zu: