Interruptinitialisierung Kategorie: Progr. Assembler, TaskingTools, OS (von Markus - 13.08.2003 15:41) | |
| |
Hallo, ich bin dabei in der Tasking EDE eine Interruptroutine auszulösen. Derzeit wird die CAP/COM2 mit dem Timer 7 verwendet. Das Hauptprogramm läuft bis zum Ende durch und wenn ich den Timer nicht stoppe läuft es ewig, klar! Aber warum wird die Interruptroutine nicht ausgelöst? Nachfolgend das Hauptprogramm und die Interruptroutine. Gru� Markus // Main program void main ( void ) { // Control Register T78CON T78CON = 0x00; // Timer Input Selection T7M = 0; // Timer / Counter Mode Selection => 0 = Timer Mode; 1 = Counter Mode T7REL = 0xFF00; // Reload value for Timer 7 // CAPCOM Timer Interrupts T7IC T7IC = 0x12; // Group Level (GLVL) = 2; Interrupt Priority Level (ILVL) = 4 // CAP/COM Mode Register for CAPCOM2 Unit CCM4 = 0x6; // Cap/Com Mode Register; 0b0xxx => Timer 7; 0bx110 => compare mode 2 T7IE = 1; // Interrupt Enable Control Bit => 0 = Interrupt Request ist disable; 1 = enable T7R = 1; // Timer / Counter Run Mode => 0 = disabled; 1 = enabled #pragma asm POP R12 POP R12 #pragma endasm } // Interruptroutine _interrupt ( 0x3D ) void // Trap Number of CAPCOM Timer 7 timer ( void ) { P1L0 = 1; P1L0 = 0; P1L0 = 1; P1L0 = 0; } | |
Antwort schreiben Antworten: |