Wpis z mikrobloga

@mikson123: potwierdzenia masz zaszyte w standardzie I2C więc nie musisz się tym przejmować.
Możesz sobie dopisać w programie liczenie CRC z ramek żeby być pewnym że się bit nie przestawił.

A niezawodne jest dopóty, dopóki postępujesz zgodnie z zasadami i przeznaczeniem tego interfejsu i respektujesz cechy fizyczne sygnałów, interfejsów i otoczenia. Czyli jeśli dobrze zaprojektujesz a otoczenie nie jest zaszumione syfem.
@zetisdead: Akurat uprościłem na potrzeby przykładu :) tak naprawdę mam kilka uC połączonych, no niby moglbym RS485 ale to dodatkowe układy scalone, drożej i więcej miejsca zajmuje, dlatego w I2C poszedłem
@mikson123: jeśli to jest na jednej płytce, to nadal uart jest lepszym rozwiązaniem. Wiele µC ma możliwość przełączenia uartu w tryb jednoliniowy (RxD/TxD są na jednym pinie), albo ma możliwość włączenia otwartego drenu na linii TxD. Więc cały sprzęt do łączenia wielu µC to jeden rezystor.
Dodatkowo uart ma wielokrotne próbkowanie każdego bitu i będzie dużo odporniejszy na zakłócenia niż I2C, gdzie jeden fałszywy impuls na CLK rozwala całą ramkę danych.