Bonjour à tous,
Je suis débutant en matière de PIC, et je viens de rencontrer un problème assez préoccupant.
Je programme sur PIC18f4520, avec une carte de développement PIC Dem 2plus connectée via ICD3.
Jusqu'ici, j'ai réalisé des programmes simples d'allumage de LEDs sans encombre.
Cependant, je viens de m'atteler à un programme de génération de PWM que voici :
Après avoir compilé et exécuté le programme, ça ne marche pas mais ce n'est pas tout ! Les LEDs RB2 et RB0 restent allumés, PIC branché ou pas, et quand je branche mon PIC18 sur une autre carte de développement (même modèle), celle-ci réagit de la même manière. J'ai donc essayé de ré-exécuter mon ancien programmes de LEDs qui marchaient très bien mais rien n'y fait ... la carte reste bloquée.Code:#include <p18cxxx.h> #include <pwm.h> // pour fonctions pwm #include <timers.h> // pour fonction timer2 // configuration PICDEM2+ quartz #pragma config OSC = HS #pragma config WDT = OFF #pragma config LVP = OFF #pragma config PBADEN = OFF #define BtnS3 PORTBbits.RB0 #define BtnS2 PORTAbits.RA4 #define R50 500 // 50% #define R25 250 // 25% #define R0 0 // 0% #define N 249 void main(void){ OpenPWM1(N); OpenTimer2(TIMER_INT_OFF & T2_PS_1_1 ); for( ;; ) { if(BtnS3 == 0 ) { SetDCPWM1(R50); } else { if(BtnS2 == 0 ) { SetDCPWM1(R25); } else { SetDCPWM1(R0); } } } }
Je sais déjà qu'il y a une erreur dans mon code : la valeur de N ne devrait pas être de 249 car celle-ci est adaptée à un quartz de 4MHz. Or je n'ai pas ajouté de quartz sur ma carte donc il semblerait que sa valeur par défaut soit de 32 768Hz.
Comme je débute, il se pourrait que je dise quelques anneries, donc n'hésitez pas à me reprendre si c'est le cas.
Est-ce que l’exécution de ce programme aurait pu endommager ma carte de développement ?
Pouvez-vous m'aider s'il vous plaît ?
Merci d'avance.
-----