Forum: Mikrocontroller und Digitale Elektronik PIC24 GPS Modul NMEA


von Sascha P. (poggie)


Lesenswert?

Hi Jungs,

was würdet ihr vermuten wie viel Speicherplatz man benötigt um ein GPS 
Modul mit dem PIC24 zu betreiben ?
Ich habe da keine Erfahrung, würde aber ganz gerne nen grobe Abschätzung 
haben, womit ich so rechen muss.

Ich müsste die einzelnen NMEA Messages auswerten und abspeichern (Flash) 
dafür brauche ich aber irgendeinen Ringpuffer o.ä.

Folgende schritte müssten notwendig sein:
*Message Puffern (Länge/Anzahl Elemente des Puffers?)
*CRC Prüfung
*Werte auslesen/auswerten (evlt. umwandeln in "float" z.B. Latitude)und 
abspeichern.

Kennt ihr vielleicht schon fertige Implementierungen ? Sowas muss doch 
schon mal jemand gemacht haben!


Danke
Sascha

von Martin K. (dschadu)


Lesenswert?

Nein, das hat natürlich noch niemand gemacht...
außer vllt
http://www.mikrocontroller.net/articles/GPS_Logger_Mini
und die anderen hier...
http://www.mikrocontroller.net/articles/Kategorie:GPS

und vielleicht auch hunderte andere die alle ihre sachen OpenSource 
veröffentlicht haben.


Wenn du "nur" Long, Lat, Elev, Speed brauchst sind die Daten sehr 
gering. Das Program aufm µC aufwändiger. Speicherst du einfach die GGA 
und VTG strings sinds 110Byte.
Somit kannst du bei 4mb Flash etwa 10h aufzeichnen.

von Sascha P. (poggie)


Lesenswert?

Hey Martin

danke für deine Antwort. (aber warum gleich so aggressiv ?!)
Alles eine frage der richtigen Suchbegriffe, ich habe wohl nicht 
gründlich genug geschaut.

Was ich brauche ist Long, Lat, Elev, Speed und Time.

Das Problem ist nicht das abspeichern, sondern die Buffer für die 
temporären strings.

Es läuft noch einiges anderes auf dem PIC24 sodass ich nicht so allzu 
großen Spielraum für Buffer ,Konvertierungsroutinen etc habe.


Gruß
Sascha

von Martin K. (Gast)


Lesenswert?

Du brauchst halt einen Buffer, der groß genug ist einen kompletten GGA 
String zu speichern - etwa 80byte. Dann beim . zerlegen, daten 
raussuchen und abspeichern. Dann den nächsten String holen (VTG) usw...
Den Rest kannst du ja abschalten an Daten die noch kommen.

von heinzhorst (Gast)


Lesenswert?

Dafür sollte JEDER PIC24 geeignet sein. Da ist noch reichlich Reserve

von Sascha P. (poggie)


Lesenswert?

Vielen Dank schon mal für eure infos. Ich muss mich bald mit dem Thema 
mal etwas intensiver befassen. Denke aber auch das es machbar sein 
sollte.
Die übrigen Messages abzuschalten ist ne super idee.

Es gibt bei einigen Modulen noch einen Binary Mode habe ich irgendwo 
gelesen.
Vielleicht ist das noch etwas effizienter?!
Bei dem Projekt muss ich quasi um jedes Byte, welches in belegen werde 
betteln. Der PIC ist fast komplett voll!!!
Jetzt soll noch GPS dazu.
Also muss die Implementierung so effektiv wie eben möglich sein.

Gruß
Sascha

von Harald N. (harald_)


Lesenswert?

> Der PIC ist fast komplett voll!!!
Sascha nimm einfach ein IT530. Da ist der Datenlogger und vieles mehr 
schon drin.
http://www.fastraxgps.com/products/gpsmodules/500series/it530/

von michael_ohl (Gast)


Lesenswert?

Hallo,

Ich hab das vor Jahren mal mit nem 8051 gemacht. Nix Ringbuffer bei der 
Baudrate von NMEA konnte ich das alles sofort für ein 2 Zeilen LCD 
Aufbereiten bei 1Mhz Tackt imho.


mfG
Micháel

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.