Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1546 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Problème d'interruption externe sur PIC18

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème d'interruption externe sur PIC18

n°2239685
fanriri
Posté le 06-10-2014 à 09:21:45  profilanswer
 

Bonjour,
Mon ancien post n'a pas beaucoup attiré votre attention, donc je vais restreindre le problème sur le fonctionnement d'une interruption externe INT0 avec un PIC18.
 
J'utilise le PIC18F2680 et le compilateur C Hi-Tech C Compiler.
 
A chaque interruption, l'état d'une pin (RB1) devrait changer de niveau.
 
Voici donc le programme en question :

Code :
  1. #include <p18F2680.h>
  2. #pragma config OSC = HSPLL
  3. #pragma config FCMEN = OFF
  4. #pragma config IESO = OFF
  5. #pragma config MCLRE = ON
  6. #pragma config PBADEN = OFF
  7. #pragma config XINST = OFF
  8. void interrupt it_sur_rb0(void)
  9. {
  10. if (INTCONbits.INT0IF)   // vérifie que l'IT est INT0, origine PB0=0 (bouton S3)
  11.   {
  12.    PORTBbits.RB1=!(PORTBbits.RB1);
  13.    PORTC=0b11111110;
  14.    INTCONbits.INT0IF=0; //efface le drapeau d'IT*/
  15.   }
  16. }
  17. void main (void)
  18. {
  19. PORTB=0b00000000;
  20. PORTE=0b00000000;
  21. ADCON1=0x0F;
  22. TRISB=0b00000001;
  23. INTCON2bits.RBPU=0;
  24. INTCON2bits.INTEDG0=1;
  25. INTCONbits.INT0IE=1; // INT0 activée
  26. RCONbits.IPEN=1;
  27. INTCONbits.GIEH=1;
  28. INTCONbits.GIEL=1;
  29. while(1){
  30. }
  31. }


 
En simulant sur proteus ISIS, avec un schéma assez simple :  
 - avec un boutton-poussoir relié au pin RB0 et une LED reliée au pin RB1.
 
Et j'ai constaté le problème suivant : L'état du pin RB1 change de niveau au premier interruption, mais reste bloqué sur cet état pour les interruptions suivantes.
 
Est-ce que l'interruption ne marche qu'une fois? Y-a-t-il un problème de boucle infini?
 
Je vous remercie d'avance et fais appel à votre lumière afin de m'éclairer la-dessus.  

mood
Publicité
Posté le 06-10-2014 à 09:21:45  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Problème d'interruption externe sur PIC18

 

Sujets relatifs
Interruption Timer 2 sur PIC18Problème pour insérer des données sur MySQL
Création d'un thème basique sous WordPress : problème CSSProblème affichage balises sous IE
Probleme Avec un effet de slideProblème Bash: permission denied
Probleme exo simple en C[Résolu] Probleme execution de script php avec cron
Problème RegEx et accent 
Plus de sujets relatifs à : Problème d'interruption externe sur PIC18


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR