无论是硬件IIC或者是软件模拟IIC,想要知道自己写的程序及硬件是否正常,首先第一步就是观察设备IIC是否有应答,否则你工程程序写了将近大半,到头来芯片设备不应答,一切还是得从头开始。
无论是该芯片设备是否是标准IIC协议(有的是起始信号+设备地址(最低位为读写位),有的是起始信号+设备地址+寄存器地址(最低位读写位)),我们立足于该芯片设备的技术手册出发,里面都包含关于IIC的时序部分,说明该设备IIC通讯的序列要求。
IIC工程的第一步,在您的主控芯片程序中,间时循环对设备芯片发出起始信号+设备地址(根据手册定),利用示波器,触发调到正常模式进行波形抓取,根据IIC序列读出是否有应答位。
设备芯片多次不应答就需要从软件和硬件排查问题了,可能是主控芯片硬件IIC出错、软件模拟IIC出错、芯片设备地址不正确、芯片损坏等,只有做好这一步,才能开展后续工作。