#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 跳转至页
回复
打赏帖 | |
---|---|
rtthread硬件加密--2crc加密分析被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】mcxa156使用低功耗定时器适配硬件RTC框架被打赏26分 | |
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】TouchGFX应用移植自定义屏幕被打赏34分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 |