![]() |
Kordinaten von GPS Maus auslesen
Hi,
ich habe eine GPS Maus welche NMEA Daten sendet. Diese ist per USB an den Rechner angeschlossen. Ich möchte jetzt irgendwie an die Gps Position kommen mit Delphi. Ich möchte für eine Komponente? kein Geld ausgeben. Ich habe ein Demo Programm gefunden welches die NMEA Daten auch anzeigt in DElphi jedoch stürzt die Anwendung ab wenn es einen Fix gibt. Könnt ihr weiterhelfen? Mit freundlichen Grüßen Lars Wiltfang |
Re: Kordinaten von GPS Maus auslesen
Ohne zu wissen, welches Programm/Bibliothek du verwendest nicht.
|
Re: Kordinaten von GPS Maus auslesen
![]() Aber ich bin für andere Komponenten offen, da ich aus dem Code und der Demo Anwendung nicht wirklich schlau werde. Eine Demo Version, die eine Meldung beim Start anzeigt hätte ich auch nichts! |
Re: Kordinaten von GPS Maus auslesen
Hallo Lars,
wie schaut es mit selber machen aus? Eine Komponente die die serielle Schnittstelle (AsyncPro, TComPort) ausliest und das ![]() auswerten. Grüße Klaus |
Re: Kordinaten von GPS Maus auslesen
hi,
ich hatte das mal in der Schule gemacht, wir haben auch das NMEA-Protokoll genutzt um eine kleine Navigation zu schreiben. Allerdings hat unser Gerät einen Virtuellen ComPort gehabt den wir dann mittels ComPort ausgelesen haben. Hab den Code allerdings nicht hier, könnte ihn aber zu späterer Stunde mal anhängen. Grüße blink182 Edit: Nix schönes, aber es hat seinen Dienst getan :) Haben damals ein Garmin Etrex gehabt. Hoffe es hilft dir etwas.
Delphi-Quellcode:
unit ComGPS;
interface uses CPort, Classes,SysUtils,StdCtrls,Controls,CPortTypes,funktionen,ExtCtrls; type TComGPS = class(TComPort) public breite: string; laenge: string; breitengrad:string; laengengrad:string; uhrzeit:string; satelliten:integer; procedure MakeNew(Sender: TWinControl); procedure Loeschen; private Cache: TMemo; N:TRxCharEvent; procedure Lese(Sender: TObject; Count: Integer); end; implementation uses Unit1; procedure TCOmGPS.MakeNew(Sender: TWinControl); begin Cache:=TMemo.Create(Sender); Cache.parent:=Sender; Cache.Height:=400; Cache.Width:=400; Cache.Visible:=false; TMethod(N).Data:=Self; TMethod(N).Code:=@TComGPS.Lese; OnRxChar:=N; end; procedure TComGPS.Loeschen; begin try if connected then close; Cache.free; Cache:=nil; except end; end; procedure TComGPS.Lese(Sender: TObject; Count: Integer); var Str,zeile:string; i:integer; begin ReadStr(Str,count); Cache.Text:=Cache.Text+Str; begin for i:=0 to Cache.Lines.Count-1 do begin zeile:=Cache.Lines[i]; if (pos('$GPGGA',zeile)>0) and (copy(zeile,40,1)='1') then begin uhrzeit:=copy(zeile,8,10); if pos('S',zeile)>0 then breite:='-'+copy(zeile,15,9) else breite:=copy(zeile,15,9); if pos('E',zeile)>0 then laenge:=copy(zeile,27,10) else laenge:='-'+copy(zeile,27,10); laenge:=Stringreplace(laenge,'.',#44,[]); breite:=Stringreplace(breite,'.',#44,[]); FOrm1.timer1.Enabled:=true; cache.Clear; end; end; end; end; end. |
Re: Kordinaten von GPS Maus auslesen
um was für eine gps-maus handelt es sich denn? oO finde das thema allgemein interessant -- eben auch, das ganze selbst zu programmieren, da das protokoll nicht all zu kompliziert aussieht.
|
Re: Kordinaten von GPS Maus auslesen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz