PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : gesamtes Nmea Protokoll alle 10 Sekunden übertragen



Spacecam
28.12.2013, 14:18
Hallo RN,

ich habe einen GPS emfänger und will nun alle 10 Sekunden das ganze Nmea Protokoll über mein Uart weiter übertragen. Also Er soll quasi alle 10 Sekunden den ganzen Datensatz aufzeichnen und dann über TX weiterleiten. Das mit der Zeit bekomm ich selber hin nur ich weiß nicht wie ich das gesamte Protokoll auslese^^ In dieses Script wird nur der GPGG teil benutz. Ich muss aber alles übertragen.
Vielleicht könnt ihr mir ja helfen.


LG
Spacecam





import serial
import sys
import time

Zeichen = 0
Laenge = 0
Qualitaet = 0
Satelliten = 0

Hoehe = 0.0
Breitengrad = 0.0
Laengengrad = 0.0

Input = ""
Uhrzeit = ""
Checksumme = ""

Datenliste = []

# UART oeffnen
UART = serial.Serial("/dev/ttyAMA0 ", 38400)
UART.open()


while True:

Zeichen = 0

# String leeren
Input = ""

# Zeichen empfangen
Zeichen = UART.read()

# Pruefen ob Uebertragung gestartet wurde
if Zeichen == "$":

# Zeichen 2-6 einlesen
for Counter in range(4):

Zeichen = 0
Zeichen = UART.read()
Input = Input + str(Zeichen)

# Pruefen ob das GGA Protokoll gesendet wird
if Input == "GPGG":

# Zeichen empfangen bis ein LF als Abschluss kommt
while Zeichen != "\n":
Zeichen = 0
Zeichen = UART.read()
Input = Input + str(Zeichen)

Input = Input.replace("\r\n", "")

UART.write(Input)

Kampi
28.12.2013, 15:38
Hey,

da musst eigentlich nur die Zeile "if input = = "GPGG" an dein Protokoll anpassen, sprich du guckst wie es anfängt und setzt es ein.