MSP430 UART interrupt problem

denverone wrote on Tuesday, November 02, 2010:

Hi all,

I am using a MSP430F1611 with FreeRTOS. The UART is used to communicate with the PC.
My problem is the following: Sometimes a UART interrupt is missed. Rx during receiving data and Tx during sending data. The reason is most probably that the RTOS switches a task or does some other stuff with interrupts disabled.
Sending data without interrupt would not be a suitable solution for me.
I can not imagine, that I am the only one with this problem and would appreciate any help.


jakbird wrote on Tuesday, November 02, 2010:

Disabling interrupts for a short period only defers the interrupt.  If you are losing characters then it’s more likely a handshaking problem.  What bauds rate are you using?  See if you lose characters at 9600 baud if you are using a fast rate like 115K.  Are you using RTS/CTS handshaking?  Some PCs can’t keep up with fast serial rates and require handshaking.  This is a common problem with Hyperterm.

Are you checking error status on UART interrupts?  Overrun is a good indicator that you have handshake problems.
  Jack Peacock

denverone wrote on Wednesday, November 03, 2010:

Yes I check the error status for the UART interrupt. If and Rx byte is lost, the OE bit is set. This also happens with 9600 baud, but not as often as with 115k baud.
And no, I am not using RTS/ CTS for handshake.