Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

interruption PIC 18F452



  1. #1
    azerty987

    interruption PIC 18F452


    ------

    bonjour

    je cherche à realiser une interruption haute (pour inverser l'etat d'une led) et une basse (utilisation du timmer 0 pour une autre led)
    Lorsque que j'appuis sur un bouton poussoir reliée à la patte RB4 de mon pic ( mise à l'etat bas) je voudrais couper le timmer 0 et inverser letat de la led broche RB1.Si par contre je n'appuis pas..une fois que le timmer deborde inverse l'etat de la led port RB2 et tout cela de maniere "non stop"
    malheuresement celane fonctionne pas..je ne comprend pas pourquoi

    voila mon code


    #include <p18F452.h>

    #include <delays.h>
    #include <string.h>
    #include <portb.h>
    void tempo3(void);
    #pragma config WDT = OFF
    void configuration1(void);
    void configuration2(void);
    void InterruptHandlerHigh (void);
    void inter(void);

    --------------------------------------------------------------------------

    #pragma code InterruptVectorHigh = 0x08
    void
    InterruptVectorHigh (void)
    {
    _asm
    goto InterruptHandlerHigh //jump to interrupt routine
    _endasm
    }

    #pragma code
    #pragma interrupt InterruptHandlerHigh

    void
    InterruptHandlerHigh ()
    {
    INTCONbits.RBIF = 0;
    PORTBbits.RB1 = !PORTBbits.RB1;
    T0CON=0b1000111;
    TMR0H=0xB3;
    TMR0L=0xB4;

    }

    ---------------------------------------------------------------------------

    #pragma code LowVector=0x18
    void atInterruptlow(void)
    {
    _asm GOTO inter _endasm
    }
    #pragma code



    #pragma interlow vect18
    void inter()
    {

    INTCONbits.TMR0IF=0;

    PORTBbits.RB2 = !PORTBbits.RB2;

    }
    ---------------------------------------------------------------------------

    void tempo3(void)
    {
    T0CON=0b0000111;
    TMR0H=0xB3;
    TMR0L=0xB4;
    INTCONbits.TMR0IE=1;// autorise IT débordement
    RCONbits.IPEN=1;// Interruption prioritaires
    INTCONbits.GIE=1;

    }

    ////////////////////////////////////////////////////////////////////////////////////////////////

    void main(void)

    {
    TRISBbits.TRISB4=1;
    TRISBbits.TRISB2=0;
    TRISBbits.TRISB3=0;
    PORTBbits.RB4=1;
    PORTBbits.RB2=0;
    PORTBbits.RB3=0;

    tempo3();

    RCONbits.IPEN=1;// Interruption prioritaires
    INTCONbits.GIE=1;
    INTCON2bits.RBIP=1;
    INTCONbits.PEIE = 1;
    INTCONbits.RBIE = 1;
    INTCONbits.RBIF = 0;



    while(1)

    {
    T0CON=0b10000111;
    PORTBbits.RB3 = 1;



    }

    }






    AVEZ vous une idee?

    Merci

    -----
    Dernière modification par azerty987 ; 23/02/2009 à 17h16.

  2. Publicité
  3. #2
    azerty987

    Re : interruption PIC 18F452

    personne n'avune idee ??

  4. #3
    HULK28

    Re : interruption PIC 18F452

    Bonsoir,

    c'est la même question que pour ton USART et la led sur RB4 de l'autre jour, pourquoi ne reste tu pas sur ce premier topic?

    La réponse à ta question est que si tu entres dans l'interruption par RB4 tu dois interdire l'interruption sur timer0 le temps que tu es dans celle liée à RB4, comme ça plus de problème.
    Dès que tu sors de ton interruption tu réactives l'interruption sur timer0.
    Le génie est fait d'1 pour cent d'inspiration et de 99% pour cent de transpiration. Edison

  5. #4
    azerty987

    Re : interruption PIC 18F452

    pouvez vous svp me proposer un code d'apres celui que jai mis plus haut parceque la je bloque....
    merci

  6. #5
    azerty987

    Re : interruption PIC 18F452

    Personne ne peut m'aider ??

  7. A voir en vidéo sur Futura

Sur le même thème :

Discussions similaires

  1. 18F452 interruption timmer 0 et changement etat port possible?
    Par azerty987 dans le forum Électronique
    Réponses: 7
    Dernier message: 22/02/2009, 20h04
  2. interruption haute priorite sur 18F452
    Par azerty987 dans le forum Électronique
    Réponses: 2
    Dernier message: 21/02/2009, 15h51
  3. pic 18f452
    Par mrfabian dans le forum Électronique
    Réponses: 14
    Dernier message: 21/11/2008, 22h28
  4. pic 18F452
    Par antoineleclercq150687 dans le forum Électronique
    Réponses: 0
    Dernier message: 01/02/2007, 17h37
  5. interruptions PIC 18F452
    Par koaber dans le forum Électronique
    Réponses: 3
    Dernier message: 09/03/2005, 20h37
Découvrez nos comparatifs produits sur l'informatique et les technologies.