number of bits to transmit). Note that when performing byte writes to SHIFTBUFn (or
SHIFTBUFBIS for transmitting MSB first), the rest of the register remains unaltered
allowing an address mark bit or additional stop bit to remain undisturbed.
FlexIO does not support automatic insertion of parity bits.
Table 47-3. UART Transmit Configuration
Register
Value
Comments
SHIFTCFGn
0x0000_0032
Configure start bit of 0 and stop bit of 1.
SHIFTCTLn
0x0003_0002
Configure transmit using Timer 0 on
posedge of clock with output data on Pin
0. Can invert output data by setting
PINPOL, or can support open drain by
setting PINPOL=0x1 and PINCFG=0x1.
TIMCMPn
0x0000_0F01
Configure 8-bit transfer with baud rate of
divide by 4 of the FlexIO clock. Set
TIMCMP[15:8] = (number of bits x 2) - 1.
Set TIMCMP[7:0] = (baud rate divider /
2) - 1.
TIMCFGn
0x0000_2222
Configure start bit, stop bit, enable on
trigger low and disable on compare. Can
support CTS by configuring TIMEN=0x3.
TIMCTLn
0x01C0_0001
Configure dual 8-bit counter using
Shifter 0 status flag as inverted internal
trigger source. Can support CTS by
configuring PINSEL=0x1 (for Pin 1) and
PINPOL=0x1.
SHIFTBUFn
Data to transmit
Transmit data can be written to
SHIFTBUF[7:0] to initiate an 8-bit
transfer, use the Shifter Status Flag to
indicate when data can be written using
interrupt or DMA request. Can support
MSB first transfer by writing to
SHIFTBUFBBS[7:0] register instead.
47.5.2 UART Receive
UART receive can be supported using one Timer, one Shifter and one Pin (two Timers
and two Pins if supporting RTS). The start and stop bit verification is handled
automatically and multiple transfers can be supported using the DMA controller. The
timer status flag can be used to indicate when the stop bit of each word is received.
Triple voting of the received data is not supported by FlexIO, data is sampled only once
in the middle of each bit. Another timer can be used to implement a glitch filter on the
incoming data, another Timer can also be used to detect an idle line of programmable
length. Break characters will cause the error flag to set and the shifter buffer register will
return 0x00.
Chapter 47 Flexible I/O (FlexIO)
Kinetis KE1xZ256 Sub-Family Reference Manual, Rev. 3, 07/2018
NXP Semiconductors
1251
Summary of Contents for Kinetis KE1xZ256
Page 2: ...Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 2 NXP Semiconductors...
Page 178: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 178 NXP Semiconductors...
Page 356: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 356 NXP Semiconductors...
Page 410: ...Interrupts Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 410 NXP Semiconductors...
Page 604: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 604 NXP Semiconductors...
Page 634: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 634 NXP Semiconductors...
Page 674: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 674 NXP Semiconductors...
Page 820: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 820 NXP Semiconductors...
Page 1030: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1030 NXP Semiconductors...
Page 1052: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1052 NXP Semiconductors...
Page 1066: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1066 NXP Semiconductors...
Page 1268: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1268 NXP Semiconductors...
Page 1314: ...Usage Guide Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1314 NXP Semiconductors...
Page 1316: ...Kinetis KE1xZ256 Sub Family Reference Manual Rev 3 07 2018 1316 NXP Semiconductors...