Hallo! Erstmal die Fakten: -Bin ziemlicher Anfänger! -Ein STK500 mit 8 MHZ Quarz und ATmega8 -Ein Navilock 550ers -Ein LCDisplay Das ganze läuft in sofern als das mir kryptische Zeichen auf dem Display angezeigt werden. Das Navilock ist nur über RX angeschlossen da ich erstmal mit den default settings anfangen will. Als Baudrate habe ich 9600 angegeben, als Quarz 8MHZ.Habe bereits alle möglichen Baudraten ausprobiert, denke aber grundsätzlich dass die Angabe "9600" in der Navilock Dokumentation richtig sein sollte. Die Fuses sind richtig gesetzt da, wenn der Quarz aus dem Sockel gezogen wird, die kryptischen Zeichen sowie die Geschwindigkeit der Darstellung sich verändern. Das Ganze "fühlt sich an" wie ein Baudraten-Fehler den ich aber nicht finden kann. Ich habe das Navilock über eine Steckverbindung and das STK500 angeschlossen. Beim Trennen dieser Verbindung ist mir aufgefallen dass die Daten quasi durch meinen Körper übertragen werden wenn ich beide "Pole" festhalte. Kann es sein dass es in meine "Konstruktion" einstreut? Hat jemand noch eine andere Idee?
Das ist eine ziemliche Raterei, was du uns zumutest. - Funktioniert deine LCD-Ansteuerung? Schon mal Text ausgegeben? - Das Navilock mal über einen Max232 an den PC hängen. Kommen da die Daten? - Bei manchen GPS-Modulen muss das Signal mit einem Transistor invertiert werden. Kenn jetzt dein 550er nicht... Gruß Gerd
Hallo Gerd! Sorry, ich hab mir echt Mühe gegeben das Ganze möglichst detailiert anzugeben. Das Display funktioniert, ich habe schon Text damit ausgegeben. Laut Hersteller ist +5V high und 0V low, daher sehe ich nicht warum das Signal invertiert werden sollte? Ich habe dennoch mal mittles "com" Befehls die bits umgedreht (ich hoffe das war kein Denkfehler!) um das Signal quasi softwareseitig zu invertieren. Hat alles nichts geholfen. Trotzdem schonmal vielen Dank Gerd!
Hi Lt. Datenblatt hat das Modul (NL-550ERS ublox5 - RS232 Modul) 38.400 bps und eine richtige RS232 Schnittstelle. Lässt sich also nur einen Schnittstellentreiber anschliessen. MfG Spess
Hallo Spess! Das habe ich auch gelesen (38400 Baud) allerdings steht im Referenzmanual unter: Appendix/U-blox 5 default settings/Port setting eben 9600 als Baudrate. Welche Angabe mag da die Richtige sein? Der Schnitstellentreiber invertiert nur das Signal? Also einen Inverter mit einem OP Amp basteln? Ist mein Ansatz das mit dem Assemblerbefehl "com" zu machen falsch? Vielen Dank schon mal!
Hi >Also einen Inverter mit einem OP Amp basteln? Geht auch mit Transistor. Sieh dir mal die Schaltpläne vom AVR Butterfly oder AVR ISP (AVR-Studio-Hilfe) an. Besser wäre ein MAX232 oder Äquivalent. >Ist mein Ansatz das mit dem Assemblerbefehl "com" zu machen falsch? Ja. Weil der AVR das Startbit schon nicht erkennt und dadurch auch der Rest falsch ist. MfG Spess
Hallo Spess! Vielen Dank, ich werde das mal ausprobieren. Aber warum einen MAX232? Der macht doch 12V die ich doch garnicht brauche?
Hi >Aber warum einen MAX232? Der macht doch 12V die ich doch garnicht brauche? Bei RS232 ist H -3...-15V und L +3...+15V oder so ähnlich. Und genau das macht der MAX232. MfG Spess
Hallo Spess! Die rs232 Spezifikationen habe ich auch gelesen. Trotzdem bezweifele ich dass der USART Eingang von meinem ATmega8515 mit 12V "behandelt" werden möchte. Bitte korrigier mich falls ich da falsch liege. Ich stütze mich dabei auf diesem Teil der "Electrical characteristics": Input High Voltage except XTAL1 and RESET pins: Vcc +0.5 Habe es übrigens noch nicht probieren können mit dem invertierten Signal. Ich werde das Ergebnis hier posten!
Hi >Die rs232 Spezifikationen habe ich auch gelesen. Trotzdem bezweifele ich >dass der USART Eingang von meinem ATmega8515 mit 12V "behandelt" werden >möchte. Das passiert nur wenn du den AVR an der falschen Seite des MAX232 anschließt. Der RS232-Bus arbeitet mit den o.g. Pegeln. Der MAX232 macht aus den -15...-3V H-TTL-Pegel und aus den +15V...+3V L-TTL-Pegel für die Empfangsseite und das Ganze anders herum für die Sendeseite. MfG Spess
> Die rs232 Spezifikationen habe ich auch gelesen. Trotzdem bezweifele ich > dass der USART Eingang von meinem ATmega8515 mit 12V "behandelt" werden > möchte. ..ebendeswegen musst Du einen MAX232 (oder vergleichbar) dazwischenhängen - eben weil das Modul laut Datenblatt [1] RS232-Pegel liefert. Du kannst das übrigens ganz leicht selber nachmessen: einfach mit einem Mulimeter oder einem Oszi den TX gegen GND messen. Wenn da eine negative Spannung im Bereich -15V bis -3V [2] rauskommt, dann ist es RS232 (und Du brauchst einen invertierenden Pegelwandler). HTH [1] Issesdasda? : http://www.elv-downloads.de/service/manuals_hw/82583_ublox5_engine_Module_Datenblatt.pdf [2] im Ruhezustand.. wenn das Modul sendet und das Multimeter langsam genug(tm) ist dann misst Du damit nur Mist [3] -> Oszi dranhängen [3] Bei RS232-Pegel zu erwarten um 0V, bei TTL-Pegel um 2.5V, bei 3V3-Pegel um 1.6V.. abhängig vom Datenstrom und vom Mulimeter sowie von den Sonnenwinden
Hallo! Ich glaube wir reden ein wenig aneinander vorbei: Für den UART des ATmega gilt doch das er mit 5 Volt "gefüttert" werden will. Richtig? Daher muss ja auch das -12V und +12V zu 0 und 5V gewandelt werden. Richtig? Und zusätzlich muss aus high, low werden und umgekehrt. Richtig? Ja das Navilock Modul ist direkt an Pin 0 von Port D angeschlossen. Nun zum Modul: O-Ton vom Hersteller auf meine Frage was denn nun der serielle rs232 Pegel sei?: "Sehr geehrter Herr XXXXX, vielen Dank für Ihre Nachricht. 5V (High) und 0V (Low) sind die Pegel für diese Schnittstelle. Mit freundlichen Grüßen XXXXX XXXXXXX Navilock Support Team" Also "reden" doch Das Atmega wie auch das Modul mit 0V/5V? Vielleicht sitz ich aber auch grade völlig auf der Leitung? ;-)
Schön, dann hast du TTL-Pegel. Beim Navilock NL-303P habe ich das auch. Allerdings ist da das Signal invertiert. Ich hatte das damals über einen Transistor und ein paar Widerstände gelöst. An das Modul wollte ich nichts senden, nur empfangen. Gruß Gerd
Hi >Ich glaube wir reden ein wenig aneinander vorbei:... Ich habe mich auf dieses Datenblatt bezogen: http://www.navilock.de/suche/60418_NL-550ERS_ublox5.html?show=spec Und da sind die Angaben eindeutig. MfG Spess
Ach so: 1) Ja es ist jenes Modul 2) Da ich blutiger Anfänger bin, bin ich noch sehr weit von einem Oszi entfernt ;-) Aber das Multimeter sagt irgendwas zwischen -3 und -7 V. Hat mir da der Hersteller etwa Mist erzählt? 3) Sonnenwinde? Echt jetzt? ;-) Aber jetzt schon: VIELEN VIELEN VIELEN DANK! Dieses Forum ist UNBEZAHLBAR genial! :-)
Hallo! Ich habe nun das Navilock An Pin 3 vom spare rs323 Anschluss des STK500 angeschlossen und siehe da: Es scheint zu funktionieren! Damit auch andere nachvollziehen können wo der Denkfehler war: 1)Der Hersteller gab an dass es sich bei dem rs232 Pegel um 0 für low und 5 für high handelt. Das ist wohl so nicht richtig. 2)Ich habe mir nicht vorstellen können das ein modul das mit 5V arbeitet eine Spannung von -12 bis plus 12 generieren kann und ehrlich gesagt ist es mir ein Rätsel wie im besondern die negative Spannung erzeugt wird. 3) Die Datenblätter des Moduls sind widersprüchlich. Einerseits wird da von 38400 baud 38400 scheint richtig zu sein. Ansonsten: Vielen Dank für die Hilfe!
Ups da wurde ein wenig Text verschluckt: 3)Die Datenblätter des Moduls sind widersprüchlich.Einerseits wird da von 38400baud gesprochen, im Referenzmanual allerdings von 9600 als standard setting. 38400 scheint richtig zu sein.
schau dir mal die MAX 232 datasheet an, und google mal nach Ladungspumpe Dann werden dir Lichter angehen Das sind eigentlich Grundlagen aber die braucht es halt wenn man mit RS232 basteln will. ;-) Ich glaube im tuturial ist das auch drinnen
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.