Zeitliche Abfolge kontrollieren

Gast #1990993
Lesenswert?

Hallo zusammen,
ich möchte gerne serielle Daten (9600 bps 8N1) auf verschiedene 
Teilstrings untersuchen. Wie kann ich programmiertechnisch am besten 
herausfinden, ob ein bestimmter Teilstring direkt im nächsten seriellen 
Protokoll wieder auftaucht. Bspw so, mit 2405:

C9B24056780D
B5B24058890D
A5B24058690D
.
.
.
.
Hmmm, ich steh da etwas auf dem Schlauch.
Hat jemand ein Tipp, wie ich das am besten umsetzen könnte?
VG
Knut
Gast #1991020
Lesenswert?

Knut schrieb:
> ob ein bestimmter Teilstring direkt im nächsten seriellen
> Protokoll wieder auftaucht. Bspw so, mit 2405:

Naja in C z.B. so:
1
char* a = "C9B24056780D";
2
char* b = "B5B24058890D";
3
char* c = "A5B24058690D";
4
int i = strcmp(a, "2405");
5
if(i >= 0) {printf("string ist gefunden !");}

Gruß
Gast #1991026
Lesenswert?

Oh sorry, in C.

es geht mir vielmehr um die zeitliche Abfolge. Wenn die Teilstrings 
direkt aufeinanderfolgend erscheinen, möchte ich mit einem Unterprogramm 
nach einer bestimmten Anzahl reagieren...if(Teilstring == 4)
Ich wollte das erst mit einem Counter realisieren. Allerdings erhalte 
ich dadurch keine Aussage, ob diese Teistrings direkt nacheinander 
erschienen sind.

C9B 2405 6780D "Treffer" Counter -> 1
B5B 2405 8890D "Treffer" Counter -> 2
A5B 2405 8690D "Treffer" Counter -> 3
A5B 5678 8690D ---------
A5F 4907 1230D ---------
D5B 2405 8550D "Treffer" Counter -> 4

VG
Gast #1991038
Lesenswert?

Also

C9B 2405 6780D "Treffer" Counter -> 1
B5B 2405 8890D "Treffer" Counter -> 2
A5B 2405 8690D "Treffer" Counter -> 3
A5B 5678 8690D Counter -> 0
A5F 4907 1230D Counter -> 0
D5B 2405 8550D "Treffer" Counter -> 1

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren