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.

[参考译文] MSP430F249:I2C 未按预期工作

Guru**** 2539500 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/838827/msp430f249-i2c-not-functioning-as-expected

器件型号:MSP430F249

我正在尝试设置与触摸屏控制器的 I2C 通信。 我正在使用 TI 针对该芯片的例程。 我已经附上了我从 TI 获得的代码和 I2C 驱动程序代码、以及连接到 I2C 总线时钟和数据引脚的示波器的屏幕截图。 我正在尝试发送到 I2C 地址0x4A、但波形看起来被寻址到0x95。 我还尝试发送两个字节的数据、但似乎只发送了一个字节。 有关错误的任何建议?e2e.ti.com/.../WFO_5F00_files.zip

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

    [我将简单介绍一下:]如果您设置 I2CSA=0x4A、则 SLA 字节(用于读取)将类似于0x95=((I2CSA <<1)| 0x01)。 即、我认为该部件是正常的。

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

    是的、您是正确的、使用7位地址时、被重新提交的地址将被移过一位、并将字节的 lsb 设置为读取或写入。 我还修复了另一个不发送正确数量的数据的问题。 我的例程是允许在第一个 I2C 过程完成之前开始第二个 I2C 过程、而这会在 I2C 过程中写入一些寄存器。 使用了 NO迎宾 功能、不允许启动多个 I2C 流程。