logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Kilka 24C16 o tym samym adresie na jednej linii > Pytanie

filip_gd 05 Cze 2006 00:12 1688 7
REKLAMA

Podsumowanie tematu

✨ W dyskusji poruszono problem podłączenia wielu pamięci 24C16 o tym samym adresie I2C do jednego urządzenia, które nie obsługuje innych pamięci i nie można go przeprogramować. Zaproponowano dwa podejścia: sprzętowe i programowe. W podejściu sprzętowym rozważano użycie multipleksera analogowego 4066 do przełączania linii SDA i SCL sterowanego mikrokontrolerem AT90s2313, z pytaniem o odpowiednie miejsce podciągania linii sygnałowych rezystorami. W odpowiedziach zasugerowano zastosowanie multipleksera I2C PCA9548A jako prostszego rozwiązania oraz łączenie linii SCL na stałe i przełączanie tylko SDA przez 4066 lub 4053, z podciąganiem SDA rezystorem 10kΩ do zasilania. Wskazano też, że 24C16 nie posiada pinów adresowych A0, A1, A2, które są oznaczone jako NC, co oznacza, że wszystkie pamięci 24C16 mają ten sam adres I2C i nie można ich rozróżnić przez zmianę adresu sprzętowego. W podejściu programowym rozważano emulację pamięci 24C16 za pomocą mikrokontrolera i większej pamięci AT24C1024 lub AT24C512, z mapowaniem adresów, jednak brakowało gotowego oprogramowania w Bascomie. Podsumowując, najlepszym rozwiązaniem jest użycie multipleksera I2C PCA9548A lub przełączanie linii SDA z odpowiednim podciąganiem, gdyż 24C16 nie umożliwia zmiany adresu sprzętowego.
REKLAMA