Probleme mit USART-Interrupt's bei ATmega32 mit CodeVision

OP #329152
Lesenswert?

Salve

Ich habe da ein merkwürdiges Problem.

Ich benutze die neueste Freeware-Version von Code Vision AVR.

Das Programm läuft solange fehlerferei auf dem ATmega32L bis ich den
Interrupt für den Empfang von Daten über USART aktiviere.

Sobald ich dieses Flag setze werden alle I/O Pin's auf Tristate
gesetzt egal wie sie I/O's konfiguriert wurden.

Kann es daran liegen dass ich die Free-ware Version für private
Anwender verwende oder hat der µC einen Knax(ich habe gerade keinen
anderen µC mit USART zur Hand)?

mfg Sepp
Gast #329153
Lesenswert?

"Interrupt driven serial communication is disabled in the CodeWizardAVR
Evaluation.
Please purchase a commercial version."

Das dürfte eigentlich keine Auswirkung auf die Compilierung haben, wenn
du die Interrupts zu Fuss programmierst.
Programm?
OP #329154
Lesenswert?

Salve

Ich hatte es so gemacht dass ich zuerst vom Assistenten ein Programm
erstellen ließ dass einfach die Port's C und D auf Ausgang setzte und
die normalen, getesteten Einstellungen des USART aktivierte.

Als dass geklappt hat, habe ich einfach zum Testen ob das Senden klappt
ein 'T' gesendet.
Dieses 'T' wurde korrekt empfangen.

Danach habe ich das Interrupt-Flag aktiviert und die Interruptroutine
hinzugefügt.

Ich weis dass ich den Code etwas übersichtlicher gestalten sollte, aber
um Fehlerquellen zu vermeiden habe ich den automatisch generierten Code
weitgehend unverändert gelassen.

Solange ich der USART-Interrupt deaktiviert war, hat alles
funktioniert.
Aber sobald ich das Flag für den Interrupt und die Interruptroutine
hinzugefügt hatte, stellte der µC alle I/O's auf tristate.

Die Pegel habe ich mit einem alten Voltkraft DMM mit
Logikpegelerkennungsfunktion getestet.

mfg Sepp
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren