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.

[参考译文] MSP430F169:如何使用 I2C 从特定地址读取?

Guru**** 2521930 points
Other Parts Discussed in Thread: MSP430F169

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/918496/msp430f169-how-do-you-read-from-a-specific-address-using-i2c

器件型号:MSP430F169

我的主器件是 MSP430F169。 我的从器件是一个 SI514。 我现在只想读一个具体的地址、我正在努力做到这一点。 我可以从从从器件读取、但无法指定我要从哪个地址开始。 我知道您应该怎么做、我只是不确定如何编写代码、我已经查看了许多示例、但没有一个示例这么做。 下面是我拥有的代码(不包括所有设置):

U0CTL |= MST;                    

I2CTCTL |= I2CSTT + I2CSTP;

//这里可能是我需要告诉从器件我要从中读取的位置,地址为0x84

while ((I2CIFG & RXRDYIFG)=0);
   
DATA_IM_READING = I2CDRB;
请不要向我发送示例的链接、除非您完全确定示例可以解决这个非常简单的问题。 我看到了许多例子,但没有一个例子能做我想做的事情。 我只想做的就是能够从特定地址读取数据、并且能够写入特定的地址。 我有很多示例、没有一个示例这么做。 谢谢你。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    原理是在读取事务之前进行写操作、该写操作会发送1 (有时是2)个字节、提供寄存器编号。 该数字被从器件记住、下一次读取使用该数字作为索引。 通常,从站会在读取每个字节后递增内部索引 。

    但我没有使用 F1系列器件中的 I2C、因此我在细节上没有太多帮助。