- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 15 von 15

Thema: NMEA von GPS-Modul auswerten

  1. #11
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Anzeige

    Powerstation Test
    Zitat Zitat von Ceos
    wo der punkt steht ist von mäßige bedeutung, nach konvention schreibt man beim DEKLARIEREN eines pointer

    type* name;
    Das würde ich bestreiten. Wenn es diesbezüglich überhaupt eine Konvention gibt, dann "type *name;".
    Und das hat auch einen guten Grund:
    Code:
    type* name1, name2;
    
    Man könnte denken, dass hier zwei Pointer deklariert würden,
    aber in Wirklichkeit ist nur name1 ein Pointer. Daher sinnvoller:
    
    type *name1, name2;
    
    Oder wenn halt tatsächlich beides Pointer sein sollen:
    
    type *name1, *name2;
    MfG
    Stefan

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    arrgh ja sorry da hat sich wieder mein daumen geirrt ... ich plautz das leerzeichen fast immer so hin, ist ne schlechte angewohnheit mein fehler ... aber ich wollte klar stellen, dass der stern zwischen typ und name ein pointer ist und stern mit name alleine eine dereferenzierung ist!

    EDIT: in größeren projekten ist die position des sterns eher zweitrangig, da man dort eh alle variablen einzeln deklarieren muss, wenn man vernünftig mit doxygen dokumentieren will

  3. #13
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    Leider kann ich kein C, aber auch dort sollte es String Befele
    ähnlich Wert =mit (string, x,y) Wobei dann String eine komplette
    Zeile der GPS Daten darstellt, x den Anfang vom gewünschten
    abschnitt und y das Ende. In Wert steht dann der gewünschte String
    und muß in einen Numerischen Wert gewandelt werden.

    Da braucht man dann überhaupt nicht nach Kommas oder ähnlich
    suchen, die gewünschten Daten stehen ja immer an der gleichen
    Stelle im Datenstring.

    Gruß Richard

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    jain richard ^^ es kommt auch vor, dass die daten mit 0.0 angegeben werden, statt 0.00000xxx (edit: ich meine damit dass auf 10 stellig auch mal 3 stellig wird)

    z.B. wenn kein sattelit verfügbar ist ... die methode mit strtok ist ideal, man gibt die trenner ein (in dem falle wohl das komma) und mit der angegebenen beispielfunktion bekommt man dann alle werte nacheinander aufgelistet und kann sie z.B. mit sscanf auswerten ... obwohl man im falle eines konstanten strings auch gleich komplett die zeile mit sscanf verarbeiten könnte!

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    30.09.2006
    Ort
    Hamburg
    Alter
    42
    Beiträge
    1.013

    Re: NMEA von GPS-Modul auswerten

    Zitat Zitat von JeyBee
    Nabend,
    Für Längen und Breitengrade kann ihc ja z.B. die Zeile "$GPGGA" verwenden. Nun muss ich ja theoretisch nur noch die Komata zählen, bis zu der Zahl, die ich gerne hätte.
    Mfg JeyBee
    hi das geht nur bedingt da du ja noch andere Feinheiten und variablen drinne hast, hatte des grade in ASM gemacht deswegen :P hier haste mal nen pahr sampels mit und ohne b.z.w. schlechten entfang.
    und den haste ja noch manchmal zwischen den werten mehrere Vars.

    Und dann gibt es noch Protokollunterschide (letztenbeiden zeilen) des erste ist NEMA 1.0 und des andere 2.2 (hinten die Kennung)

    Code:
    ; $GPRMC,001915.928,V,0000.0000,N,00000.0000,E,    ,     ,270102,   ,*1D
    ; $GPRMC,191410    ,A,4735.5634,N,00739.3538,E,0.0 ,0.0  ,181102,0.4,E,A*19
    ; $GPRMC,140815.000,A,5339.2125,N,01000.8120,E,0.18,59.16,301209,0  , ,A*6E
    ; k     0          1 2         3 4          5 6    7     8      9   0 1
    ;       ^          ^ ^           ^            ^    ^     ^      ^     ^
    ;       |          | |           |            |    |     |      |     Neu in NMEA 2.3:
    ;       |          | |           |            |    |     |      |     Art der Bestimmung
    ;       |          | |           |            |    |     |      |     A=autonomous (selbst)
    ;       |          | |           |            |    |     |      |     D=differential
    ;       |          | |           |            |    |     |      |     E=estimated (geschätzt)
    ;       |          | |           |            |    |     |      |     N=not valid (ungültig)
    ;       |          | |           |            |    |     |      |     S=simulator
    ;       |          | |           |            |    |     |      Missweisung (mit Richtung)
    ;       |          | |           |            |    |     Datum: 18.11.2002
    ;       |          | |           |            |    Bewegungsrichtung in Grad (wahr)
    ;       |          | |           |            Geschwindigkeit über Grund (Knoten)
    ;       |          | |           Längengrad mit (Vorzeichen)-Richtung (E=Ost, W=West)
    ;       |          | |           007° 39.3538' Ost
    ;       |          | Breitengrad mit (Vorzeichen)-Richtung (N=Nord, S=Süd)
    ;       |          | 46° 35.5634' Nord
    ;       |          Status der Bestimmung: A=Active (gültig); V=void (ungültig)
    ;       Uhrzeit der Bestimmung: 19:14:10 (UTC-Zeit)
    Legastheniker on Bord !

Seite 2 von 2 ErsteErste 12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test