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.

TMS570 Freertos SCI Rx Interrupt Problem

Other Parts Discussed in Thread: HALCOGEN

Hi,

 

I have a problem with SCI1 receive interrupt. SCI1 for transmit has worked without problem at all.

I have generated the code from HALCOGEN including FreeRTOS.

I have followed setting in SCI1 just the same as TMS570 Safety MCU Demos, except the baudrate value.

When the uC receive the first 4 byte packet, it recognized and give reply. But with second packet and third packet the

uC doesn't reply at all. And when the fourth packet received by uC, it will hang. The scheduler freeze.

 

I have found out that even my setting is to use low level interrupt, the actual event was coming from sci1HighLevelInterrupt handler.

If you looking at sci.c from TMS570 Safety MCU Demos, you will find sci1HighLevelInterrupt handler and sci1LowLevelInterrupt handler

used even the setting is to use low level interrupt.

 

I have check the interrupt processing, and HALCOGEN has generate sufficient code to protect current running task context when interrupt occured.

 

ADDED:

When receive byte from PC, sci1HighLevelInterrupt handler called repetitively indicating it acknowledge receive first 2 byte, but the next is

phantom interrupt continuously generated. Maybe this is the cause that the scheduler being freezed.

 

Anybody have some idea or clue to solve my problem?

Thank you.

 

Best Regards,

 

Agfa