Presentation is loading. Please wait.

Presentation is loading. Please wait.

I2C驱动 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd.

Similar presentations


Presentation on theme: "I2C驱动 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd."— Presentation transcript:

1 I2C驱动 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd

2 01 Linux I2C驱动架构 02 Linux I2C测试工具 03 Linux设备树添加I2C设备

3 01 Linux I2C驱动架构 第 1 部分

4 Linux i2c驱动架构 特定device的驱动,例如: drivers/misc/eeprom/at24.c
drivers/i2c/i2c-core.c drivers/i2c/i2c-dev.c drivers/i2c/busses/i2c-davinci.c drivers/i2c/busses/i2c-omap.c drivers/i2c/busses/i2c-s3c2410.c 右图引用自 右图引用自 04 广州创龙电子科技有限公司

5 02 Linux I2C测试工具 第 2 部分

6 Linux i2c测试工具 i2cdetect: 检测挂载在i2c总线上器件 i2cdetect [-y] [-r] I2CBUS 06
广州创龙电子科技有限公司

7 Linux i2c测试工具 i2cdump: 查看器件所有寄存器的值
i2cdump [-f] [-y] I2CBUS ADDRESS [MODE] 07 广州创龙电子科技有限公司

8 Linux i2c测试工具 i2cset: 设置单个寄存器值
i2cset [-f] [-y] I2CBUS CHIP-ADDRESS DATA-ADDRESS [VALUE] i2cget: 读取单个寄存器值 i2cget [-f] [-y] I2CBUS CHIP-ADDRESS DATA-ADDRESS [VALUE] 08 广州创龙电子科技有限公司

9 03 Linux设备树添加I2C设备 第 3 部分

10 Linux设备树添加i2c设备 在设备树中添加设备——使用soc的i2c控制器 在设备树中添加设备——使用gpio模拟i2c
设备树相关说明文档: Documentation/devicetree/bindings/i2c/i2c-omap.txt Documentation/devicetree/bindings/i2c/i2c-gpio.txt 10 广州创龙电子科技有限公司

11 Linux设备树添加i2c设备 1. 在设备树中添加设备——使用soc的i2c控制器 (1)配置i2c的pinmux
i2c1_pins_default: i2c1_pins_default { pinctrl-single,pins = < AM33XX_IOPAD(0x90c, PIN_INPUT_PULLUP | MUX_MODE3) /* (H17) mii1_crs.I2C1_SDA */ AM33XX_IOPAD(0x910, PIN_INPUT_PULLUP | MUX_MODE3) /* (J15) mii1_rx_er.I2C1_SCL */ >; }; &i2c1 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c1_pins_default>; { compatible = "24c04"; reg = <0x50>; pagesize = <16>; 11 广州创龙电子科技有限公司

12 Linux设备树添加i2c设备 2. 在设备树中添加设备——使用gpio模拟i2c (1)配置gpio的pinmux
compatible = "i2c-gpio"; pinctrl-names = "default"; pinctrl-0 = <&i2c1_gpio_pins_default>; gpios = <&gpio3 1 0 /* sda */ &gpio3 2 0 /* scl */ >; /*i2c-gpio,sda-open-drain; i2c-gpio,scl-open-drain;*/ i2c-gpio,delay-us = <2>; /* ~100 kHz */ #address-cells = <1>; #size-cells = <0>; { compatible = "24c04"; reg = <0x50>; pagesize = <16>; }; 12 广州创龙电子科技有限公司

13 广州创龙电子科技有限公司 谢谢 官网: 论坛: 微信公众号:广州创龙


Download ppt "I2C驱动 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd."

Similar presentations


Ads by Google