lpc2294 gibt über UART1 nur hieroglyphen aus.

OP #688433
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
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...
(Firma: my-solution)
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.
OP
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
Gast
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.