tut mir leid, dass ich euch schon wieder nerven muss . Ich bin gerade dabei einen NMEA Parser zu schreiben. Diesen würde ich gerne strengstens nach den Spezifikationen gestalten. Leider finde ich aber keine genauen Spezifikationen.
Teilweise stoße ich auch auf Widersprüche, wie z.B.:
http://www.kowoma.de/gps/zusatzerklaerungen/NMEA.htmDabei sind alle druckbaren Zeichen sowie Carriage-Return (CR, Waagenrücklauf) und Line-Feed (LF, Neue Zeile) erlaubt und die Daten werden in der Form von Sätzen übertragen.
The specification also states valid characters and gives a table of these characters ranging from HEX 20 to HEX 7E.
http://www.visualgps.net/Papers/NMEAPar ... Design.htm
Je nach Codierung kann man unter allen druckbaren Zeichen etwas ganz anderes verstehen.
Aus diesem partiellem Unwissen heraus, habe ich zwei Reguläre Ausdrücke erstellt:
Variante 1:
Code: Alles auswählen
/^(\$|!)[A-Z]*,[ !"#\$%&\'()*+,\-.\/0-9:;<=>?@A-Z\\\[\]^_`a-z{|}]*([*][a-fA-F0-9]{2})?\r\n$/
Code: Alles auswählen
/^\$[A-Z]*,[ a-zA-Z0-9,.+-]*([*][a-fA-F0-9]{2})?\r\n$/
Code: Alles auswählen
$GPRMC,183729,A,3907.356,N,12102.482,W,000.0,360.0,080301,015.5,E*
Retrieve sentence data. This is where all of the data associated with the NMEA address is collected for further parsing. This state will continue to collect data and perform a checksum calculation until it receives a checksum delimiter “*” (HEX 2A) or sentence terminator <CR><LF> (HEX 0D 0A).
Diese habe ich hier entnehmen können.
Leider habe ich keine genauen Spezifikationen seitens NMEA finden können, zumindest sind mir diese nicht 340 US Dollar wert, wie hier angeboten.
Gibt es da vielleicht auch kostenlose, genaue Spezifikationen?
Ich danke euch im Voraus ...