Bonjour,
Je cherche à faire un petit menu en C pour permettre à un utilisateur de choisir par 3 choix, 2 de ces choix doivent amener l'utilisateur à entrer 2 autres informations.
1 Ajouter un numero de telephone -> Entrer la position ou le stocker (0-100) -> Entrer le numero de telephone
2 Supprimer un numero de telephone -> Entrer la position ou il se trouve (0-100)
3 Afficher la liste des numéros
L'utilisateur entre les informations par l'interface serie, un buffer appelé uart2_buffer contient ce qu'il tape dès qu'il termine par la touche [ENTREE]
J'ai fait ceci, mais je suis bloqué car je ne sais pas comment laisser le programmer tourner et permettre a l'utilisateur de rentrer les données via le menu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 int choix; unsigned char uart2_buffer[30]; choix = atoi(uart2_buffer); switch (choix) { case 1: // Ajouter un numéro putrsUART2("Entrer la position du numero a ajouter-> "); uart2_buffer[0] = '\0'; break; case 2: // Supprimer un numéro putrsUART2("Entrer la position du numero a supprimer-> "); uart2_buffer[0] = '\0'; break; case 3: // Liste des numéros putrsUART2("Liste des numeros\r\n"); uart2_buffer[0] = '\0'; break; default: // ne fait rien dans les autres cas // putrsUART2("choix non disponible"); break; }
Lorsque l'utilisateur tape sur 1 puis [entrée] , uart2_buffer contient "1 et le caractère de fin :\0"
Lorsque le programme tourne et que uart2_buffer ="1\0", on rentre dans le case 1 et on en sort aussitot, pour éviter de boucler et d'afficher sans cesse le message : "Entrer la position du numero a ajouter->", je vide uart2_buffer.
A partir de ce point je ne sais pas comment faire pour attendre que l'utilisateur rentre une position comprise entre 1 et 100 et ensuite le numéro de téléphone sur 10 chiffres.
Pourriez vous m'aider svp ?
Merci beaucoup,
Partager