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 

Serielle Schnittstelle - zu viele Bytes



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!

03.05.2006, 15:50
Beitrag #11

LV_Newbie Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Apr 2006

6.1
-
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Ich weiß es immer noch nichtSad

Ja die Gegenstelle ist ein Mikrocontroller => folglich auch programmierbar.
Nur das Programm ist (ich nenns mal so) "dumm". Es liest nur Werte aus einem Speicher ein und schickt diese dann über die serielle Schnittstelle ans LabVIEW.

Wie schaffe ich es das der String so aussieht.
Derzeit schicke ich beim Mikrocontroller ein Signal wie folgt weg:
printf("%u", 0xAA);
Das heißt er schickt 170 über die serielle Schnittstelle weg.
als nächstes printf("%u", 0xBB).
nur sind diese Werte nicht immer 0xAA und 0xBB sondern jedes Mal verschieden.
%u heißt nur unsigned
Nun weiß ich nicht wie ich sie sonst anders wegschicken soll als das obige, damit sie vom LabVIEW richtig interpretiert werden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 16:04
Beitrag #12

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Zitat:Derzeit schicke ich beim Mikrocontroller ein Signal wie folgt weg:
printf("%u", 0xAA);
Dann müsstest du eigentlich das Nummernformat auf führende Nullen einstellen können:
Code:
printf("%03u", 0xAA);
Und damit kannst du in LV dann den String nach jedem 3. Zeichen splitten.

Lg Stefan
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 16:52
Beitrag #13

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Serielle Schnittstelle - zu viele Bytes
@opossom
Auch eine Möglichkeit, aber ich würde so machen:

printf("%c", 0xAA);

und dann in LV String To Byte Array verwenden. (Ist besser, weil man nicht mehr parsen muss, sondern man bekommt direkt ein Array aus U8-Zahlen)

Gruss, Eugen
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 17:41
Beitrag #14

LV_Newbie Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Apr 2006

6.1
-
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Mist warum muss jede Problemlösung wieder ein neues Problem aufwerfen.
Ich glaube ich verstehe die Funktion "String to Byte Array" nicht ganz.
Was macht die?

Anbei ein Bild:
Wenn ich nacheinander über die serielle SChnittstelle 1,2,3,4,5 und 6 empfange, sollte dann nicht das Byteaarray auch 1,2,...6 enthalten?

WEil wenn ich es nachher wieder extrahiere, dann ist der erste Wert 6 und alle weiteren 0.

Warum?
Über die serielle Schnittstelle sende ich nun wie das printf das von eugen graf vorgeschlagen wurde

@oppossom: Hab den Vorschlag probiert, ist aber in meinem Programm nicht anwendbar.


Wenn ich direkt auf das "Serial Read" draufklicke, dann sieht man ja die erhaltenen Werte und die Anzahl der Bytes.
Dort steht dann zuerst 1 dann 2 dann 3 bis eben 6.
1 entspricht eh 1, oder?


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 18:33
Beitrag #15

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Zitat:Wenn ich nacheinander über die serielle SChnittstelle 1,2,3,4,5 und 6 empfange, sollte dann nicht das Byteaarray auch 1,2,...6 enthalten?

WEil wenn ich es nachher wieder extrahiere, dann ist der erste Wert 6 und alle weiteren 0.
Versuch mal, gleich nach der Umwandlung String/ByteArray einen Indicator hinzusetzten, da müssten die Werte eigentlich der Reihe nach drinnen sein. Alternativ dazu kannst du dir den String vor der Umwandlung auch mit "-Code"-Anzeige anschauen.

Zitat:1 entspricht eh 1, oder?
Das ist genau der Vorteil von Eugens Methode. Du erhältst die Werte quasi gleich direkt, ohne eine zusätzliche Umwandlung/Zerteilung von String nach Zahl machen zu müssen...

Lg

Edit: hab ich vorher überlesenWink
Zitat:Ich glaube ich verstehe die Funktion "String to Byte Array" nicht ganz.
Was macht die?
Das kannst du dir im Prinzip vorstellen wie eine Umwandlung nach der Ascii-Tabelle. zB du wandelst den String "A" um und bekommst demnach 65
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 18:52
Beitrag #16

LV_Newbie Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Apr 2006

6.1
-
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Ich habs jetzt mit Hilfe von einer Anzeige mir angeschaut und der "String to Byte Array" schreibt immer nur an die Nullte Stelle des Arrays.

Also es wird zuerst 1 auf die 0te Stelle geschrieben, dann ein 2er (überschreibt 1er) bis am Ende auf der 0ten Stelle 6 steht und alle anderen 0 sind.
Wie kann ich das machen, dass er nach der Reihe die SPeicherplätze füllt?
Oder geht das mit "String to Byte Array" gar nicht.

Achja die 1,2,3 stehen nicht in einem einzelnen String sondern kommen nacheinander über die serielle Schnittstelle!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 19:05
Beitrag #17

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Zitat:Achja die 1,2,3 stehen nicht in einem einzelnen String sondern kommen nacheinander über die serielle Schnittstelle!
Dann wundert es mich nicht. Die Umwandlung wartet natürlich nicht, bis ale Zeichen da sind, sondern wandelt sofort um. Nachdem aber nur 1 Zeichen da ist, hat das Array auch nur ein Element.
Nun hast du 2 Möglichkeiten: entweder du wartest, bis dein String komplett ist und wandelst dann um, oder du nimmst jeweils das 0-te Element aus der Umwandlung und schreibst es an die letzte Stelle eines zweiten Byte-Arrays in dem du die Werte "sammelst"
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 19:14
Beitrag #18

LV_Newbie Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Apr 2006

6.1
-
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Könntest du bitte einen Vorschlag posten wie ich die Bytes "sammeln" soll. mit Bild oder .vi bitte
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 19:29
Beitrag #19

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Hi!

hab mal beide Vorschläge aufgezeichnet...


Angehängte Datei(en) Thumbnail(s)
       
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2006, 20:17
Beitrag #20

LV_Newbie Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Apr 2006

6.1
-
kA


Oesterreich
Serielle Schnittstelle - zu viele Bytes
Ja so gehts.
Danke sehr
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  VISA Read und Bytes at Port tanka 9 13.868 28.08.2019 08:10
Letzter Beitrag: Lucki
  Serielle Schnittstelle: Unterschied zwischen FIFO-Buffer und VISA-Buffer Exle 4 7.081 23.01.2019 08:07
Letzter Beitrag: Ratio
  Serielle Schnittstelle hängt nach gewisser Zeit auf Kiesch 8 10.509 08.01.2018 11:06
Letzter Beitrag: Kiesch
  Serielle Schnittstelle bricht ab -cosmo- 7 7.664 28.09.2017 12:13
Letzter Beitrag: Lucki
  Serielle Schnittstelle usbser.sys BlueScreen Hachiko 18 19.437 03.04.2014 20:53
Letzter Beitrag: hyla
  VISA Read liest nicht alle Bytes von Bytes at Port numumba 2 7.049 21.01.2014 20:24
Letzter Beitrag: numumba

Gehe zu: