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
"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?
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
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.