一千萬個為什麽

搜索

如何解決I2C地址沖突?

我想將多個I2C從設備連接到同一組引腳上的所有微控制器,但I2C設備都共享相同的地址。這些地址在硬件中是固定的。 有什麽方法可以將多個設備連接到相同的地址? 也許某種I2C地址轉換模塊,每個設備都有一個可配置的地址,這樣我就可以為每個地址分配我自己的地址。

最佳答案

I2C沒有內置任何設備,通常從設備會有一些外部引腳可以設置為0或1來切換一對地址位以避免此問題。或者我已經處理了一些有4或5部分編號的制造商,唯一的區別是它的I2C地址。 大多數設備都具有處理I2C通信的特定硬件,也就是說,從設備ACK是硬件設備,因此您無法對其進行破解。 至於翻譯模塊,你可以用2條I2C總線購買價值0.50美元的PIC,並寫一些快速代碼,以使它們起到地址轉換器的作用。

轉載註明原文: 如何解決I2C地址沖突?