I2C总线 读取错误 10
我在用单片机挂载两片I2C芯片,工作流程是通过第一片I2C读写第二片I2C,第一片读写都没有问题,第二片datasheet上没有时序图和时序要求,我在进行写操作时是能用示...
我在用单片机挂载两片I2C芯片,工作流程是通过第一片I2C读写第二片I2C,第一片读写都没有问题,第二片datasheet上没有时序图和时序要求,我在进行写操作时是能用示波器看到反馈的ACK信号的,还不确定是由第一片还是第二片发出的。
问题1:第一片的写读地址是0xD0,0xD1,寄存器从0x00~0x34,第二片是0xC2,0xC3,无寄存器范围。这样写0xC2应该是由第二片发出的吧?
问题2:第二片I2C要求单片机在ACK器件读操作时把SDA拉低,示波器显示也是低电平,但读取的数据总是0xFF,唯有一次我修改了ACk函数,收到了0x80,还有一次是0xC0,低六位全0才对。但后来如何修改都读取不到了。
问题3:用示波器触发看SDA和SCL波形,经常无法触发,在软件复位单片机多次后才能触发,何故?
各位熟悉的I2C请帮我看看,给点建议。 展开
问题1:第一片的写读地址是0xD0,0xD1,寄存器从0x00~0x34,第二片是0xC2,0xC3,无寄存器范围。这样写0xC2应该是由第二片发出的吧?
问题2:第二片I2C要求单片机在ACK器件读操作时把SDA拉低,示波器显示也是低电平,但读取的数据总是0xFF,唯有一次我修改了ACk函数,收到了0x80,还有一次是0xC0,低六位全0才对。但后来如何修改都读取不到了。
问题3:用示波器触发看SDA和SCL波形,经常无法触发,在软件复位单片机多次后才能触发,何故?
各位熟悉的I2C请帮我看看,给点建议。 展开
光派通信
2024-09-03 广告
2024-09-03 广告
对光传输设备进行调试和维护,需要掌握以下关键点:1. **熟悉设备性能**:深入了解OTN/DWDM等光传输产品的性能特点,确保能够熟练使用设备。2. **按规范操作**:依据产品说明书和维护手册进行调试和维护,确保操作步骤正确无误。3. ...
点击进入详情页
本回答由光派通信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询