Forum: Mikrocontroller und Digitale Elektronik Probleme mit USART-Interrupt's bei ATmega32 mit CodeVision


von Sepp -. (sepp_o)


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

von crazy horse (Gast)


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?

von Sepp -. (sepp_o)


Angehängte Dateien:

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

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.