désolée, je ne sais pas pourquoi cela c'est mal affiché,
//programme : mouvement bebe
#define F_CPU 4000000UL
#include <avr/io.h>
#include <stdlib.h>
#include <avr/delay.h>
//entrees
#define mouvement PINA
//variable
int compteur_mouvement;
//initialisation des périphériques
void Init_Periph(void)
{
compteur_mouvement=0;
DDRA = 0xFD;/* port A en sortie sauf PA1 en entrée*/
PORTA = 0x02;
}
/**********************************************************
Programme
***********************************************************/
void main(void)
{
Init_Periph();
while(1)// boucle infinie a modifier si il y a un bouton on/off
{
compteur_mouvement=0;
while (compteur_mouvement<5) //quand on sort de cette boucle le bébé a fait 12 mouvements en moins de 180 seconde
{
if (mouvement == 0x02)
{
compteur_mouvement++;
}
_delay_ms(3000);
}
PORTA=0x0C;
_delay_ms(3000);
_delay_ms(3000);
_delay_ms(3000);
_delay_ms(3000);
PORTA=0x00;
}//fin while et fin du programme ( bouton off)
}//fin du main
Pour ce while la: while (compteur_mouvement<5; j'aimerai que si on dépasse un temps de 180s, ce while ne doit pas continuer, il doit recommencer. Comment puis-je faire? Merci