I2C配置及调试流程

本文详细介绍了在高通平台Android系统中配置I2C的过程,包括根据原理图配置GPIO,修改内核设备树,验证I2C总线是否注册,以及进行硬件检查。在调试阶段,强调了检查配置的正确性,避免GPIO冲突,并通过设备树注册从设备,如ST1663i触摸屏。最后,提到了使用示波器验证I2C信号波形的正确性。
摘要由CSDN通过智能技术生成
一、I2C配置
1.根据原理图,查找相关的i2c引脚对应的GPIO值,以GPIO10作为I2C_SDA,GPIO11作为I2C_SCL为例。
2.根据MSM8937 DEVICE SPECIFICATION文档,查找GPIO10与GPIO11对应的BLSP,以及检查GPIO10与GPIO11是否可以作为I2C来使用。根据文档,GPIO10对应BLSP3_1,GPIO11对应BLSP3_0。
3.根据80-nu767-1_h_linux_bam_low-speed_peripherals_configuration_and_debug_guide文件,查找I2C部分BLSP3_0与BLSP3_1对应内容,包括其物理地址、reg size、中断号......
4.进入kernel/msm-3.18/arch/arm/boot/dts/qcom/路径下修改msm8937-pinctrl.dtsi文件
GPIO配置如下:
i2c_3 {
            i2c_3_active: i2c_3_active {
                /* active state */
                mux {
                    pins = "gpio10", "gpio11";
                    function = "blsp_i2c3";
                };
                config {
                    pins = "gpio10", "gpio11";
                    drive-strength = <2>;
                    bias-disable;
                };
            };
            i2c_3_sleep: i2c_3_sleep {
                /* suspended state */
                mux {
                    pins = "gpio10", "gpio11";
                    function = "gpio";
                };
                config {
                    pins = "gpio10", "gpio11";
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };
5.进入kernel/msm-3.18/arch/arm/boot
FPGA是可编程逻辑门阵列(Field-Programmable Gate Array)的缩写,是一种集成电路芯片,具有可编程的逻辑门和寄存器。而I2C是一种通信协议,用于在不同的电子设备之间进行数字通信。 在FPGA中配置I2C可以实现FPGA与其他外设(如传感器、存储器、显示器等)之间的通信。配置FPGA的I2C包括以下几个步骤: 1. 连接硬件:首先需要将FPGA与I2C总线连接。通常情况下,I2C总线由两条线组成,即数据线(SDA)和时钟线(SCL)。通过将FPGA的引脚与这两条线连接,可以实现FPGA与其他设备之间的I2C通信。 2. 配置I2C控制器:FPGA中通常包含一个I2C控制器的IP核,可以使用该IP核来控制I2C通信。在设置I2C控制器时,需要指定从设备地址、传输速率等参数。 3. 编写代码:在FPGA中配置I2C还需要编写代码来实现数据的读取和写入。通过使用FPGA的编程语言(如Verilog或VHDL),可以编写I2C通信相关的代码。这些代码将指定FPGA在与其他设备进行通信时的数据传输流程。 4. 进行仿真和调试:在配置I2C之后,需要对FPGA进行仿真和调试。通过仿真和调试可以验证I2C通信的正确性,并及时修复可能存在的问题。 总之,通过以上步骤可以在FPGA中配置I2C,实现与其他设备之间的数字通信。这样就可以使FPGA与传感器、存储器、显示器等设备进行数据交互,从而满足特定的应用需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值