- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 2 von 2

Thema: GPS Daten - Verarbeitungsproblem

  1. #1

    GPS Daten - Verarbeitungsproblem

    Anzeige

    E-Bike
    Servus,

    ich habe einen Royaltek serielle GPS-Maus und eine LCD-Display an einem ATmega8. Die GPS Maus sendet ca. jede Sekunde schön brav die GPS Daten die ich haben will. Es kommen nacheinander wie $GPGGA,14.., $GPGSV,2,1.., $GPGSV,2,.., $GPRMC,14.., $GPVTG,2,.. etc.
    Wenn ich jetzt folgendes Programm starte bekomme auf den LCD viel mehr GPRMC als GPGGA, d.h. in ca. 10 Sekunden 1x ein GPGGA Datensatz und ca. 180 GPRMC Datensätze von dem Programm ausgewertet obwohl die Maus nur 1-2 Mal pro Sekunde die Daten sendet
    Code:
    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 4800
    
    Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.1 , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5
    Config Lcd = 40 * 4
    
    Initlcd
    Cursor Off
    Cls
    
    Dim A As Byte
    Dim GpsDaten As String * 75
    Dim Gga As Integer
    Dim Rmc As Integer
    
    Gga = 0
    Rmc = 0
    
    Do
        Do
        	A = Inkey()
        	If A = 36 Then Input GpsDaten
        	Typ = Mid(GpsDaten , 1 , 5)                         
        Loop Until Typ = "GPGGA" OR Typ = "GPRMC" 
    
        'Hier würden jetzt die einzelnen Info`s aus dem GPSDatensatz gesplittet
    
        Locate 1, 1
        Lcd Mid(GpsDaten, 1, 40)
    
        If Typ = "GPGGA" then
    	Gga = Gga +1
    	Locate 2, 1
    	Lcd "GGA = " ; Gga
        End if
    
        If Typ = "GPRMC" then
    	Rmc = Rmc +1
    	Locate 3, 1
    	Lcd "GGA = " ; Gga
        End if
        Typ = ""
    Loop
    
    End
    Lasse ich die Do until Schleife nur durch GPGGA unterbrechen läuft alles wie es soll. D.h. irgendwie funktioniert das ganze nicht mehr wenn auch auf GPRMC reagiert werden soll.
    Ich bin langsam am verzweifeln und ich glaub ich sehe den Wald vor lauter Bäumen nicht mehr.

    Bin für jeden Tip dankbar

    Gruss

    Alex aka Ciclo

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    09.03.2004
    Beiträge
    178
    Könnte es daran liegen, das Du die Variable "Typ" bzw. "GpsDaten" nach "Abarbeitung" nicht initialisierst, sondern sie weiterhin ihren Wert behalten egal was in "A" ankommt ?

    Probier mal ein: GpsDaten = "" zwischen den beiden "Do's"...

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress