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.

[参考译文] MSP430F5529:I2C 无法与 Energia 配合使用

Guru**** 2589245 points
Other Parts Discussed in Thread: MSP430F5529, ENERGIA

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/623716/msp430f5529-i2c-not-working-with-energia

器件型号:MSP430F5529
主题中讨论的其他器件: Energia
感觉这应该是一个很容易解决的问题、但这让我头疼。 

我有一个 MSP430F5529 Launchpad、其中7.5k Ω 电阻器用作3V3的上拉电阻器。 当我运行代码并将 SDA 和 SCL 直接连接到示波器时、SDA 和 SCL 都保持高电平。

我已经发现 Wire.endTransmission ()导致代码延迟、所以我将其注释掉。 此外,当我离开所有 serial.print 命令时,我可以根据监视器看到它正在循环()。

#include 

字节 IDLE = 0x00;// TIDLE min = 4个时钟脉冲,但可以更长

的字节开始= 0x05;
字节 TIDHIGH = 0x02;
字节 TIDLOW = 0x03;
字节 CNTL = 0x7D;
字节 Cpty = 1;
字节 D1;
字节 D2;

void setup(){

Serial.begin(9600); //开始串行输出
延迟(100);
Wire.begin();

}

void loop(){

DataForum();

//
Serial.print ("D1:");
Serial.print (D1、hex);
Serial.print ("\n");

serial.print ("开始:");
serial.print (开始、十六进制);
serial.print ("\n");

serial.print ("TID:");
serial.print (TIDlow、hex);
serial.print ("\n");

serial.print ("cNTL:");
serial.print (cNTL、 十六进制);
Serial.print ("\n");
*/

Wire.beginTransmission(0x03);
Wire.write (Start);
//Wire.endTransmission ();

}

void DataFormation (void){

byte temp;

D1 =开始;
temp =(D1 << 3)| TIDlow;
D1 =(temp << 2)|(CNTL >> 6);


}

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉、由于任何原因、第一个器件作为代码发送。

    感觉这应该是一个很容易解决的问题、但这让我头疼。 我有一个 MSP430F5529 Launchpad、其中7.5k Ω 电阻器用作3V3的上拉电阻器。 当我运行代码并将 SDA 和 SCL 直接连接到示波器时,SDA 和 SCL 都保持高电平。我已经发现 Wire.endTransmission ()导致代码保持,所以我将其注释掉。 此外,当我离开所有 serial.print 命令时,我可以根据监视器看到它正在循环()。

    无论如何、我会提供一些更多信息:
    我使用的是 Energia 1.6.10E18
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Kevin、

    您是否尝试使用过其中一个默认电线示例? 是否触发示波器以确保捕捉到 SDA 线上的任何下降沿? 较弱的上拉电阻值会怎么样? 众所周知、Energia 的 Wire/I2C 库不可靠、我建议您使用 CCS 开发您的应用或编写直接的 C 代码。 您还可以参阅43OH 论坛以获取特定于 Energia 的支持。

    编辑:此问题已脱机解决

    此致、
    Ryan