Bonjour,
Sur mon PIC18F4550, je programme avec Hitech-C et souhaite utiliser les interruptions du timer0
Voici le code:
Le problème, c'est qu'a priori, je ne rentre pas dans ma routine d'interruption et donc ma led ne clignote pas.Code:#include "configbits.h" #include <p18f4550.h> #include "delay.h" #define LED PORTCbits.RC2 void InitPIC(void); void interrupt ISR(void) { PORTCbits.RC1=1; if (TMR0IF) { LED=1; Delay1ms(250); LED=0; TMR0L=0x00; // Chargement du timer à 0 (temps maxi) TMR0H=0x00; TMR0IF=0; // On reset le flag d'interruption } PORTCbits.RC1=0; } /************************************ MAIN ***********************************/ void main(void) { InitPIC(); // Init des registres & ports du PIC TMR0ON=1; // Activation du Timer 0 while (1); } /*****************************************************************************/ void InitPIC(void) { // Config des ports E/S : 1 => entrée ; 0 => sortie TRISC = 0x00; // Port C en sortie // Config des Timers T0CON=0x2F; // Prescaler On à 256, mode 16bits à Fosc/4 TMR0L=0x00; // Chargement du timer à 0 (temps maxi) TMR0H=0x00; // Config des interruptions TMR0IE=1; // Timer0 interruption active GIE=1; // Activation des interruptions PEIE=1; }
Par ailleurs, pas non plus d'activité sur la PIN RC1 !
Je crois avoir correctement programmer mes interruptions, mais je vois pas pourquoi elle ne s'active pas !
Pour infos, les cong bits
Merci pour votre aideCode:#pragma config PLLDIV = 5 // (20 MHz crystal) #pragma config CPUDIV = OSC1_PLL2 #pragma config USBDIV = 2 // Clock source from 96MHz PLL/2 #pragma config FOSC = HSPLL_HS #pragma config FCMEN = OFF #pragma config IESO = OFF #pragma config PWRT = OFF #pragma config BOR = ON #pragma config BORV = 2 #pragma config VREGEN = OFF //USB Voltage Regulator #pragma config WDT = OFF #pragma config WDTPS = 32768 #pragma config MCLRE = ON #pragma config LPT1OSC = OFF #pragma config PBADEN = OFF
-----