I try to sent a short string (4 bytes) to UART, at the following way:
_io_write(uart_ch, stream_ptr, stream_len); //<== After performing this line, only 2 bytes are actually transffered to UART
_io_fflush(uart_ch); // <== Unhandled Exception
I use Keil uVision4 (4.60) IDE. It doesn't matter how I open the UART - it's the same result (either XON_XOFF or NON_BLOCKING modes).
When I check the debug->MQX->Check for errors, I see under "Tasks": "Unhandled Exception", the Task ID, and the Task Descriptor (by the way - it's not the task that issued the UART write action, but a different task).
1. Why doesn't it write all the bytes at once?
2. What can cause the "Flush" action to behave like that?
3. What can I do with the exception information? How can I get to the bottom of the problem (I have very little knowledge of MQX debugging...)