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: TI-RTOS HWI config for SPI and I2C working together

Part Number: MSP430FR5994
Other Parts Discussed in Thread: CC1352R,

Hello,

I am trying to configure both SPI on EUSCIA3 and I2C on EUSCIB0 and I am using TI-RTOS. I can seperately communicate via SPI/I2C but not simultaneously in two seperate threads.

Compiler version - 16.9.11.LTS
TI-RTOS version - 2.20.0.06
XDCTools version - 3.32.0.06_core

This config works for 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, "&I2CEUSCIB_hwiIntFxn", hwiParams);
/* GPIO Port 5 HWI */
hwiParams.arg = 5;
Program.global.hwi2 = halHwi.create(27, "&GPIO_hwiIntFxn", hwiParams);

This config works for 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);

But when I add both HWI for SPI and I2C my application breaks.

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, "&I2CEUSCIB_hwiIntFxn", hwiParams);
/* GPIO Port 5 HWI */
hwiParams.arg = 5;
Program.global.hwi2 = halHwi.create(27, "&GPIO_hwiIntFxn", hwiParams);
/* GPIO Port 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);

Can someone give me an insight how to correctly configure the HWI when using both SPI and I2C? Thanks

Vishal

**Attention** This is a public forum