I2C通讯中地址码信息你是怎么做的?I2C在通讯当中是第一个字节是7位地址码和一位命令码组成。地址码代表着从机地址信息,通常情况下会自定义一个字节8)位作为从机地址,使用时会先用一个宏定义这个从机地址名,使用驱动时,常常会先将这个地址码左移1位后,赋值给命令发送的第一个字节当中,再依据当前读写状态,设置最后一位的状态,再发送出来。

IIC上的每个器件是否都要一个地址寄存器来确定自己的地址:很多器件都是通过硬件来确定地址的。有的在出厂时地址就设置好了,用户不可以更改,有的确定了几位,剩下几位由硬件确定(比如有三位由用户确定,就留有3个控制地址的引脚),此类较多;还有的有地址寄存器。严格讲,主机不是向从机发送地址,而是主机往总线上发送地址,所有的从机都能接收到主机发出的地址,然后每个从机都将主机发出的地址与自己的地址比较,如果匹配上了,这个从机就会向主机发出一个响应信号。

如果主机没有收到响应信号,则表示寻址失败。比如带IIC的单片机,会有地址寄存器,寄存器里的值即为它作为从机时的地址。最常见的情况,主从器件的角色是确定的,也就是说从机一直工作在从机模式。它的地址确定方法我已经说过了。不同的器件定义地址的方式是不同的,有的是软件定义,有的是硬件定义。

每个I2C器件在出厂时都会固化自己的I2C地址的,也有通过硬件引脚选择I2C地址的;而且I2C器件内部有MCU,可以识别总线上的信号并根据信号作出相应的处理;在接收到总线上的地址位后,会与自身的地址比较,一旦相同,则发出应答信号;总之一条,I2C器件内部的MCU是知道自己的地址的,这是I2C规范。
3、怎样知道i2c设备的地址是什么?看芯片的datasheet,然后看硬件电路图或是问硬件设计者芯片的地址引脚配置,因为I2C设备的地址有的是固定的,有的是可以配置的。查阅该设备的数据手册,看芯片的datasheet,然后看硬件电路图或是问硬件设计者芯片的地址引脚配置,因为I2C设备的地址有的是固定的,有的是可以配置的。I2C(Inter-IntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。