bonjour a tous
j'ai un exercice avec PIC et afficheur LCD et clavier numérique de type"keypad-phone "
il me demande d'écrire une boucle répétitive while 1 qui consista a afficher un message <<tape code de 4>>aux(1,1)
ensuite la saisie d'un code de 4 chiffres a afficher a partir des coordonnées (6 ,2) et l'affichage de message << on to restart>> apres 2 secondes de la fin de la saise , l'apui de la touche <<on>> permet de recommancer
j'ai fais ce programme mais il ne sort pas de la boucle , il reste de me damder de taper un code 4
#include<16F877.h>
#use delay(clock=20000000)//frequence
#fuses HS,NOWDT
#byte port_b=6
#byte port_d=8
#include"lcd_4bits.C"
#include"kbd.c"
int s;
int i;
void initial()
{
lcd_init();
kbd_init();
set_tris_b(0);
set_tris_d(0XFF);
}
void main()
{
initial();
lcd_gotoxy(1,1);
lcd_putc("Taper ON!");
do
{
s=kbd_getc();
}
while(s!='a');
lcd_putc("\f");
while (1) // la boucle répétitive
{
lcd_gotoxy(1,1);//les cordonnées de message tape code de 4!
lcd_putc("Tape code de 4");
for (i=0;i<4;i++)
{
do// la structure de la
{
s=kbd_getc();//boucle d'attente de l'appui d'une touche
}
while(s==0);sur le clavier numérique
lcd_gotoxy(6+i,2);
lcd_putc(s);
}
delay_ms(2000);//attend un temps avant effacer
lcd_putc("\f");//effacer taper code de 4 et le code
lcd_gotoxy(1,1);
lcd_putc("On to restart"); afficher ce message sur l'écran
j'essaye depuis hier mais j'ai pas trouver la solution
-----