Partage
  • Partager sur Facebook
  • Partager sur Twitter

Interruptions sur AVR328

    23 octobre 2014 à 13:09:11

    Bonjours  à tous

    Je suis un cours à distance (MOOC) sur la programmation des microcontrôleurs. Je suis confronté à un programme d'interruption où il y a des temporisations que j'ai pas compris. Ces temporisations sont indiquées aux commentaires.

    //AVR/Arduino timer2 interrupt
    void setup() { 
     TCCR2B = 0b00000010; // clk/8
     TIMSK2 = 0b00000001; // TOIE2 local
     sei() ; // GIE global
    }
    ISR (TIMER2_OVF_vect) { // Interrupt service rout.
     // TOV automatiquement remis à zéro
     volatile byte cntpf, cntto; 
     TCNT2 = 62; // 256-200 --> 100 us
     GererEncodeur () ; // 12 us 
     GererPasAPas () ; // 7 us
     if (cntpf++ > 40) { // toutes les 4ms
     cntpf = 0; 
     DoPfm (pfmD,pfmG); // 10us
     }
     if (cntto++ > 250) { // toutes les 1s
     cntto = 0 ; 
     timout - - ;
     if ( timeout == 0 ) {
     timout ++ ;
     AlarmeTimeout () ;
     } 
     }
    }
     
    Merci infiniment.

    -
    Edité par imsanl 23 octobre 2014 à 13:10:43

    • Partager sur Facebook
    • Partager sur Twitter

    Interruptions sur AVR328

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown