Witam.
Ten problem dotyczy programowania mikrokontrolera (Atmega8). Ale wydaje mi się że można to rozwiązać nawet bez wiedzy o mikrokontrolerach. A więc napisałem funkcję, która ma za zadanie pobranie od użytkownika dwie cyfry, które są zamieniane w czas. Niestety wyświetlacz ciągle się odświeża a cyfry pokazują się obok siebie tylko jak przytrzymam przycisk. Tu jest kod:
// Urywka z programu//
int inznak()
{
while(key = read_keypad())
znak = bin2bin(key);
return znak;
}
int inczas()
{
int t;
LCD_CLEAR;
LCD_LOCATE(1,0);
lcd_puts("Wprowadź czas:");
znakw = inznak();
t = 10*key;
LCD_LOCATE(6,1);
LCD_WRITE_DATA(znakw);
znakw = inznak();
t += key;
LCD_LOCATE(7,1);
LCD_WRITE_DATA(znakw);
return t;
znakw, znak, key to unsigned char, funkcje read_keypad i bin2bind działają poprawnie bo sprawdzały się w wielu poprzednich programach.
Wydaje mi się że problem, leży w funkcji inczas. Jeżeli ktoś zna rozwiązanie to prosiłbym o jakieś wskazówki.