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.

[参考译文] MSP430FR5969:MSP430FR5969

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1438006/msp430fr5969-msp430fr5969

器件型号:MSP430FR5969

工具与软件:

大家好、我们将通过 I2C 通信将 MSP430FR5969与 SGP30和 SEN55等空气质量传感器进行连接。 遗憾的是、我们无法成功从微控制器的寄存器中读取数据和向其中写入数据。 我们一直在关注 Code Composer Studio (CCS)中的引用、但我们的代码仍无法正常工作。 我们已经仔细检查了传感器和其他硬件外设、一切都在工作。 仍然只需要调整软件端。 我们使用的代码和输出如下所示:  

在此代码中、我仅使用 MSP430作为主器件、并使用 SGP30作为从器件。

e2e.ti.com/.../SGP30_5F00_BARE_5F00_CODE.rtf

^这是我们用于 MSP430-SGP30连接的代码。

^这是输出。

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

    您是否试用过  TI 提供的 SGP30 EVM? 您能查看  SGP30的数据表吗?

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

    大家好、我们现在还没有使用 TI 提供的 SGP30EVM。 我们使用的是 M5Stack SGP30: https://shop.m5stack.com/products/tvoc-eco2-gas-unit-sgp30?srsltid=AfmBOorDw_PXT8iAoopx5bpm1J8sCkKxm5qf9idUKOx7tE-Pg3279z_E、 它还有一个 Sensirion 芯片。 数据表附在这里、我们已经 验证了所使用的引脚。  

     

    e2e.ti.com/.../Sensirion_5F00_Gas_5F00_Sensors_5F00_Datasheet_5F00_SGP30.pdf

     

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

    我没有你的设备,但从阅读代码:

    ---

    > P1SEL0 |= BIT6 | BIT7;//将 P1.6和 P1.7设置为 I2C 模式
    > P1SEL1 &=~( BIT6 | BIT7 );

    查看数据表(SLAS704G)表6-51、您应该使用 PSEL1=1和 PSEL0=0。 请尝试改用:

    > P1SEL1 |= BIT6 | BIT7;//将 P1.6和 P1.7设置为 I2C 模式
    > P1SEL0 &=~(BIT6 | BIT7 );

    ---

    > UCB0CTLW1 = UCASTP_2;//自动停止模式

    使用 UCASTP=2还需要设置 UCB0TBCNT (复位时)、我没看到有这样的设置。 ISR 似乎会在正确的时间发出停止命令、因此我建议您删除此行。

    ---

    Master_Read 和 Master_Write 启动操作、但不要等待操作完成、因此下一个事务将覆盖当前事务。 查看 ISR、我建议您 在发出启动条件和等待停止条件之间插入"LPM0;"一行。 这会将 CPU 置于低功耗模式、直到 ISR 在事务结束时将其唤醒。