Hallo Forum, mein lpc (2294 auf phytec 200) soll eigentlich "hello world" sagen aber irgendwie kommt das beim hyperterminal nicht an...langsam gehen mir auch einfach die ansätze zur problembehebung aus (is ja eigentlich auch nur nen bsp-programm von keil was gehen sollte!)...: baudrate-9600 eingestellt (teiler=16 bei 2.5 mhz vpb-clock=1/4cpu) 8-bit wordlänge 1 stoppbit kein paritybit keine flussteuerung befehl: printf(bla bla/n) bei sendchar('x') nur leerzeichen.... stdio.h eingebunden jumper geprüft... Im hyperterminal habe ich alles auch so eingestellt, wird auch im ansi-format erkannt aber... Auch example-code von der nxp-seite (bsp. zu uart ausgabe) wird von der uart vornehm zurückgehalten. Bestenfalls erhalte ich OU~D oder sowas. gruß thorsten
Hi, wie siehts mit Quarz aus? Oder is das eingebaut... MfG Und3rt4ker
Hallo, bei "Hieroglyphen" würde ich auch auf einen ungenauen Takt (oder falsche Baudrate) tippen. Ich würde mal periodisch ein einzelnes Zeichen senden und diesen Datenframe mit dem Oszilloskop aufzeichen. Dann kannst du die reale Baudrate bestimmen und versuchen diesen Frame per Hand zu decodieren. Übersichtlichere Terminals für solche Spielereien: http://www.der-hammer.info/terminal/index.htm oder das br@y Terminal...
Hallo, vielen dank für den link ersteinmal, sende ich mit printf(" \n") ein leerzeichen (0x20) zeigt mir HTerm eine E8 ????????? gruß
Naja auf den ersten Blick würde ich sagen da stimmt was nicht... Auf jeden fall liegt es nicht an HTerm.
Servus, eine sehr scharfsinnige Analyse des sachverhalts...
Schreib doch mal welchen COM du verwendest. Ich kenn jetzt nur den 2378, dort sind 2 u 3 wenn ich mich recht errinnere am Anfang gar nicht eingeschaltet. Aber dein Problem klingt schon nach falscher Baudrate. Was benutzt du denn für eine Funktion zum initialisieren? Bist du sicher, dass du alle Register für den jeweiligen Comport eingestellt hast? Ich glaube da gabs noch irgendwo ne zusätzliche Clockeinstellung, die man beachten musste, also nicht nur das Register für die Baudrate. Dazu kann ich dir heute nachmittag evtl. mehr sagen.
Mehr ist ja auch schlecht möglich bei dieser ausführlichen Fehlerbeschreibung. Ich geh etz mal davon aus du hast kein Oszi oder meidest zumindest den Umgang damit. Jedenfalls tippe ich wie gesagt auf eine falsche oder ungenaue Baudrate. Mit folgenden Ursachen: - Fehler in der Schnittstellenkonfiguration (Software im Controller/PC) - Oszillatortakt zu ungenau (meist bei internem Resonator) - Controller oder PC kann die gewünschte Baudrate nicht mit einem ausreichend kleinem Fehler erzeugen - Schlechte oder falsche Verbindung / Störungen Lösungsmöglichkeiten: - Rumprobieren bis es klappt - Messen (Oszilloskop) und Ursache finden. Wenn am Controller das falsche raus kommt liegts an der Software ansonsten an Dingen nach dem Controller.
das rätsel ist gelöst! xtal und cpucore freq.(aus der die baudrate abgeleitet wird) sind nicht dieselbe frequenz. bei xtal=10mhz ist cpu=50mhz woraus folgt das u1dll nicht 16 sondern 0x51 sein muss um 9600bit/s zu erhalten! vielen dank für die rege anteilnahme am problem! mfg Th.H
Die mitgelieferte Startup Datei benuetzt, nicht verstanden was drin war, die PLL aktiviert und ploetzlich laeuft die CPU viel schneller als erwartet. Warum eigentlich 10 MHz, das ist normalerweisse 12 MHz auf diesem Board und dann hatten all die Kommentare mit 15 MHz VPB Geschwindigkeit gestimmt. Naja, laeuft jetzt, ist wohl die Hauptsache. Robert
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.