Hallo,
hoffe mir kann jemand helfen.
Baue mir gerade ein GPS Gerät für z.B. Geocaching mit Touchscreen. Mit einer festen Koordinate funktioniert bereits alles, Entfernung, Winkel etc.
Das Modul funktioniert einwandfrei am PC und ist das NAVILOCK NL-650ERS mit Ublox6 chip. Ohne das Modul läuft auch mein Menü, Touchauswahl alles top. Sobald ich aber den TXD vom GPS-Modul mit RXD am Atmega32 verbinde. Zeigt das Display abwechselnd Streifen, ist mal ganz schwarz, zeigt gar nichts und so weiter.. Hab den Code mal aufs geringste reduziert. Finde keinen Fehler.
Das GPS ist ein RS232 Modul . Habe das Buch von Stefan Hoffman, da wird ein ähnliches auch direkt am Controller angeschlossen. Gibt es irgendwelche Fusebits die man einstellen muss. Oder muss man Pin14 und 15 (auch PD0 und PD1) erst als TXD RXD Softwareseitig definieren? Doch eigentlich nicht, oder? An was kanns liegen?
Hier ist der Code:
Danke schonmal für die UnterstützungCode:$regfile = "M32def.dat" $crystal = 16000000 $baud = 38400 $hwstack = 70 $swstack = 65 $framesize = 40 $lib "glcdLC7981.lib" Config Serialin = Buffered , Size = 100 ' Konfig. der ser. Eingabe Enable Interrupts Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portc , Ce = 5 , Cd = 2 , Rd = 3 , Enable = 4 , Reset = 6 , Mode = 8 Cls Setfont Font8x8 Dim Gelesen As Byte 'eingelesenes Zeichen Dim Teilstring(14) As String * 12 Dim Anzahl As Byte Dim Gpsdaten As String * 98 Dim Header As String * 6 Dim Stunde As Byte Dim Tempstring As String * 2 Const Sommerzeit = 0 Lcdat 73 , 1 , "GPS - TEST - Navilock" Do Gelesen = Inkey() If Gelesen = 36 Then Input Gpsdaten Noecho '36 = $ Header = Mid(gpsdaten , 1 , 5) If Header = "GPRMC" Then Cls Anzahl = Split(gpsdaten , Teilstring(1) , ",") Gpsdaten = "" Lcdat 40 , 1 , "TEST:" ; Teilstring(5) 'sollte ein N zeigen End If Loop End $include "font8x8.font"
![]()







					
					
					
						
Zitieren


Lesezeichen