• TCA9548A iic地址扩展器件 树莓派JAVA版教程


    TCA9458A是德州仪器的iic数据选择器,TCA9548A 器件配有八个可通过 I2C 总线控制的双向转换开关,所以具有8个i2c扩展接口,TCA9548A本身就是一个I2C元器件,通过编程可以在8个不同地址之间切换。

    TCA9548A

    1. 使用场景

      当你想用很多个相同IIC芯片的时候,发现他们不能片选,也就是说他们的IIC芯片是死的,你做白日梦也改不了的,这个时候怎么办呢,你可能会想到我的主控芯片有2到3个IIC接口,我可以一个接口用一个,但是有时候有很多的话我们就得使用TCA9548这种扩展芯片了。

    2. 树莓派的使用方法。

      1. 连接

        IIC设备<==>TCA9548<==>树莓派

        IIC设备和TCA9548都接上电源

      2. 规定

        TCA9548片选初始地址为0x70(A0,A1,A2全部接地),最大地址为0x77(A0,A1,A2全部上拉)

        我使用的是树莓派IICBUS1

        我使用的IIC设备地址为0x48

      3. 代码

    https://www.bilibili.com/read/cv4766571B站文章

    请关注我的B站账号https://space.bilibili.com/309103931分享更多PHP姿势

    import java.io.IOException;
    import com.pi4j.io.i2c.I2CBus;
    import com.pi4j.io.i2c.I2CDevice;
    import com.pi4j.io.i2c.I2CFactory;
    import com.pi4j.io.i2c.I2CFactory.UnsupportedBusNumberException;
    
    public class TCA9548ADemo {
    	
    	public static void main(String[] args) throws UnsupportedBusNumberException, IOException {
    		I2CBus i2c = I2CFactory.getInstance(I2CBus.BUS_1);
    	    I2CDevice tca = i2c.getDevice((byte)0x70);
    	    
    	    tca.write((byte) (1<<1));//选择tca9548A的SD1,SC1
    	    
    	    I2CDevice device = i2c.getDevice((byte)0x48);//此时的0x48就是SD1,SC1
    	    int data = device.read(0x90);
    	    
    	    System.out.println(data);
    		
    		
    	}
    	
    }
    

    原理图

  • 相关阅读:
    关于viewports 设备像素比 密度
    脚本检测 media query 分界点
    chrome Web开放 字体格式不能显示问题
    响应式图片
    ECMAScript 6 proxies
    大小不固定 文字图片居中
    prototype
    基于综合服务平台浅谈Sass应用
    Sass浅谈
    JQ怎么获取margin-left的值
  • 原文地址:https://www.cnblogs.com/kawayidamiao/p/13843775.html
Copyright © 2020-2023  润新知