bekomme Ascii Symbole über serielle Schnittstelle

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Community,

    ich möchte mit einem Jupiter GPS Receiver (TU30-D410) und einem Raspberry Pi die aktuellen Geodaten auslesen. Dafür habe ich den GPS Empfänger seriell angeschlossen. Es scheint so, als ob es funktionieren würde. Habe aber folgendes Problem:

    Die Geodaten, die ich seriell empfange, sind ASCII Symbole? Wie kriege ich es hin die Daten in eine menschenlesbare Form zu bringen?
    Komischerweise passiert das in keinem Tutorial, welches ich im Netz gefunden habe. Alle Ausgaben über die serielle Schnittstelle sind menschenlesbar :S...
    Ich füge mal mein Programmcode mit ein.

    Ich bedanke mich im Voraus für jede Hilfe :D

  • bekomme Ascii Symbole über serielle Schnittstelle? Schau mal ob du hier fündig wirst!

  • Moin,

    ich habe das Problem leider immer noch nicht lösen können. Habe auch schon mit unterschiedlichen Baudraten rumgespielt, aber leider tut sich da nichts. Immer die gleiche Ausgabe. Laut Datenblatt ist 4800 baud korrekt.
    Ich füge mal ein Bild ein von der Ausgabe. Hoffe könnt mir dann weiter helfen.

    [/img]


  • Moin,

    ich habe das Problem leider immer noch nicht lösen können. Habe auch schon mit unterschiedlichen Baudraten rumgespielt, aber leider tut sich da nichts. Immer die gleiche Ausgabe. Laut Datenblatt ist 4800 baud korrekt.

    Probier doch ersteinmal mit einem Terminalprogramm ( z.B. minicom ), ob Du damit eine verwertbare Ausgabe von dem Empfänger bekommst.

  • Ich hatte gestern ein Testscript geschrieben um Serielle Ausgaben über Python anzuzeigen - versuchs mal damit:

  • Vielen Dank für die zahlreiche Hilfe...
    Also...

    dbv:
    Hab mal die 100 rausgenommen. Leider keine Veränderung.


    Probier doch ersteinmal mit einem Terminalprogramm ( z.B. minicom ), ob Du damit eine verwertbare Ausgabe von dem Empfänger bekommst.


    Habe es auch mal mit minicom probiert. Habe den serial port auf 48008N1 mit device /dev/ttyAMA0 eingestellt. Immer noch nichts lesbares :S...


    Ich hatte gestern ein Testscript geschrieben um Serielle Ausgaben über Python anzuzeigen - versuchs mal damit:

    Leider bringt das auch nichts.


  • Kann es sein, dass die Beschaltung falsch ist. Falls dies der Fall wäre, dürfte ich doch eigentlich nicht mal die ASCII Symbole empfangen, oder?

    Liege ich da richtig?

    Jein, sonst würdest Du ja nichts empfangen. Vielleicht bist Du aber am falschen seriellen Port an deinem GPS Empfänger? Hast Du es schon mal mit 9600N81 versucht? Es könnte auch sein, das dein GPS Teil falsch konfiguriert od. initialisiert ist und Daten mit einem anderem Protokoll sendet, wobei dann Zeichen auch mal als ASCII interpretiert werden.


  • Jein, sonst würdest Du ja nichts empfangen. Vielleicht bist Du aber am falschen seriellen Port an deinem GPS Empfänger? Hast Du es schon mal mit 9600N81 versucht? Es könnte auch sein, das dein GPS Teil falsch konfiguriert od. initialisiert ist und Daten mit einem anderem Protokoll sendet, wobei dann Zeichen auch mal als ASCII interpretiert werden.

    Kannst du mit eventuell sagen, wie ich die konfiguration des GPS Empfängers ändern kann? Das wäre super. Der GPS Empfänger ist nämlich nur ausgeliehen. Es kann wirklich sein, dass der Empfänger einfach anders konfiguriert ist.

    Ich stecke gerade an einem Steckboard. Ich wollte eigentlich, nachdem alles funktioniert das ganze zusammenlöten. Aber ich werde es mal jetzt tun. Vielleich haut da was mit der Verbindung nicht hin.

    Kann bitte kurz jemand rüberschaun, ob die Verbindung richtig ist.

    GPS Pin | RPI PIN
    1 | 4 (5V) benutze eine externe Antenne, die 5 Volt braucht
    4 | 4 (5V)
    18 | 6 (ground)
    11 | 10 (rx) gps serial data out -> rpi rx
    7 | 6 (ground) nmea output

    Füge mal die Pinbelegungen noch mit ein.

  • Mit 5V killst Du die GPIO Port's deines RPi, der mag nur 3,3V. Entweder Du betreibst den Empfänger mit 3,3V, dann wird auf dem seriellen Port auch nur ein 3,3V TTL Signal ausgegeben, oder Du benutzt einen Levelshifter 3,3V <-> 5V. Mal abgesehen davon würde ich immer eine serielle Schnittstellen mit TX -> RX, RX <- TX und GND - GND beschalten.

    Einmal editiert, zuletzt von Fliegenhals (7. Juli 2014 um 14:13)

  • Hallo,
    hab mir eben mal kurz das Datasheet angeschaut.

    Zitat

    By default, the GPS140HR comes configured with a base address of 0x2E8.

    Das ist doch normalerweise die com2.
    jumpere die mal auf com1.(0x3F8).
    Auserdem achte mal auf die Beschreibung des NMEA Jumpers.

    Wenn das alles ok ist solltest Du doch auch nach dem Sync des Enpfängers dieses sekündliche blinker der LED sehen.

    Ist doch alles recht genau berschrieben.
    habs hier gefunden.
    Anleitung

    viel Erfolg

  • derlei Zeichen sah ich nur bei falscher Baudrate (Start Stop Bits Paraty) oder falschen Pegeln

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • Hallo,
    hab mir eben mal kurz das Datasheet angeschaut.

    Das ist doch normalerweise die com2.
    jumpere die mal auf com1.(0x3F8).
    Auserdem achte mal auf die Beschreibung des NMEA Jumpers.

    Wenn das alles ok ist solltest Du doch auch nach dem Sync des Enpfängers dieses sekündliche blinker der LED sehen.

    Danke für die Info, aber leider hat mein Empfänger keine Jumper. Es handelt sich genau genommen um das Modell TU30-D440-021.
    Datasheet hier zu finden Datasheet

    Mit coding utf8 gings auch nicht. Ich bin gerade noch am Löten. Werde mal den Empfängern später mit 3.3 Volt betreiben. Ich hoffe es funktioniert dann...

  • ok, wusste ich nicht.
    Du kannst aber auch probehalber einfach die andere Com in der Software aktivieren.
    Entspricht ja auch einer automatischen Base-Adressänderung.
    Mit der Baud-rate zu spielen scheint mir eher nicht sinnvoll.
    Die ist offensichtich fest.

    Das Encoden ist in Wiki auch genau beschrieben.

    dann viel Erfolg.
    gruß root

    Einmal editiert, zuletzt von root (7. Juli 2014 um 15:11)


  • ....Mit der Baud-rate zu spielen scheint mir eher nicht sinnvoll.
    Die ist offensichtich fest.

    am PI schon, wie soll man den PI sonst überreden dessen Baudrate zu schlucken :lol:

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Jar, wie er leibt und lebt: :lol:

    Zitat

    am PI schon, wie soll man den PI sonst überreden dessen Baudrate zu schlucken

    Das ist ja wohl klar....:D

    gruß root

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!