Po pierwsze:
luckas09 napisał: ...czyli ustawienia zegara szyny SCL i po obliczeniu wyszło 489 Hz. Co spełnia wymagania wg noty katalogowej czyli 16 razy mniej niż częstotliwość układu PCF 32768Hz.
Nie wiem skąd ten pomysł. W nocie katalogowej układu PCF8583, którą ja znalazłem, częstotliwość maksymalna szyny SCL wynosi 100kHz.
Po drugie:
Sprawdzaj chociaż, czy otrzymujesz bit potwierdzenia od układu slave. W swoim kodzie nie masz kompletnie kontroli nad tym, co się dzieje na magistrali. Odczyt rejestru TWSR po każdej operacji na magistrali znacznie ułatwia diagnostykę i zapobiega powstawaniu "bałaganu" na magistrali.
Po trzecie:
luckas09 napisał: Zaloguj się, aby zobaczyć kod
Przeanalizuj, co chcesz osiągnąć tym fragmentem kodu.
Wysyłasz adres z bitem R_W ustawionym na READ.
Nastęonie wpisujesz do rejestru TWDR zmienną
'sekundy'. Po co? Będziesz ją wysyłał? Przecież teraz odczytujesz dane z magistrali.
W którym miejscu po odebraniu bajtu danych z magistrali odczytujesz go z rejestru TWDR do zmiennej
'sekundy'?
PS. No i nadal używasz TWCR |= ...