Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
Equivalent d'une boucle "For while"
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonjour tous,
Savez-vous si il existe l’équivalent d'une boucle "for while" en langage C avec MikroC ?
Je m'explique :
Je souhaite faire une boucle en faisant 250 passage ( pour diminuer le contraste), mais seulement quand on laisse le BP appuyé, si on lâche le BP on doit sortir de la boucle .
Ceci dans le but de faire une petite animation sympa avec mon LCD ( SSD1306).
En rusant j'ai donc imitant la boucle for avec un while , mais je me demandais si il n'y avait pas une autre façon de faire ? Je ne sais pas si on peut combiner des conditions dans la boucle for.
Voila ce que j'ai fait (programme simplifié) :
Merci à vous
Savez-vous si il existe l’équivalent d'une boucle "for while" en langage C avec MikroC ?
Je m'explique :
Je souhaite faire une boucle en faisant 250 passage ( pour diminuer le contraste), mais seulement quand on laisse le BP appuyé, si on lâche le BP on doit sortir de la boucle .
Ceci dans le but de faire une petite animation sympa avec mon LCD ( SSD1306).
En rusant j'ai donc imitant la boucle for avec un while , mais je me demandais si il n'y avait pas une autre façon de faire ? Je ne sais pas si on peut combiner des conditions dans la boucle for.
Voila ce que j'ai fait (programme simplifié) :
Code : Tout sélectionner
void animation_chiffre(unsigned char chiffre){
i = 250;
while ((BP_D==1) && (i>0)){
i--;
OLED_M_command(SSD1306_SETCONTRAST);
OLED_M_command(i);
Delay_ms(4);
}
;
Merci à vous
Equivalent d'une boucle "For while"
- paulfjujo
Expert- Messages : 2589
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour,
C'et pas mal comme cela !
mais d'autres variantes sont effectivement possibles.
C'et pas mal comme cela !
mais d'autres variantes sont effectivement possibles.
Code : Tout sélectionner
i = 250;
while i>0)
{
i--;
if (BP_D==0)break;
OLED_M_command(SSD1306_SETCONTRAST);
OLED_M_command(i);
Delay_ms(4);
}
ou ......
for (i=250; i>0;i--)
{
OLED_M_command(SSD1306_SETCONTRAST);
OLED_M_command(i);
Delay_ms(4);
if (BP_D==0) i=0; // fait sortir de la boucle if
}
Equivalent d'une boucle "For while"
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 39 invités