ZigBee_I2C协议器件地址

 

首字节是"片选信号",即7位从机地址加1位方向(读写)控制.

 

读写是站在主机的立场上定义的.

 

"读"是主机接收从机数据,"写"是主机发送数据给从机.

 

重复位主要用于主机从发送模式到接收模式的转换"信号",由于只有2线,

 

所以收发转换肯定要比SPI复杂,因为SPI可用不同的边沿来收发数据,而I2C不行.

 

在硬件I2C模块,特别是MCU/ARM/DSP等每个阶段都会得到一个准确的状态码,

 

根据这个状态码可以很容易知道现在在什么状态和什么出错信息.

 

7位I2C总线可以挂接127个不同地址的I2C设备,0号"设备"作为群呼地址.

 

10位I2C总线可以挂接更多的10位I2C设备.

 

第一个字节(为slaveaddress)由7位地址和一位R/W读写位组成的,这字节是个器件地址。

首先,你要知道:常用IIC接口通用器件的器件地址是由种类型号,及寻址码组成的,共7位。

如格式如下:

D7 D6 D5 D4 D3 D2 D1 D0

1-器件类型由:D7-D4 共4位决定的。这是由半导公司生产时就已固定此类型的了,也就是说这4位已是固定的。

 

2-用户自定义地址码:D3-D1共3位。这是由用户自己设置的,通常的作法如EEPROM这些器件是由外部IC的3个引脚所组合电平决定的(用常用的名字如A0,A1,A2)。这也就是寻址码。

所以为什么同一IIC总线上同一型号的IC只能最多共挂8片同种类芯片的原因了。

 

3-最低一位就是R/W位。这位不用我多说了。

在现代电子系统中,有为数众多的IC需要进行相互之间以及与外界的通信。为了提供硬件的效率和简化电路的设计,PHILIPS开发了一种用于内部IC控制的简单的双向两线串行总线I2C。I2C总线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯片。作为一个专利的控制总线,I2C已经成为世界性的工业标准。

器件地址(slave address),也称为从机地址或设备地址,可根据器件数据手册计算可得:

 ZigBee_I2C协议器件地址_第1张图片

ZigBee_I2C协议器件地址_第2张图片

 

Mode 1:

ZigBee_I2C协议器件地址_第3张图片

 

Mode 2:

 ZigBee_I2C协议器件地址_第4张图片

ZigBee_I2C协议器件地址_第5张图片


器件地址可直接在文件中定义:

#define ADDR             0X46                             //     光照传感器的器件地址或设备地址 

 

 


你可能感兴趣的:(ZigBee)