Forum: Mikrocontroller und Digitale Elektronik GPS + Mega128 + VERZWEIFLUNG


von Daniel H. (wolf2340)


Lesenswert?

Guden an alle,

erstmal danke an alle ... hab hier schon sehr sehr sehr viele 
Hilfestellungen bekommen bezüglich avr!
Jetzt bin ich aber an einem Punkt wo ich einfach nicht weiterkomme. 
Möchte gern eine GPS Maus (HAICOM HI-204III) Mini-DIN PS/2 an den 
Mega128 anschließen.
Hab Tx(GPS) <-> Rx(Mega) ; Rx(GPS) <-> Tx(Mega) ; GND <-> GND ; so nur 
bei VCC bin ich mir nicht sicher! Am VCC Pin kommen doch +5 Volt raus 
und in der Anleitung von der GPS Maus steht: "Supply voltage of 3,3 V or 
3,8V ~ 12 V are supported." So das heißt doch, dass ich die Maus auch 
mit den +5 Volt betreiben kann ?????!?!?! Aber es tut sich irgendwie 
NICHTS....
Hat jemand eine Ahnung was ich noch machen könnte ???

Gruß wolf

von chippy (Gast)


Lesenswert?

Versuchs doch mal mit den vorgeschlagenen 3,3 oder 3,8 bis 12 Volt . Nur 
probehalber um zu sehen ob du die datenpins richtig erwischt hast.

von Daniel H. (wolf2340)


Lesenswert?

Die ganze Zeit hatte ich nicht einmal SAFT auf der GPS Maus. Jetzt hab 
ich VCC und GND getauscht und jetzt is Saft drauff ! ... Warum ist das 
so ?

von Daniel H. (wolf2340)


Lesenswert?

Also gut die GPS Maus hat jetzt mittlerweile Saft!!! Nur bekomm ich 
keinerlei Strings von der GPS Maus... Hier mal mein Quellcode

int uart1Init()
{
// USART1 initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART1 Receiver: On
// USART1 Transmitter: On
// USART1 Mode: Asynchronous
// USART1 Baud rate: 9600

unsigned int baud = 4800;
UCSR1A=0x00;
UCSR1B=0x90;
UCSR1C=0x86;
//UBRR1H=0x00;
//UBRR1L=0x67;

UBRR1H = (unsigned char)(baud>>8);
UBRR1L = (unsigned char)baud;

 return 0;
}

interrupt [31] void usart_rxc_isr(void)
{
         putcUart(UDR1,UART0);

}


So ist nurmal ein Ausschnitt ... putcUart soll Daten an den PC senden

von Stefan (Gast)


Lesenswert?

Wenn man als Fragesteller immer nur mit sich selbst redet, sollte das 
einem ein ernster Hinweis darauf sein, dass man anderen zuwenig Infos 
liefert...

von Ralf (Gast)


Lesenswert?

Hi Daniel,

hast Du mal versucht die Maus zunächst mal am PC mit einem Terminal zu 
betreiben? Dann kannst Du zunächst schonmal ausschließen, dass Du ein 
Register des Controllers falsch initialisiert hast.
Deine Initialisierung des Baudrateregisters sieht irgendwie ein wenig 
seltsam aus. Ich denke nicht, dass man gleich die Baudrate dort 
einträgt. Schau mal im Datenblatt nach, dort sollten eigentlich für die 
gängigsten Quarzfrequenzen Beispiele drin stehen.

Gruß,
Ralf

von Daniel H. (wolf2340)


Angehängte Dateien:

Lesenswert?

Stefan wrote:
> Wenn man als Fragesteller immer nur mit sich selbst redet, sollte das
> einem ein ernster Hinweis darauf sein, dass man anderen zuwenig Infos
> liefert...

Ja du hast ja recht ... jetzt liefer ich alles :)

Ralf wrote:
> Hi Daniel,
>
> hast Du mal versucht die Maus zunächst mal am PC mit einem Terminal zu
> betreiben? Dann kannst Du zunächst schonmal ausschließen, dass Du ein
> Register des Controllers falsch initialisiert hast.
> Deine Initialisierung des Baudrateregisters sieht irgendwie ein wenig
> seltsam aus. Ich denke nicht, dass man gleich die Baudrate dort
> einträgt. Schau mal im Datenblatt nach, dort sollten eigentlich für die
> gängigsten Quarzfrequenzen Beispiele drin stehen.
>
> Gruß,
> Ralf

So Ralf hab die HEX Zahl für 4800 Baud ausgerechnet und reingeschrieben 
... aber wie immer ES TUT SICH NIX
---
Im Anhang mal den kompletten Quellcode. Ich vermute mal das ich an 
irgendeiner Stelle großen Mist baue...

von Daniel H. (wolf2340)


Lesenswert?

Am liebsten wär mir die GPS Maus erstmal an den PC anzuschließen. Nur da 
gibts dann wieder ein Problem. Oder ich sags mal so, ich hab damit ein 
Problem. Die GPS Maus hat 4 Adern 1.VCC;2.GND;3.TX;4.RX. Mit welcher 
Belegung  löt ich die Kabel an ein serielles Kabel ??? Kann mir das 
vielleicht jemand mal mitteilen, dann könnt ich die GPS Maus erstmal am 
PC testen !!!

Also schon mal Danke im Vorraus

Gruß Daniel

von Christoph B. (cborowski)


Lesenswert?

Daniel Heßler wrote:
> Am liebsten wär mir die GPS Maus erstmal an den PC anzuschließen. Nur da
> gibts dann wieder ein Problem. Oder ich sags mal so, ich hab damit ein
> Problem. Die GPS Maus hat 4 Adern 1.VCC;2.GND;3.TX;4.RX. Mit welcher
> Belegung  löt ich die Kabel an ein serielles Kabel ??? Kann mir das
> vielleicht jemand mal mitteilen, dann könnt ich die GPS Maus erstmal am
> PC testen !!!
>
> Also schon mal Danke im Vorraus
>
> Gruß Daniel

Hallo,

ich habe zu Hause auch ein HAICOM GPS-Maus, die einen PS/2 Stecker hat. 
Im Internet gibt es Schaltpläne, wie die von Dir genannten Adern auf den 
seriellen Port und auf den PS/2 Tastatur/Maus-Port des Rechners 
aufgeteilt werden müssen. D. h. Du mußt die einen Adapter bauen 
bestehend aus einer PS/2-Buchse (zum Anschluss der GPS-Maus), einem 
seriellen Stecker (Datenaustausch zwischen GPS-Maus und Rechner) und 
PS/2-Stecker (zum Anschluss an den PS/2-Port des Rechners für den Saft).
Ich kann Dir das Schaltbild samt Belegung aber erst morgen schicken, da 
ich bis dahin nicht an meinen Rechner komme.

Gruss
Christoph

von Stefan (Gast)


Lesenswert?

Die GPS-Maus HAICOM HI-204III ist hier beschrieben:
http://www.haicom.com.tw/gps204III.shtml

Das Adapterkabel heisst "PS/II to DB9 adapting cable".

Christoph hat schon darauf hingewiesen, dass man oft die Vcc und GND vom 
PS/2 Anschluss holt und TX/RX/GND auf den DB9-Anschluss gibt.

Setzt man voraus, dass die Entwickler mit dem Pinout am PS2 Stecker 
keinen Unfug getrieben haben (z.B. um proprietäre Adapter zu verkaufen) 
geht es so weiter:

Das PS2 Pinout findet man z.B. bei 
http://www.burtonsys.com/PS2_keyboard_and_mouse_mini-DIN-6_connector_pinouts.html 
Interessant sind für Vcc und GND Pin 3 und Pin 4.

Versorgt man die GPS-Maus mit Vcc und GND müsste eine mindestens 
blinkende LED zu sehen sein und auf einer Leitung eine Spannung von -3 
bis -15 V gegen GND zu messen sein. Die so identifizierte TX Leitung 
müsste man mit RX an einem seriellen Kabel verbinden und zum COM-Port 
eines PCs geben. Möglicherweise liegen TX und RX auf den beiden NC bzw. 
Reserved Pins am PS2 Anschluss.

Verkompliziert wird die Geschichte etwas durch "Both the LVTTL-level and 
RS232-level serial interface are provided on the interface connector." 
D.h. neben dem obigen RS232-level serial interface gibt es auch ein 
LVTTL-level Interface. LVTTL sind Logikpegel von 0..3,3 V
http://de.wikipedia.org/wiki/Logikpegel

D.h. findet man oben nirgends eine negative Spannung, ist auf dem PS2 
Stecker vielleicht nur LVTTL und im Adapterkabel ist zusätzlich noch ein 
LVTTL-Level nach RS232-Level Konverter-IC drin.

Für den Anschluss an den PC könnte man praktischerweise die RS232-level 
benutzen und für den Anschluss an den µC die LVTTL Level (ggf. mit 
Spannungsteiler, wenn der µC mit 5 V läuft).

Das Datenformat der GPS-Maus ist aus obiger Quelle nicht direkt 
ersichtlich. Der GPS Chipset in der Maus 
http://www.sirf.com/products/gps_chip.html erlaubt verschiedene 
Protokolle (Al3/F (huch was ist das?), SiRF Binary, NMEA).

Wenn du Glück hast, ist NMEA voreingestellt und du bekommst von der Maus 
mehr oder minder Klartexte. Wenn du Pech hast, bekommst du SiRF 
Binärdaten, die du mit dem µC dekodieren musst. Wahrscheinlich kann man 
das Protokollformat über die serielle Schnittstelle umstellen. Dazu 
sollte man das Handbuch vom Chipset und/oder der Maus konsultieren.

von Christoph B. (cborowski)


Lesenswert?

Eine Anmerkung zum Beitrag von Stefan. Haicom benutzt zwar den PS/2 
Stecker, hält sich aber NICHT an die Pin-Belegung eines PS/2-Steckers 
einer Tastatur o. Maus.

Gruss
Christoph

von Christoph B. (cborowski)


Angehängte Dateien:

Lesenswert?

Hallo,

hier die schematische Darstellung des Adapters, um eine Haicom GPS-Maus 
über die serielle und PS/2 Schnittstelle an den Rechner/PC 
anzuschließen.

Hoffe, daß das weiterhilft.

Gruss
Christoph

von Stefan (Gast)


Lesenswert?

Zwischen die Maus und den AVR muss natürlich ein Pegelwandler wie der 
MAX232, da die Maus ein RS232 Signal ausgibt (Pegel anders und 
invertiert).

Stefan

von Daniel H. (wolf2340)


Lesenswert?

Danke Danke für die vielen Antworten !!!

Stefan wrote:
> Zwischen die Maus und den AVR muss natürlich ein Pegelwandler wie der
> MAX232, da die Maus ein RS232 Signal ausgibt (Pegel anders und
> invertiert).
>
> Stefan

Em Stefan ... das hört sich plausibel an !!! Sollte ich vielleicht 
machen :) naja jetzt kommt halt raus das ich kein Elektronikfreak bin ! 
Naja gut ich werds versuchen Danke

von Christoph B. (cborowski)


Lesenswert?

Hallo Daniel,

meine schematische Darstellung bezog sich NUR auf den Anschluss der 
GPS-Maus an den PC und NICHT an den AVR. Beim Anschluss an den PC muss 
kein Pegelwandler zwischen, beim Anschluss an den AVR muss ein 
Pegelwandler verwendet werden.

Gruss
Christoph

von Daniel H. (wolf2340)


Lesenswert?

Christoph Borowski wrote:
> Hallo Daniel,
>
> meine schematische Darstellung bezog sich NUR auf den Anschluss der
> GPS-Maus an den PC und NICHT an den AVR. Beim Anschluss an den PC muss
> kein Pegelwandler zwischen, beim Anschluss an den AVR muss ein
> Pegelwandler verwendet werden.
>
> Gruss
> Christoph

Hallo Christoph,

hab leider kein PS2 an meinem Rechner ! Kann ich auch eine externe 
Stromversorgung benutzen ? Müsste doch auch gehen ?  Oder lieg ich 
falsch

Gruß Daniel

von CBorowski (Gast)


Lesenswert?

Hallo Daniel,

ja Du kannst eine externe Stromquelle nutzen. Z. B. ein externes 
Netzteil mit +5V Gleichspannung. Natürlich auf die Polung achten.

Gruss
Christoph

von Stefan (Gast)


Lesenswert?

Klar kannst du auch eine externe Stromversorgung benutzen. Sie sollte 
nur ziemlich genau 5 V liefern und auch unter Last (wieviel Strom zieht 
die GPS-Maus?) nicht all zu stark einbrechen.

Du könntest z.B. aus einem 8-12 V Steckernetzteil eine 5 V Spannung mit 
einem Spannungswandler 7805 ggf. Kühlblech, zwei 10 µF Kondensatoren zur 
Pufferung von Bedarfsspitzen und einer Diode als Verpolungsschutz 
basteln. Diese Art Schaltungen sind Standard (Tip: Datenblatt vom 7805 
wälzen).

von gpsklaus (Gast)


Lesenswert?

.... und auch USB-Anschlüssen kann man die 5V entnehmen.

Klaus

von Marco S. (masterof)


Lesenswert?

gpsklaus wrote:
> .... und auch USB-Anschlüssen kann man die 5V entnehmen.
>
> Klaus

da ist auch mal weniger drauf als 5V.
Da ist der 7805 schon besser.

von Daniel H. (wolf2340)


Lesenswert?

So habe jetzt die Maus mit externen Spannung an dem PC. Die Maus 
funktioniert auch ... siehe LED Status der Maus. Nur kommen am PC 
keinerlei Daten an ... Kann machen was ich will !!! Angeschlossen hab 
ich die Maus wie Christoph mir  erklärt hat. (siehe 
Adapter_HaicomGPSMaus_auf_RS232.gif)

Gruß Daniel

von Marco S. (masterof)


Lesenswert?

vertausche mal tx und rx.

von gpsklaus (Gast)


Lesenswert?

> Nur kommen am PC keinerlei Daten an ...

Damit würde ich mir nicht so sicher sein.
Wahrscheinlich ist eher, daß der Zugriff auf die Daten das Problem 
darstellt.

Wertest Du ankommende Daten ( erst einmal ) mit einem Terminalprogramm, 
wie z.B. dem im Windowws-Zubehör zu findenden HYPERTERMINAL aus?

Auf jeden Fall musst Du das Programm auch noch entsprechend des 
benutzten ComPorts und der verwendeten Datenrate ( GPS-Empfänger geben 
ihre Daten standardmäßig mit 4800 bps aus ) konfigurieren.

Klaus

von Christoph B. (cborowski)


Angehängte Dateien:

Lesenswert?

Hallo Daniel,

hier das Vorgehen mit/über HyperTerminal.

1. HyperTerminal öffnen
2. Neue Verbindung anlegen (siehe HyperTerminal_1.gif) und OK drücken.
3. In Dialog 'Verbinden mit' COM1 auswählen (siehe HyperTerminal_2.gif) 
und OK drücken.
4. In Dialog 'Eigenschaften con COM1' die Baudrate (Bits pro Sekunde) 
von 2400 auf 4800 stellen (siehe HyperTerminal_3.gif) und OK drücken. 
Wenn die Maus defaultmäßig mit einer anderen Baudrate kommuniziert 
(->Technische Unterlagen), dann muss evtl. was anderes eingestellt 
werden. Die restlichen Parameter (siehe gif-Bild) sollten so stimmen. 
Meiner Haicom-Maus funktioniert damit einwandfrei.
5. Wenn die Maus bereits angeschlossen ist, dann sollten NMEA-Datensätze 
reinkommen.

Ansonsten die Beschaltung des RS232 (serielle Schnittstelle) noch mal 
überprüfen. Hast Du auch beachtet, dass in meiner Anschlussdarstellung 
die Rede von Buchse und Stecker ist bzw. von welcher Seite auf die 
Stecker/Buchsen geschaut wird? Evtl. hast Du etwas 'spiegelverkehrt' 
angelötet (am RS232-Stecker).

Gruss
Christoph

von Christoph B. (cborowski)


Lesenswert?

mhhhh... zu meinem vorherigen Beitrag, hast Du evtl. mehrere COM-Ports? 
Wenn ja, dann muss natürlich auch der richtige COM-Port in HyperTerminal 
angegeben werden.

Gruss
Christoph

von Daniel H. (wolf2340)


Lesenswert?

Also Jungs vielen Dank für Eure Beiträge !!! Echt klasse hier ...

So hab alles ausprobiert

- alle möglichen Baudraten
- alle Beschaltungen RX <-> TX ; TX <-> RX ; RX <-> RX ;Tx <-> Tx
- weniger Spannung mehr Spannung von 3,8 bis 12 alles ausprobiert

ich lass die Maus jetzt mal durchchecken ... vielleicht hat die einen 
Schaden  !

Gruss Daniel

von Christoph B. (cborowski)


Lesenswert?

Hallo Daniel,

also... ich einem Beitrag von Dir steht, dass die Maus Strom bekommt 
(Diode ist am leuchten). Blinkt die Diode oder leuchtet sie 
ununterbrochen?
Lade Dir z. B. von www.tucows.com unter 
http://www.tucows.com/preview/370306 für Windows das Freware-Programm 
'Loc8 NMEA Listener' runter und probiere es damit. Für Linux kannst Du 
Dir z. B. 'GPSMan 5.4.1' (Link: http://www.tucows.com/preview/9355) 
ansehen.

Gruss
Christoph

von Daniel H. (wolf2340)


Lesenswert?

So Leute jetzt hab ich das Teil zerstört :) !!! Ein Moment der 
Unachtsamkeit und es waren 12,80 V auf der Leitung ... Die Maus is 
hinüber ... ABER trotzdem für alles

Gruss Daniel

von andreasGPS (Gast)


Lesenswert?

Hi,

jemand ne Ahnung was kaputt sein könnte bei Überspannung?
Konnte leider keine Schutzdiode oder Sicherung auf der Platine finden.

von Jupp (Gast)


Lesenswert?

Frage lieber danach, was noch ganz geblieben ist.

von Bernd (Gast)


Lesenswert?

Ist mir mit meiner Maus auch mal passiert. Defekt war nur ein kleiner 
SMD 5V => 3V3 Spannungsregler.

von andreasGPS (Gast)


Lesenswert?

Super,

danke für die Info.
Habe auch schon so was vermutet. Da der eingebaute Max noch ohne 
Probleme arbeitet :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.