This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TCA9548A读数据的问题

Other Parts Discussed in Thread: TCA9548A

1.我用TCA9548A来扩展8路气压传感器,气压传感器的地址都是0X77。对于写数据,我没有疑问。但对于读数据有点疑问,请帮忙解答。

2.如果不用TCA9548A,我明白顺序为:器件地址+W+寄存器地址+器件地址+R+返回的寄存器数据。

现在使用了CA9548A,是否为如下顺序?0XE0+通道+器件地址+W+寄存器地址+器件地址+R+0XE1+通道+返回的寄存器数据。

请问上面的顺序是否对?如果不对,麻烦给出正确的顺序,谢谢~

  • 您好,您的意思是写数据之后紧接着读数据的顺序是吗? 那么写完之后应该重新发送一个新的起始条件,我认为正确的顺序如下:

    start-----器件地址+0(write)-------ACK-------寄存器地址 ----ACK-----restart-------器件地址+1(read)----ACK------返回的寄存器数据------stop。

  • 我的意思就是读数据,读TCA9548A接的传感器的数据,不是读TCA9548A的数据。

    如果不用TC9548A,直接读传感器的数据,我明白这个顺序,就如您讲的这样:start-----器件地址+0(write)-------ACK-------寄存器地址 ----ACK-----restart-------器件地址+1(read)----ACK------返回的寄存器数据------stop。

    从上面的顺序可以看出,读的过程也会write.

    我的疑问是用了TC9548A后,上面的顺序要如何调整?

  • 使用了TCA9548A之后,把寄存器地址其实就是控制寄存器,用来进行通道选择的, 读时序为:
    start-----器件地址+1(read)-------ACK-------寄存器地址(通道选择) ----ACK----- 返回的寄存器数据------stop。
  • 您好,请问,您回复的寄存器地址(通道选择)是否是指01或02或...07?
    如果是的话,是否意味着就不需要加入0XE1了?
    整个读过程是否是:start+0xE0(TCA9548A的地址为0X70)+ACK+通道选择+ACK+P ,然后start-----器件地址(指的是传感器的地址)+0(write)-------ACK-------寄存器地址 ----ACK-----restart-------器件地址+1(read)----ACK-------寄存器地址(通道选择) ----ACK------返回的寄存器数据------stop?
  • 您好,请问,您回复的寄存器地址(通道选择)是否是指01或02或...07?
    如果是的话,是否意味着就不需要加入0XE1了?
    整个读过程是否是:start+0xE0(TCA9548A的地址为0X70)+ACK+通道选择+ACK+P ,然后start-----器件地址(指的是传感器的地址)+0(write)-------ACK-------寄存器地址 ----ACK-----restart-------器件地址+1(read)----ACK-------寄存器地址(通道选择) ----ACK------返回的寄存器数据------stop?
  • 您好,请问,您回复的寄存器地址(通道选择)是否是指01或02或...07?
    如果是的话,是否意味着就不需要加入0XE1了?
    整个读过程是否是:start+0xE0(TCA9548A的地址为0X70)+ACK+通道选择+ACK+P ,然后start-----器件地址(指的是传感器的地址)+0(write)-------ACK-------寄存器地址 ----ACK-----restart-------器件地址+1(read)----ACK-------寄存器地址(通道选择) ----ACK------返回的寄存器数据------stop?
  • 您好,寄存器地址我指的是控制寄存器,是TCA9548A的通道选择寄存器, 如下图。 不是TCA9548A作为I2C 从机的地址,所以读的时候,start后面0XE1 是需要的。

  • 好的,谢谢您热情的回复~

x 出现错误。请重试或与管理员联系。