TI工程师您好
我们使用一个DS90UB96 连接4路DS90UB933, 目前不知道该如何同时访问这4路933,4路933 i2c地址相同。
我参考ds90ub964-q1文档的41页8.53章节。
WriteI2C(0x58,0x58) # enable pass throu
WriteI2C(0x5c,0x18) # "SER_ALIAS_ID"
WriteI2C(0x5d,0x60) # "SlaveID[0]"
WriteI2C(0x65,0x60) # "SlaveAlias[0]"
我理解SER_ALIAS_ID的0x18是代表soc能访问的933的i2c地址, SlaveAlias[0]的0x60是代表soc能访问sensor的i2c地址。
例如同时访问多路933设备+多路摄像头,应该这样设置
WriteI2C(0x58,0x58)
WriteI2C(SER_ALIAS_ID0,0x59)
WriteI2C(SlaveID0,0x48)
WriteI2C(SlaveAlias0,0x49)
WriteI2C(SER_ALIAS_ID1,0x60)
WriteI2C(SlaveID1,0x48)
WriteI2C(SlaveAlias1,0x50)
WriteI2C(SER_ALIAS_ID2,0x61)
WriteI2C(SlaveID2,0x48)
WriteI2C(SlaveAlias2,0x51)
WriteI2C(SER_ALIAS_ID3,0x62)
WriteI2C(SlaveID3,0x48)
WriteI2C(SlaveAlias3,0x52)
但是看ds90ub964-q1文档76页的寄存器说明,但是看寄存器说明只有一组SER_ALIAS_ID寄存器。所以我感觉我理解的还是不对。
