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.

[参考译文] MSP430FR5994:用于 SPI 和 I2C 协同工作的 TI-RTOS HWI 配置

Guru**** 2528770 points
Other Parts Discussed in Thread: CC1352R, MSP430FR5994

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/984882/msp430fr5994-ti-rtos-hwi-config-for-spi-and-i2c-working-together

器件型号:MSP430FR5994
主题中讨论的其他器件:CC1352R

您好!

我正在尝试在 EUSCIA1上配置 SPI、在 EUSCI0上配置 I2C、并且我正在使用 TI-RTOS。 我可以通过 SPI/I2C 进行单独通信、但不能在两个单独的线程中同时进行。

编译器版本- 16.9.11.LTS
TI-RTOS 版本- 2.20.0.06
XDCTools 版本- 3.32.0.06_CORE

此配置适用于 I2C -

var hwiParams = new halHwi.Params();
/* UART HWI */
hwiParams.arg = 0;
program.global.hwi0 = halHwi.create (48、"&UARTEUSCIA_hwiIntFxn"、hwiParams);
/* I2C HWI */
hwiParams.arg = 0;
program.global.hwi1 = halHwi.create (23、"&I2CEUSCI_hwiIntFxn"、hwiParams);
/* GPIO 端口5 HWI */
hwiParams.arg = 5;
program.global.hwi2 = halHwi.create (27、"&GPIO_hwiIntFxn"、hwiParams);

此配置适用于 SPI -

var hwiParams = new halHwi.Params();
hwiParams.arg = 0;
program.global.hwi0 = halHwi.create (48、"&UARTEUSCIA_hwiIntFxn"、hwiParams);
hwiParams.arg = 0;
program.global.hwi3 = halHwi.create (42、"&MSP_EXP430FR5994_isrDMA"、hwiParams);
hwiParams.arg = 5;
program.global.hwi2 = halHwi.create (27、"&GPIO_hwiIntFxn"、hwiParams);
var hwiParams1 = new halHwi.Params();
hwiParams1.arg = 4;
program.global.hwi4 = halHwi.create (32、"&GPIO_hwiIntFxn"、hwiParams1);

但是、当我为 SPI 和 I2C 添加 HWI 时、我的应用程序会中断。

var hwiParams = new halHwi.Params();
/* UART HWI */
hwiParams.arg = 0;
program.global.hwi0 = halHwi.create (48、"&UARTEUSCIA_hwiIntFxn"、hwiParams);
/* I2C HWI */
hwiParams.arg = 0;
program.global.hwi1 = halHwi.create (23、"&I2CEUSCI_hwiIntFxn"、hwiParams);
/* GPIO 端口5 HWI */
hwiParams.arg = 5;
program.global.hwi2 = halHwi.create (27、"&GPIO_hwiIntFxn"、hwiParams);
/* GPIO 端口4 HWI */
var hwiParams1 = new halHwi.Params();
hwiParams1.arg = 4;
program.global.hwi4 = halHwi.create (32、"&GPIO_hwiIntFxn"、hwiParams1);
/* SPI HWI */
var hwiParams2 = new halHwi.Params();
hwiParams2.arg = 3;
program.global.hwi4 = halHwi.create (42、"&MSP_EXP430FR5994_isrDMA"、hwiParams2);

有人能否让我深入了解在使用 SPI 和 I2C 时如何正确配置 HWI? 谢谢

Vishal

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

    对于 SPI 和 I2C、MSP430会发挥什么作用? 主器件还是从器件?

    您能捕获它们的波形吗?

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

    您好、Gary、

    MSP430FR5994在此担任主器件。 它通过 SPI 与 CC1352R (从器件)相连、另一个通过 I2C 与 MSP430FR5994相连。

    在配置 SPI 和 I2C 时、没有可捕获的波形。 但我可以单独显示工作的 SPI 和 I2C 波形。 你需要这个吗?

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

    是的、最好是在波形无法看到其库存位置时获取波形