关于OPT3001的Slave address byte中A1,A0位的确定
本人大三自动化学生,最近买了两个OPT3001做照度显示小系统,然后读寄存器的值总是0,看到数据手册有一点不理解的地方,希望大家多多指点,小弟再次先谢过了。
I2C串行总线地址是8位的,且最后一位是读写位,但是数据手册上给出的A1、A0却有四种情况,是这么说的:
Four I2C addresses are possible by connecting the ADDR pin to one of four pins: GND, VDD, SDA, or SCL.Table 2 summarizes the possible addresses with the corresponding ADDR pin configuration.(TABLE 2如下)
1000 100 GND
1000 101 VDD
1000 110 SDA
1000 111 SCL
有的例程上给的是 0x88 也就是第一个地址了,但是为什么是GND呢?请高手指点A1、A0的取法,感激不尽
芯片的ADDR引脚设置了地址,详见Table 2. Possible I2C Addresses with Corresponding ADDR Configuration。
10001000对应的刚刚好就是0x88啊! 这时候ADDR就应该连到 GND啊。
本来7位从机地址为10001A1A0, 而A1,A0 取决于ADDR的接法,ADDR接地的话,正好是1000100,第八位是读写位,写为0,即10001000,正好是0x88.
地址左移一位,才是写入寄存器的值。
谢谢您的解答,很详细。我早已调试好了,接下来我会继续提高自己的英语水平,以防此类低级问题的出现。
谢谢您的解答,很详细。我早已调试好了,接下来我会继续提高自己的英语水平,以防此类低级问题的出现。
- 913/914 i2c slave address
- TCA9539 HAS NO ACK AFTER SEND CHIP ADDRESS
- LMK04906 readback address可以读出来吗?不能直接读取R31寄存器读到readback address是吗?多谢
- tca6424a的地址线可以当片选来用么?/the address pin of tca6424a can be used as a chip select PIN,the state of address PIn can be know by itself in time?
- lmp91000 寄存器LOCK - Protection Register (Address 0x01)锁定
- TLC59116有关Subaddress寄存器用法