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.

[参考译文] TMS570LS3137:I2C 未工作

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1251093/tms570ls3137-i2c-is-not-working

器件型号:TMS570LS3137
主题中讨论的其他器件:HALCOGEN

您好!

我正在开发"TLE493D-A1B6"库、但无法 运行 I2C 我用示波器进行测量、但 I2C 和 SDA 线路从来都不起作用、始终保持高电平

我在下面附上了我写的代码。

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
static void i2cInitHal(void)
{
// I2C0 modülünü başlat
i2cInit();
// I2C0 modülünü master modunda ayarla
i2cSetMode(i2cREG1, I2C_MASTER);
// I2C0 modülünün hızını 100kHz olarak ayarla
i2cSetOwnAdd(i2cREG1, I2C_SLAVE_ADDRESS);
i2cSetSlaveAdd(i2cREG1, I2C_SLAVE_ADDRESS);
i2cSetBaudrate(i2cREG1, 100);
}
static void i2cSendData(uint8 *data, uint32 length)
{
// Veriyi I2C0 üzerinden gönder
i2cSetDirection(i2cREG1, I2C_TRANSMITTER);
i2cSetCount(i2cREG1, length);
i2cSetMode(i2cREG1, I2C_MASTER);
i2cSetStop(i2cREG1);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

代码被卡在函数"void i2cSend (i2c_>STR &(Uint32) I2C_TX_INT)== 0u"内的"while (i2cBASE->STR &(Uint32)"(i2c_TX_INT)"中

和 halcogen 配置  

您能帮助我、我如何在您的系统中

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

    尊敬的 Fatih:

    在 i2c 线路上使用的上拉电阻器是什么?

    2、我在此附加一个工作示例 i2c 主器件项目、能否使用此示例验证您的 HALCoGen 配置?

    e2e.ti.com/.../2146.I2C_5F00_Master_5F00_RM46L852.zip

    3.还有,我发现一个旧线程,这和你的问题完全一样,在这里,这是由于从端的延迟要求发生的。

    (+) CCS/TMDS570LS31HDK:TMDS570LS31HDK、Hercules TMS570LS31x/21x 开发套件-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛

    --

    谢谢。此致、
    Jagadish。

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

    大家好、感谢您的回答。  

    1.有 1K 上拉电阻器、因为电路板和传感器之间有电缆

    2.我尝试了示例项目,并检查了配置,但它不起作用。

    3.我 查看了添加延迟但不起作用的线程

    我在没有传感器的情况下测试了它,并使用了一个振镜,但 我又没有看到任何信号。

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

    尊敬的 Fatih:

    1. 有 1K 上拉电阻器、因为电路板和传感器之间有电缆

    强上拉(小电阻器)会使 I2C 引脚无法驱动为低电平。 您是否有可能使用2.2K 上拉电阻器进行测试?

    --

    谢谢。此致、
    Jagadish。

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

    有0402封装电阻器。我没有任何402封装电阻器、但我尝试了使用内部上拉电阻器来不使用传感器、但仍然无法正常工作

    İf 您需要我可以移除外部电阻器、并且我可以使用内部电阻器进行测试

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

    您好、

    İf 如果您希望我可以移除外部电阻器,我可以使用内部电阻器进行测试

    内部上拉电阻太小、无法用于 I2C。 它们的强度足以防止引脚悬空。  必须为 I2C 信号提供外部上拉。

    --

    谢谢。此致、
    Jagadish。

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

    您好,Jagadish

    我将电阻器替换为2.7K、现在 I2C 可以正常工作。 感谢您的帮助