intérruption par overflow du timer2 récalcitrante, help

Pour toutes vos questions sur CodeVision et la programmation en C en général

Modérateur : Modérateur

halifax
NOUVEAU
NOUVEAU
Messages : 11
Inscription : 02 avr. 2008 14:05
Contact :

intérruption par overflow du timer2 récalcitrante, help

Message par halifax »

bonjour,
j'ai un problème sur mon code.
c'est surement une erreur toute bette mais je la vois pas
enfaite quand je le simule il rentre dans l'interruption int0 sans problème
après il devrait autorisé une interruption par comparaison du timer 2 mais le problème c'est que le timer 2 dépasse ocr2 sans exécuté l'interruption du timer 2.

je pense que vous avez l'œil plus averti que moi sur le sujet, pouvez vous m'aidez????
merci


j'ai mis que un bout du programme bien sur ya le reste du wizzard
petite précision c'est sur atmega16l.

Code : Tout sélectionner

 int A=0;    
 int C=1;
 
interrupt [EXT_INT0] void ext_int0_isr(void)
{
A=1;
TIMSK=0x80;

}


interrupt [TIM2_COMP] void timer2_comp_isr(void)
{
switch (A)    {   


   case 1:
     while(6)
     OCR2=0x94; //horizontal  
     A=2;
      break; 
    }
    }

void main(void)
{
PORTD=0x80;
DDRD=0x80;
TCCR2=0x7B;
TCNT2=0x00;
OCR2=0x08;
GICR|=0x40;
MCUCR=0x00;
MCUCSR=0x00;
GIFR=0x40;
TIMSK=0x00;


Répondre