This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TIDA-01012:两个 I2C

Guru**** 2124380 points
Other Parts Discussed in Thread: BQ27426, SYSCONFIG, CC2640, TIDA-01012, CC2642R
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/simulation-hardware-system-design-tools-group/sim-hw-system-design/f/simulation-hardware-system-design-tools-forum/1132109/tida-01012-two-i2c

器件型号:TIDA-01012
主题中讨论的其他器件:BQ27426SysConfigCC2640CC2642R

尊敬的专家:

我正在学习此项目、发现使用两个 I2C、一个用于 BQ27426、另一个用于 RF430、但当使用 SysConfig 工具设置 CC2642时、设置两个 I2C、具有以下内容:

我查看了数据表 CC2640和 CC2642、只有一个 I2C 模块

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我不熟悉此 TI 参考设计、但正确的是 CC2640/CC2642只有一个硬件 I2C。  如果您查看  提供的 TIDA-01012固件、则会看到两个实例都使用相同的 I2C 硬件外设、并且 在任何时候只连接 BQ27426或 RF430。  如果要为 两个器件同时连接创建第二个实例、则需要使用软件解决方案使 SDA/SCL 线路位挂起。   此类解决方案也可使用 传感器控制器。  您很可能会在将此传统 CC2640代码移植到 SimpleLink CC2642R 解决 方案时遇到几个困难、但您可以查看迁移指南以开始使用。

    此致、
    Ryan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在 board.c 文件中、BoardGpioInitTable 源代码如下:

    BQ27426_SCL | PIN_GPIO_OUTP_EN | PIN_GPIO_HIGH| PIN_PushPull | PIN_DRVSTR_MAX、
    BQ27426_SDA | PIN_GPIO_OUTP_EN | PIN_GPIO_HIGH | PIN_PushPull | PIN_DRVSTR_MAX、
    ENABLE_BQ27426 | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_OPENDRAIN | PIN_DRVSTR_MED、
    RF430_SCL | PIN_INPUT_EN | PIN_PULLUP、
    RF430_SDA | PIN_INPUT_EN | PIN_PULLUP、

    CONST I2CCC26XX_HWAttrs i2cCC26xxHWAttrs[WDMM_I2CCOUNT ={

    baseAddr = I2C0_BASE、
    powerMngrId = Periph_I2C0、//PowerCC26XX_Periph_I2C0、
    .intNum = INT_I2C、//INT_I2C_IRQ、
    //.intPriority =~0、
    //.swiPriority = 0、
    sdaPin = RF430_SDA、
    .sclPin = RF430_SCL、
    }、

    baseAddr = I2C0_BASE、
    powerMngrId = Periph_I2C0、//PowerCC26XX_Periph_I2C0、
    .intNum = INT_I2C、//INT_I2C_IRQ、
    //.intPriority =~0、
    //.swiPriority = 0、
    sdaPin = BQ27426_SDA、
    .sclPin = BQ27426_SCL、

    };

    /* I2C 配置结构*/
    const I2C_Config I2C_CONFIG[]={

    .fxnTablePtr =&I2CCC26XX_fxnTable、
    .object =&i2cCC26xx 对象[0]、
    hwAttrs =&i2cCC26xxHWAttrs[0]
    }、

    .fxnTablePtr =&I2CCC26XX_fxnTable、
    .object =&i2cCC26xx 对象[1]、
    hwAttrs =&i2cCC26xxHWAttrs[1]
    }、
    {NULL、NULL、NULL}
    };