Multiplekser magistrali I2C

r_910_12_1r_910_12_2
Ktoś, kto chce budować duże struktury magistrali I2C, czasami ma problem z tym, że cztery lub osiem adresów typu blok nie są wystarczające lub że obciążenie pojemnościowe na dwóch liniach SDA i SCL jest bardzo duże i dlatego częstotliwość zegara magistrali musi być wybrana na niskim poziomie logicznym,

Pokazane tutaj bloki umożliwiają teraz rozdzielenie dużego systemu magistrali I2C na kilka podobszarów.
Multipleksery przełączają następnie sterownik magistrali I2C na odpowiednią podkonstrukcję, która ma być adresowana.
Zdarza się również, że części magistrali I2C muszą działać przy napięciu 3V, a inne przy napięciu 5V.
Tutaj pomagają multipleksery, ponieważ mogą być obciążone sygnałami 5V na wejściach i wyjściach, nawet, jeśli sam multiplekser działa tylko przy napięciu +3V.
Dwa bloki PCA 9542 i PCA 9544 (rys. 1) zawierają multiplekser 1 z 2 lub 1 z 4 dla dwóch linii dwukierunkowych SDA i SCL.
Same urządzenia mogą być używane przy napięciu roboczym między 2,5V a 3,6V, nominalnie 3V.
Po przyłożeniu napięcia roboczego połączone wyspy I2C są najpierw odłączane; multiplekser ma wysoką logicznie impedancję.
Tylko adresowanie układu scalonego za pomocą własnego adresu I2C i bajtu sterującego pozwala następnie jednej z dwóch/czterech połączonych par magistrali I2C połączyć się z główną magistralą I2C.
Aby uniknąć zakłóceń transmisji danych w magistrali, dzieje się to jednak dopiero po następującym stanie zatrzymania, jeśli magistrala I2C jest ponownie wolna.
Układy scalone multipleksera mają trzy połączenia adresowe A0, A1 i A2, dzięki czemu można jednocześnie obsługiwać do ośmiu układów PCA 954x.
Zapewnione jest również przetwarzanie przerwań:
Każda z sekcji magistrali I2C ma własną linię przerwania, która jest połączona AND ze wszystkimi innymi częściami.
Część magistrali I2C, z której pochodzi przerwanie, niekoniecznie musi być aktywna. Ten sygnał sumaryczny przechodzi przez wyjście z otwartym drenem na wejście przerwania sterownika.
Może wykryć przerwanie gdzieś w systemie, jako całości, a następnie musi dowiedzieć się, z której części szyny I2C doszło do przerwania poprzez przesłuchanie multipleksera poprzez odczyt bajtu kontrolnego.
Następnie system pyta o elementy składowe tak znalezionej podsieci.
W przypadku magistrali I2C linia przerwania jest ponownie zwalniana dopiero po zaadresowaniu bloku wyzwalającego i potwierdzeniu przerwania.
Jeśli do tego czasu dostępne są dalsze przerwania, linia przerwania pozostaje niska logicznie, a sterownik musi ponownie wyszukać wyzwalający blok I2C.
Przykład magistrali I2C z pierwszą częścią pracującą przy napięciu +3V i drugą połączoną z rezystorami podciągającymi +5V pokazano na rysunku 2.
Należy zauważyć, że rezystory podciągające między sterownikiem a multiplekserem PCA 9542 są niezbędne, aby po raz pierwszy zaadresować niepodłączony multiplekser po podwyższeniu napięcia roboczego 3V.
Jeśli mają wyższą impedancję (tutaj współczynnik 10) niż podciąganie podsieci, napięcie w podsystemie +5V może nadal rosnąć wystarczająco wysoko.
Układ PCA 9542 jest dostarczany w obudowie TSSOP-14, a PCA 9544 w obudowie TSSOP-20.
Autor: Gregor Kleine

Komentarze z Facebooka

Komentarze obecnie - OFF.