Aller au contenu


nordiste

Inscrit(e) (le) 27 mars 2006
Déconnecté Dernière activité nov. 18 2009 01:53
-----

Sujets que j'ai initiés

probleme de timer0 avec CCS et pic 16F877A

18 juin 2006 - 07:43

Bonjour, je suis en train de realiser un programme qui utilise le timer 0 pour me sortir une frequence sup a 30 000Hz avec un 16F877A. je veux utiliser le timer 0 pour cela.
j'ai donc tape ce programme mais il n'as pas l'air de renter dans l'interruption...
je n'arrive pas a trouver mon probleme. de plus la doc dispo avec ce compilo pur le timer0 est assez reduite...

voici mon morceau de prog :
#int_TIMER0
void TIMER0_isr()
{
	set_timer0(6);


	if (Xtemps >= 200) 
	{
  if (XA == 1)
 	 output_toggle(ENAX);
  if (XB == 1)
 	 output_toggle(ENBX);
	
  Xtemps = 250;
	}
	
	if (Ytemps >= 200) 
	{
  if (YA == 1)
 	 output_toggle(ENAY);
  if (YB == 1)
 	 output_toggle(ENBY);

  Ytemps = 250;
	}
	
	if (Ztemps >= 200) 
	{
  if (ZA == 1)
 	 output_toggle(ENAZ);
  if (ZB == 1)
 	 output_toggle(ENBZ);

  Ztemps = 250;
	}
}

dans le prog principal :
void main() 
{ 	 
	unsigned int i;
//	setup_wdt(WDT_144MS);	// config du chien de garde
	
	setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4);
	enable_interrupts(INT_TIMER0);
	enable_interrupts(GLOBAL);

	set_timer0(6);
...


voila, je ne comprend pas pourquoi ce ne rentre pas dans l'interruption...
merci de votre aide.
marc