Witam.
Buduję zegar słowowy (word clock). Funkcję wyświetlającą daną godzinę mam już napisaną i działa prawidłowo (przetestowana dla każdej godziny wpisanej ręcznie), funkcje obsługi zew. RTC (PCF8563) też mam i działają. Zabrałem się za zbieranie tego do kupy i mam następujący kod (wklejam tylko problematyczny kawałek):
zmienne time_minutes i time_hour (zadeklarowane oczywiście jako volatille) trzymają aktualny czas, flaga refresh oznacza że od ostatniego sprawdzenia minęło 5 sek (flaga ustawiana na przerwaniu timera), funkcja LED_send powoduje wysłanie godziny i minuty na wyświetlacz
powyższy kawałek kodu powoduje nieprawidłowe wyświetlenie godziny (wyświetlacz zachowuje się tak, jakby zwracało to ciąg jedynek)
bezpośrednie wywołanie tej funkcji jako (przed powyższym kawałkiem kodu) działa prawidłowo
także prawidłowo wyświetla się godzina w przypadku kodu
nie mam już pomysłu co jest nie tak. błąd jest najprawdopodobniej głupi, ale nie widzę go...
Buduję zegar słowowy (word clock). Funkcję wyświetlającą daną godzinę mam już napisaną i działa prawidłowo (przetestowana dla każdej godziny wpisanej ręcznie), funkcje obsługi zew. RTC (PCF8563) też mam i działają. Zabrałem się za zbieranie tego do kupy i mam następujący kod (wklejam tylko problematyczny kawałek):
Kod: C / C++
zmienne time_minutes i time_hour (zadeklarowane oczywiście jako volatille) trzymają aktualny czas, flaga refresh oznacza że od ostatniego sprawdzenia minęło 5 sek (flaga ustawiana na przerwaniu timera), funkcja LED_send powoduje wysłanie godziny i minuty na wyświetlacz
powyższy kawałek kodu powoduje nieprawidłowe wyświetlenie godziny (wyświetlacz zachowuje się tak, jakby zwracało to ciąg jedynek)
bezpośrednie wywołanie tej funkcji jako
Kod: C / C++
także prawidłowo wyświetla się godzina w przypadku kodu
Kod: C / C++
nie mam już pomysłu co jest nie tak. błąd jest najprawdopodobniej głupi, ale nie widzę go...