W tej serii artykułów przyglądaliśmy się różnym protokołom komunikacji szeregowej dostępnym do przesyłania informacji między mikrokontrolerami, urządzeniami produkującymi dane, urządzeniami przetwarzającymi dane oraz innymi inteligentnymi urządzeniami. Każdy artykuł omawiał jeden z bardziej popularnych protokołów, powszechnie używanych, a tutaj, na końcu tej serii, podsumowaliśmy zalety i wady każdego z nich. Mamy nadzieję, że ten zasób okaże się cenny, kiedy następnym razem znajdziesz się w potrzebie implementacji magistrali komunikacji szeregowej, pomagając Ci wybrać najlepszą opcję dla Twoich konkretnych okoliczności.
Protokoły i standardy komunikacji szeregowej są fantastyczne, szczególnie przy wielu inteligentnych urządzeniach cyfrowych lub mieszanych (analogowo-cyfrowych); popularne jest włączanie mikrokontrolerów. Magistrale komunikacji szeregowej pozwalają na wymianę informacji między wieloma urządzeniami i wykonują tę komunikację, używając znacznie mniejszej liczby pinów niż potrzebna do komunikacji równoległej. Chociaż komunikacja szeregowa jest kilka rzędów wielkości wolniejsza niż opcja równoległa, osiągane prędkości są wystarczające dla większości układów scalonych i urządzeń do przeprowadzenia wymaganej wymiany informacji lub wysyłania poleceń.
UART to dość prosta asynchroniczna komunikacja szeregowa, która umożliwia tryb pełnego dupleksu. Jest bardzo użyteczna do komunikacji między dwoma urządzeniami.
I2C jest prawdopodobnie moją ulubioną opcją. Pozwala na połączenie wielu urządzeń za pomocą tylko dwóch pinów. Jednak im więcej urządzeń podłączasz, tym bardziej musisz obniżyć szybkość transmisji danych, aby utrzymać działanie. Podoba nam się również to, że szybkość transmisji danych może być kontrolowana przez sprzęt i że adresy slave są również ustawiane przez sprzęt.
SPI to szybki protokół komunikacyjny, który pozwala na podłączenie wielu slave'ów, chociaż wiąże się to ze wzrostem liczby pinów. Szybkości komunikacji SPI są świetne, i co więcej, nie wymaga on specjalnego dopasowania impedancji zakończenia. Zauważyliśmy, że w niektórych aplikacjach użycie rezystorów zakończeniowych może być korzystne.
1-Wire jest świetne. Umożliwia komunikację i zasilanie za pomocą tylko jednego przewodu lub ścieżki, wykorzystując technikę zasilania pasożytniczego. Jednakże, nie ma zbyt wielu urządzeń, które mogą z tego korzystać.
CAN jest bardzo odporny w środowisku o wysokim poziomie zakłóceń elektromagnetycznych i posiada dobrą korekcję błędów. Nie powinno więc dziwić, że jest głównie używany w krytycznych aplikacjach.
LIN jest wariantem CAN, opracowanym jako podsystem do CAN. LIN jest zwykle używany w mniej krytycznych aplikacjach w samochodach. Jest dobry, ponieważ jest tani i prosty. Urządzenia LIN nie wykorzystują kwarcu ani rezonatorów do synchronizacji czasu; używają tylko prostego wewnętrznego obwodu RC, aby obniżyć koszty.
RS-485 to standard protokołu używany w wielu urządzeniach, szczególnie w automatyce i PLC. Jest to solidny standard, który wykorzystuje jedną lub dwie pary różnicowe. Może również osiągać stosunkowo wysokie prędkości lub duże odległości.
RS-232 to stary standard protokołu szeregowego, który był niezwykle popularny. Chociaż nowoczesne urządzenia już nie używają tego standardu, ogromna liczba starszych urządzeń nadal go wykorzystuje, dlatego uważamy, że warto mieć o nim pewną wiedzę.
Porozmawiaj z ekspertem Altium już dziś, aby dowiedzieć się więcej, lub dołącz do jednego z naszych Webinarów na Żądanie po porady ekspertów.