#define I2C3_CLK_ADDR (0x4A0097B0) #define I2C3_SDA_BASE_ADDR (0x4A003774) #define I2C3_SCL_BASE_ADDR (0x4A003778) void I2C3_Init(void) { // 配置时钟使能 HW_WR_REG32(I2C3_CLK_ADDR, 0x00000002); // 配置成I2C接口 HW_WR_REG32(I2C3_SCL_BASE_ADDR, 0x00010002); HW_WR_REG32(I2C3_SDA_BASE_ADDR, 0x00050002); I2C_HwAttrs i2c_cfg; I2C_socGetInitCfg(pi2c->instance, &i2c_cfg); I2C_socSetInitCfg(pi2c->instance, &i2c_cfg); I2C_Params i2cParams; SemaphoreP_Params cbSemParams; I2C_Params_init(&i2cParams); i2cParams.transferMode = I2C_MODE_CALLBACK; i2cParams.bitRate = pi2c->bitrate; i2cParams.transferCallbackFxn = pi2c->callback; if(i2cParams.transferMode == I2C_MODE_CALLBACK) { I2C_osalSemParamsInit(&cbSemParams); cbSemParams.mode = SemaphoreP_Mode_BINARY; pi2c->cbSem = I2C_osalCreateBlockingLock(0, &cbSemParams); } pi2c->i2c_handle = I2C_open(pi2c->instance, &i2cParams); if(pi2c->i2c_handle == NULL) { M_TraceL("Error opening I2C driver\n"); } CSL_xbarIrqConfigure(CSL_XBAR_IRQ_CPU_ID_DSP1, CSL_XBAR_INST_DSP1_IRQ_87, CSL_XBAR_I2C3_IRQ); }
共2条
1/1 1 跳转至页
AM5708:I2C3配置完成之后,在读写操作过程中,无法在SCL上面接收到时钟信号

关键词: AM5708
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 | |
【nRF7002DK】基于sht30的温湿度计被打赏20分 | |
【nRF7002DK】日志打印被打赏20分 | |
rtthread硬件加密-5hash加密分析被打赏10分 | |
【STM32F769】SD卡驱动及其调试经验分享被打赏32分 | |
【分享开发笔记,赚取电动螺丝刀】使用看门狗降低系统隐藏bug触发概率被打赏18分 | |
【STM32F769】调试SD驱动,由于其时钟配置不对引起的错误以及排查记录被打赏35分 | |
【分享开发笔记,赚取电动螺丝刀】MCUXpressoConfigTools配置外设时的异常解决被打赏24分 |