Controllerabsturz nach: enable_interrupts(INT_TIMER0);
Dienstag, 22. Mai 2012
Hauptmenü
Startseite
Forum
WIKI
Downloads
Links
Buchempfehlungen
Login
Benutzername
Kennwort
Angemeldet bleiben
Kennwort vergessen?
Benutzername vergessen?
Erstelle einen Account
Re:Pic 16F87 Problem
-
1987_ew
Montag, den 14. Mai 2012 um 09:00 Uhr
Re:Pic 16F87 Problem
-
1987_ew
Montag, den 14. Mai 2012 um 07:31 Uhr
Re:Pic 16F87 Problem
-
Stampede
Freitag, den 11. Mai 2012 um 09:23 Uhr
Pic 16F87 Problem
-
1987_ew
Donnerstag, den 10. Mai 2012 um 14:01 Uhr
Re:Frequenz/PWM-Generator mit serieller Ansteuerung
-
Zeero
Dienstag, den 08. Mai 2012 um 21:45 Uhr
Re:Probleme GPIO-Register
-
Fraeo09
Dienstag, den 08. Mai 2012 um 20:29 Uhr
Re:Probleme GPIO-Register
-
Stampede
Dienstag, den 08. Mai 2012 um 20:22 Uhr
Re:Frequenz/PWM-Generator mit serieller Ansteuerung
-
Edson
Dienstag, den 08. Mai 2012 um 19:32 Uhr
Probleme GPIO-Register
-
Fraeo09
Dienstag, den 08. Mai 2012 um 18:53 Uhr
Re:PIC32 MusicPlayer
-
Stampede
Montag, den 07. Mai 2012 um 09:19 Uhr
Übersicht
Hilfe
Suche
Registrieren
PIC Mikrocontroller Forum
|
PIC Mikrocontroller
|
CCS Compiler
|
Timer (CCS)
|
Controllerabsturz nach: enable_interrupts(INT_TIMER0);
« vorheriges
nächstes »
Seiten:
[
1
]
Autor
Thema: Controllerabsturz nach: enable_interrupts(INT_TIMER0); (Gelesen 1646 mal)
r2d2
Gast
Controllerabsturz nach: enable_interrupts(INT_TIMER0);
«
am:
November 01, 2008, 16:11:45 »
Hallo zusammen,
bin neu hier im Forum, arbeite aber seit einiger Zeit mit CCS.
Bin gerade dabei mein xtes Projekt mit timer-Interrupt zu programmieren, aber egal was ich versuche, nach dem freigeben des timer0-Interrupts stürzt der Controller sofort ab?!
Controller: 18F252
Compiler PCH 4.032
Main:
set_timer0(0);
setup_counters(RTCC_INTERNAL, RTCC_DIV_1 | RTCC_8_BIT);
enable_interrupts(INT_TIMER0);
enable_interrupts(GLOBAL);
Interruproutine:
#INT_TIMER0
void clock_isr() {
set_timer0(10);
printf("Hallo\n\r");
}
Wenn ich versuche zu simulieren sehe ich wie timer0 überläuft, es erfolgt aber kein Sprung zur ISR.
Nach einigen Programmschritten erfolgt ein Sprung irgendwo mitten ins Programm -> Absturz.
habe versucht timer1 zu benutzen, bekomme aber das gleiche Problem.
Was kann das sein?
Vielen Dank für Eure Antworten!
Gespeichert
Steffen
Globaler Moderator
Hero Member
Offline
Beiträge: 1235
Re: Controllerabsturz nach: enable_interrupts(INT_TIMER0);
«
Antworten #1 am:
November 03, 2008, 11:40:06 »
Du betreibst den Timer mit internem Takt ohne Vorteiler --> Überlauf nach 256 Maschinenzyclen.
Die Sicherungsorgie des CCS beim Einsprung in den Interuptvektor und das printf in der ISR wird aber mehr in Anspruch nehmen, daher springt er sofort nach dem Verlassen der ISR wieder in diese und der Controller "hängt".
Zeitraubende Sachen, wie z.B. printf, gehören nie in eine ISR!
Das wäre jedenfalls eine mögliche Erklärung, ohne das Ganze jetzt überprüft zu haben. Dein Simulationsergebnis passt da aber nicht so recht dazu.
Gruß
Steffen
Gespeichert
Seiten:
[
1
]
« vorheriges
nächstes »
Gehe zu:
Bitte wählen Sie ein Ziel:
-----------------------------
PIC Mikrocontroller
-----------------------------
=> CCS Compiler
===> AD-Wandler (CCS)
===> Timer (CCS)
===> Schnittstellen (CCS)
===> LCD (CCS)
=> Programmiersprache C
=> Programmiersprache Assembler
===> AD-Wandler (Assembler)
===> Timer (Assembler)
===> Schnittstellen (Assembler)
=> PIC Mikrocontroller Allgemein
===> AD-Wandler (Allgemein)
===> Timer (Allgemein)
===> Schnittstellen (Allgemein)
=> Entwicklungswerkzeuge
===> MPLAB
===> Compiler
===> Programmer und Debugger
=> Beispielcodes und Projekte
-----------------------------
Elektronik
-----------------------------
=> Elektronik und Schaltungen
-----------------------------
Sonstiges
-----------------------------
=> Groupware / Projektmanagement
=> Anregungen und Kritiken
=> Probleme und Fragen
=> Sonstiges
Powered by SMF 1.1.11
|
SMF © 2006-2009, Simple Machines LLC
Seite erstellt in 0.032 Sekunden mit 18 Zugriffen.