Part Number: MSP432P401R
Tool/software: TI-RTOS
Hi,
I'm having trouble running UART at baud rate 115200 with flow control to a cellular module. I'm using Simplelink 1.40.00.28 on MSP432P401R Rev C.
On a stripped-down version of my project, a thread listens for UART packets from the cellular module and then sends it to another UART port for console display, and another thread (with a lower priority) initiates procedures for connecting to the cellular network. Here, UART communication runs smoothly and network communication can be maintained.
The UART module is then integrated into the full-scale project which runs more threads (for logging, routine functions, and I2C & SPI sensors). The UART listener thread still has the highest priority among the other threads. Here I encounter two issues:
1. The thread responsible for connecting to cellular network needs to wait for a long time between each UART transmission for the data to be sent and received successfully. Basically, I had to insert usleep(200000) between each UART instruction to the cellular module. (the number 200000 was obtained through trial and error)
2. When data of larger size is expected (here it is 130 bytes), the UART seems to stall and no data could be received at all.
Referring to errata USCI44 in slaz610m, both MCLK and SMCLK (which runs my UART clock) are driven by DCO, and I have not polled UCAxTXIFG and UCAxRXIFG. I have also increased the UART ring buffer size to 1024 but to no avail. Pls help on this.
Thanks,
Alvin
