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.

[参考译文] TM4C1290NCPDT:TIVA:如何设置 I2C 频率

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1248885/tm4c1290ncpdt-tiva-how-can-i-set-i2c-frequency

器件型号:TM4C1290NCPDT

您好!

我的 Tiva 通过 I2C8、I2C2连接到很少的 I2C 从器件

我致电:

uiSysSycClock = SysCtlClockFreqSet (SYSCTL_XTAL_25MHz | SYSCTL_OSC_MAIN | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480,120000000)

为了 使用 I2C、我不得不将1,000,000,000更改为1,000,000。

将 I2C 频率更改为100KHz 或400KHz 的正确方法是什么?

谢谢!

兹维卡  

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

    您好!

    feng jiang2 说:
    uiSysSycClock = SysCtlClockFreqSet (SYSCTL_XTAL_25MHz | SYSCTL_OSC_MAIN | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480,120000000)

    我注意到您使用的是 SYSCTL_CFG_VCO_480。 似乎建议您使用较旧的 TivaWare? 最新的 TivaWare 为 v2.2.0.295、可从 https://www.ti.com/tool/SW-TM4C 中下载。 虽然使用  SYSCTL_CFG_VCO_480没有问题、但最新的 TivaWare 中进行了几项改进(例如、错误修复和更多示例)。  

    为了 使用 I2C、我不得不将1,000,000,000更改为1,000,000。

    将 I2C 频率更改为100KHz 或400KHz 的正确方法是什么?

    [/报价]

    您可以将系统时钟保持在120MHz 并使用 I2CMasterInitExpClk ()为100k 或400kHz 指定 I2C 频率。 请参见下方的。  

     例如、  

    I2CMasterInitExpClk (I2C8_BASE、uiSysSycClock  、false);//将 I2C8设置为100kHz

    I2CMasterInitExpClk (I2C8_BASE、uiSysSycClock   、true);//将 I2C8设置为400kHz