Description: If transmit data is loaded into the UART_D register while the UART is configured for single wire
receive mode, the UART will attempt to send the data. The data will not be driven on the pin,
but it will be shifted out of the FIFO and the UART_S1[TDRE] bit will set when the character
shifting is complete.
Workaround: Do not queue up characters to transmit while the UART is in receive mode. Always write
UART_C3[TXDIR] = 1 before writing to UART_D in single wire mode.
e5704: UART: TC bit in UARTx_S1 register is set before the last character is sent out in
ISO7816 T=0 mode
Errata type: Errata
Description: When using the UART in ISO-7816 mode, the UARTx_S1[TC] flag sets after a NACK is
received, but before guard time expires.
Workaround: If using the UART in ISO-7816 mode with T=0 and a guard time of 12 ETU, check the
UARTn_S1[TC] bit after each byte is transmitted. If a NACK is detected, then the transmitter
should be reset.
The recommended code sequence is:
UART0_C2 &= ~UART_C2_TE_MASK; //make sure the transmitter is disabled at first
UART0_C3 |= UART_C3_TXDIR_MASK; //set the TX pin as output
UART0_C2 |= UART_C2_TE_MASK; //enable TX
UART0_C2 |= UART_C2_RE_MASK; //enable RX to detect NACK
for(i=0;i<length;i++)
{
while(!(UART0_S1&UART_S1_TDRE_MASK)){}
UART0_D = data[i];
while(!(UART0_S1&UART_S1_TC_MASK)){}//check for NACK
if(UART0_IS7816 & UART_IS7816_TXT_MASK)//check if TXT flag set
{
/* Disable transmit to clear the internal NACK detection counter */
UART0_C2 &= ~UART_C2_TE_MASK;
UART0_IS7816 = UART_IS7816_TXT_MASK;// write one to clear TXT
UART0_C2 |= UART_C2_TE_MASK; // re-enable transmit
}
}
UART0_C2 &= ~UART_C2_TE_MASK; //disable after transmit
e7091: UART: UART_S1[NF] and UART_S1[PE] can set erroneously while
UART_S1[FE] is set
Errata type: Errata
Mask Set Errata for Mask 2N03G, Rev 26 AUG 2013
12 Freescale Semiconductor, Inc.
Description: While the UART_S1[FE] framing error flag is set the UART will discard any received data.
Even though the data is discarded, if characters are received that include noise or parity
errors, then the UART_S1[NF] or UART_S1[PE] bits can still set. This can lead to triggering of
unwanted interrupts if the parity or noise error interrupts are enabled and framing error
interrupts are disabled.
Workaround: If a framing error is detected (UART_S1[FE] = 1), then the noise and parity error flags can be
ignored until the FE flag is cleared. Note: the process to clear the FE bit will also clear the NF
and PE bits.
e7092: UART: UART_S1[TC] is not cleared by queuing a preamble or break character
Errata type: Errata
Description: The UART_S1[TC] flag can be cleared by first reading UART_S1 with TC set and then
performing one of the following: writing to UART_D, queuing a preamble, or queuing a break
character. If the TC flag is cleared by queuing a preamble or break character, then the flag will
clear as expected the first time. When TC sets again, the flag can be cleared by any of the
three clearing mechanisms without reading the UART_S1 register first. This can cause a TC
flag occurrence to be missed.
Workaround: If preamble and break characters are never used to clear the TC flag, then no workaround is
required.
If a preamble or break character is used to clear TC, then write UART_D immediately after
queuing the preamble or break character.
e5928: USBOTG: USBx_USBTRC0[USBRESET] bit does not operate as expected in all
cases
Errata type: Errata
Description: The USBx_USBTCR0[USBRESET] bit is not properly synchronized. In some cases using the
bit can cause the USB module to enter an undefined state.
Workaround: Do not use the USBx_USBTCR0[USBRESET] bit. If USB registers need to be written to their
reset states, then write those registers manually instead of using the module reset bit.
e6933: eDMA: Possible misbehavior of a preempted channel when using continuous
link mode
Errata type: Errata
Description: When using continuous link mode (DMA_CR[CLM] = 1) with a high priority channel linking to
itself, if the high priority channel preempts a lower priority channel on the cycle before its last
read/write sequence, the counters for the preempted channel (the lower priority channel) are
corrupted. When the preempted channel is restored, it runs past its "done" point instead of
performing a single read/write sequence and retiring.
The preempting channel (the higher priority channel) will execute as expected.
Mask Set Errata for Mask 2N03G, Rev 26 AUG 2013
Freescale Semiconductor, Inc. 13
Workaround: Disable continuous link mode (DMA_CR[CLM]=0) if a high priority channel is using minor loop
channel linking to itself and preemption is enabled. The second activation of the preempting
channel will experience the normal startup latency (one read/write sequence + startup) instead
of the shortened latency (startup only) provided by continuous link mode.
Mask Set Errata for Mask 2N03G, Rev 26 AUG 2013
14 Freescale Semiconductor, Inc.

MK22FN1M0VLQ12

Mfr. #:
Manufacturer:
NXP / Freescale
Description:
ARM Microcontrollers - MCU K20 1MB 120Mhz
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union