Forum: Compiler & IDEs ATmega128 USART Probleme


von Udo Schaumburger (Gast)


Angehängte Dateien:

Lesenswert?

Hi.
Ich habe einene Atmega128 µC mit STK500 und 501.
Ich versuche ganz normal auf USART zu schreiben, bekomme auch etwas
über die RS232 Schnittstelle herein, jedoch scheint der Microcontroller
das Zeichen in einer Endlosschleife auszugeben.
Zuerst bemerkte ich den Fehler gar nicht da ich die Zeichen sowieso in
einer Endlosschleife ausgegeben habe, bis ich dann bemerkte das wenn
ich mehrere verschiedene Zeichen nacheinander ausgeben will immer nur
dasselbe bekomme.

Ich weiß wirklich nicht weshalb, der Code entspricht dem Tutorial auf
dieser Seite bzw. im Datenblatt des AVR nahezu 1:1.
Ich hatte Anfangs Probleme mit der Baud-Rate, die sind aber schon
gelöst seit ich einen Externen Clock verwende.

von Dirk B. (dirk-)


Lesenswert?

Baue mal in deine Endlosschleife einen kleinen wait befehl ein. Dein
Speicher am PC duerfte sonst voll laufen.

von Udo Schaumburger (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe jetzt mal die delayms routine von dieser seite eingebaut (mein
compiler kennt den wait() befehl anscheinend nicht)
Ich bekomme trotzdem immer noch dasselbe Zeichen immer wieder...nur das
die Abstände zwischen den einzelnen länger geworden sind.
Ich hab dann auch versucht in der Subroutine zweimal aufs UDR zu
schreiben. Nix. Macht immer noch nur das erste zeichen.

(In diesem Fall also: nur immer dddddddddddddddd  etc...)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?


von Peter (Gast)


Lesenswert?

Hast Du das Fuse-Bit für den AtMega103 Compatibility-Mode deaktiviert?
Dieses Bit ist per Default programmiert, der AtMega128 wird nämlich
immer im AtMega103-Mode ausgeliefert.

MfG  Peter

von Udo Schaumburger (Gast)


Lesenswert?

Vielen Dank, es war wirklich diese Fuse...
And dem Problem sitze ich schon ziemlich lange.
Ich war mir zwar ziemlich sicher das es nicht am Code liegen konnte
aber  an was es sonst liegen könnte kam mir einfach nicht in den Sinn.

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.