Advertisement
Guest User

04

a guest
May 26th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.17 KB | None | 0 0
  1.  
  2.     int licznik = 0; // licznik wcisnięć klawisza ENTER
  3.     int index = 0; // indeks edytowanej cyfry w tablicy
  4.     signed char save[4]; // zapis poprzedniego stanu tablicy
  5.     int edycja = 0; // zmienna zezwalająca na edycję cyfry
  6.     signed char pom; // zmienna pomocnicza do wykonania animacji
  7.     while (1)                   //nieskończona pętla
  8.     {
  9.         //modyfikacje poszczególnych cyfr pod wpływem wciśnięcia danego przycisku  
  10.  
  11.         if (kl_ENTER == 1) {
  12.  
  13.             kl_ENTER = 0;
  14.             if (licznik > 0) edycja = 1; // po pierwszym wcisnieciu ENTER zezwala na edycję
  15.             if (licznik > 1) index++; // przesunięcie edycji
  16.  
  17.             licznik++;
  18.         };
  19.         if (licznik >4) // osiągnięcie 5 krotnosci wciśnięcia ENTER
  20.         {
  21.             edycja = 0; // zerowanie liczników
  22.             licznik = 0;
  23.             index = 0;
  24.             for (int i = 0; i < 4; i++) // zapisanie stanu tablicy
  25.             {
  26.                 save[i] = cyfry[i];
  27.             }
  28.         };
  29.        
  30.        
  31.  
  32.         if (edycja) {
  33.             pom = cyfry[index]; // animacja edycji -> wykorzystanie zmiennej pomocniczej
  34.             cyfry[index] = ' '; // czysta komórka
  35.             display_7seg(); //wizualizacja cyfr
  36.             _delay_ms(0.5);
  37.             cyfry[index] = pom;
  38.         }
  39.         else
  40.         {
  41.             display_7seg(); //wizualizacja cyfr
  42.         }
  43.  
  44.  
  45.     };
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement