Advisory
LIN: Inconsistent Sync Field Error (ISFE) Flag/Interrupt Not Set When Sync Field is
Erroneous
Revisions Affected
0, A, B
Details
During LIN communications, if the Sync field received (on RX) is erroneous (that is, if the
Sync field receives any value other than 0x55), the LIN does not set the ISFE Flag in
the SCIFLR.ISFE register or trigger the ISFE interrupt. Communication gets terminated
without data being received or the RX receive interrupt being set. There is no way for
an application to detect an error in the Sync field. The application can detect if the Sync
field is completely blank or if the Sync field is not received within the given tolerances
(as explained in the
TMS320F28004x Real-Time Microcontrollers Technical Reference
), but the application cannot detect any error in the value of Sync field.
Workarounds
Method 1:
Keep polling the SCIFLR.RXRDY flag and time out if it is not set within a
certain amount of time.
Use the following steps as a guideline:
1. Poll for the SCIFLR.BUSY flag to set.
2. Once the BUSY flag goes high, poll for the SCIFLR.RXRDY flag. Concurrently within
this loop, also have a SW timeout, which times out and exits the loop if the RXRDY
flag is not set within a user-defined time interval.
Method 2:
Configure the CPU timer to interrupt if the RX interrupt is not triggered. This
method does not use CPU bandwidth.
Use the following steps as a guideline:
1. Configure XINT to trigger an ISR when the LINRX goes from high to low (indicating
LIN is busy).
2. Inside the XINT ISR, configure the CPU timer, which starts timing the frame
completion.
3. If the frame is received correctly with the correct Sync field, it should trigger the LIN
RX ISR, inside which you can turn off the timer so that you do not get a false timeout.
4. If the frame is not received correctly, it does not trigger the LIN RX ISR but triggers the
CPU timer ISR (timeout occurred), which indicates an error in the Sync field.
Silicon Revision B Usage Notes and Advisories
SPRZ439G – JANUARY 2017 – REVISED AUGUST 2022
TMS320F28004x Real-Time MCUs Silicon Errata
Silicon Revisions B, A, 0
35
Copyright © 2022 Texas Instruments Incorporated