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 

Dieses Thema hat akzeptierte Lösungen:

Match Patter (Muster suchen) funktioniert nicht immer



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!

15.10.2013, 07:46
Beitrag #1

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
Match Patter (Muster suchen) funktioniert nicht immer
Hallo liebe LabVIEW-Gemeinde,

nach langer Zeit hat sich bei mir auch mal wieder ein Problem aufgetan.
Ich empfange über eine serielle Schnittstelle mir bekannte Daten, sammle diese mit Hilfe eines Schieberegisters und wenn ich mir sicher bin alles empfangen zu haben was ich möchte, wird die Schleife beendet und der Wert der SR an meine Suchfunktion übergeben. Die angehängten Bilder zeigen eine stark vereinfachte Version, welche nur die Fehlfunktion deutlich machen sollen.

Zu finden sein soll folgendes:
0A00 6047 001B
0A00 6047 002B
0A00 6047 003B
0A00 6047 004B
0A00 6047 005B
(sämtliche Anzeigen stehen auf "HEX Display")

Diese Phrasen befinden sich nachweislich alle im Schieberegister, jedoch wird immer nur ...1B, ...3B und ...4B gefunden. Habe auch schon nur nach ...2B zu suchen, aber ohne Erfolg.

Ich bin mit meinem Latain am Ende, kann mir jemand helfen?


Angehängte Datei(en) Thumbnail(s)
       

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
15.10.2013, 08:47
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Match Patter (Muster suchen) funktioniert nicht immer

Akzeptierte Lösung

Hallo HIMI,

probiere das hier mal aus:
   
Das zeigt dir alle Werte an, die nach einem "0A006047" gefunden werden.

Hintergrundinfo: $2B ist das ESCAPE-Zeichen. Wenn du dieses mit MatchPattern suchen lässt, kann es zu "Querwirkungen" kommen. Das steht zwar nicht direkt in der Kontexthilfe, dafür aber der Hinweis, beliebige Zeichen per \xx suchen zu lassen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2013, 09:26
Beitrag #3

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Match Patter (Muster suchen) funktioniert nicht immer
Der Gerd,

immer ein Garant für gute Hinweise. Das Problem ist gelöst, wird mich aber demnächst wieder ereilen, denn ich muss in einer bestimmten Stelle meines Problemes eine Fallunterscheidung machen und da muss ich dann auf "002B" vergleichen. Wie kann es sein, dass LV das fehlinterpretiert? Das mit dem Escape-Zeichen habe ich nicht richtig gelöffelt, auf der seriellen Schnittstelle liegt doch stellvertretend für 0x002B (HEX Dsiplay) in ASCII der NUL-Charakter gefolgt vom "+". Gibt es da eventuell eher Probleme mit dem häufig gesendeten NUl-Char?
Wie kann ich jetzt das Problem löse, dass wenn ich ein 0x002B empfange ein Ereignis X ausgelöst wird?

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2013, 09:46
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Match Patter (Muster suchen) funktioniert nicht immer
Hallo HIMI,

sorry, ESCAPE ist natürlich $1B...

Zitat:Wie kann es sein, dass LV das fehlinterpretiert?
Die Hilfe sagt: beliebige Zeichen mit Escape-Char "\" suchen!
Es gibt auch die (einfachere) Funktion "Search/SplitString"...

Zitat:Wie kann ich jetzt das Problem löse, dass wenn ich ein 0x002B empfange ein Ereignis X ausgelöst wird?
Soll ein Ereignis/"Event" ausgelöst werden oder soll einfach ein Case in einer Case-Struktur aufgerufen werden?
   

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2013, 09:51
Beitrag #5

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Match Patter (Muster suchen) funktioniert nicht immer
Danke Gerd,

bin auch gerade darauf gekommen den String in ein Byte Array zu wandeln und dann zu vergleichen - das funktioniert tadellos. In dem String sind noch ein paar mehr nötige Informationen versteckt.

Vielen Dank Gerd

LabVIEW 2016
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
  Die Kommunikation mit dem VI funktioniert nicht Benutzer02 11 6.156 18.10.2021 09:25
Letzter Beitrag: TpunktN
Sad VI funktioniert und EXE nicht Mostro2502 21 9.561 17.06.2020 09:55
Letzter Beitrag: Mostro2502
  Frontpanel wird beim beenden nicht immer geschlossen Winterkind 4 3.536 08.04.2020 08:30
Letzter Beitrag: Freddy
  Inhalt einer Baumstruktur über Methodenknoten speichern funktioniert nicht... enone 2 3.891 10.05.2019 10:19
Letzter Beitrag: enone
  Schrittmotor Nema 17 per LabVIEW funktioniert nicht! TTT 5 6.252 27.04.2018 08:20
Letzter Beitrag: Freddy
  Ansprechendes Design des Frontpanels | Muster in Hintergrund einfügen dulfried 3 4.312 23.08.2017 17:45
Letzter Beitrag: GerdW

Gehe zu: