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.

TMS320F28386S: UART inquiry

Genius 9880 points
Part Number: TMS320F28386S

Hi,

Customer have questions regarding TI microcontroller TMS320F28386S/Eval board TMDSCNCD2838x, details below.

"I am looking for a IC UART to connect to the Serial Communications Interface (SCI), commonly known as a UART, of the microcontroller TMS320F28386S. This is for a new design, so I am looking for an IC UART with longevity and is available.

I am confused between the SCI ports and the UART ports on the microcontroller TMS320F28386S. The datasheet states the SCI ports are commonly known as UART. I am assuming that both the SCI ports and the UART ports transmit and receive data using the standard non-return-to zero format. Is that correct? UART is a data format and can send them over TTL or RS485 or RS232. RS485 is differential and the SCI ports and the UART ports are not differential. Are both the SCI ports and the UART ports TTL? The UART port says EIA-485 9-bit support. I guess that means I can connect a RS485 transceiver to the UART ports, is that correct. Can I connect a RS485 transceiver to the SCI ports? I need to understand the difference between the SCI port, commonly known as UART, and the UART ports on the microcontroller TMS320F28386S and when to use them. Thank you. We are planning to use UART for debug (TTL levels) and a UART for programming (RS485)

I need to know which port (SCI or UART) for debug (TTL) and what external ICs are needed. I also need to know which port (SCI or UART) for programming (RS485) and what external ICs are needed, for this I assume an external RS485 transceiver. Does TI have any ICs?"

Thank you in advance

Regards,
Maynard

  • Hi Maynard,

    "SCI" is the name of the module and that module is used to implement UART functionality.  The SCI is connected to the C28x cores.  This device has another module "CM-UART" which can also be used to implement UART functionality, but the CM-UART is connected to the CM code (ARM M4) only.  It is also worth noting that some other C2000 devices have a "LIN" module which also has a mode that can implement a general purpose UART functionality instead of LIN functionality.  

    The pins for the SCI module use CMOS logic levels with VDDIO = 3.3V.  You can certainly connect these pins directly to another microcontroller, processor, FPGA, sensor, or other device to directly establish UART communications between the two devices, but only if the other processor has compatible 3.3V logic levels.  If you try to directly talk to another device with TTL 5V levels, the C28x device could be damaged, as the IOs are not 5V tolerant.  To talk to another device with 5V TTL levels, you'd want to use a level-shifter as an intermediary.

    Instead of direct communication, you can also use a RS-485, RS-232, or other transceiver to talk to other devices.  Again, you'll want to select a transceiver IC with logic levels compatible to the 3.3V levels of the C2000 MCU (or use a level shifter).  Note that transceivers may have some additional side-channel controls (enable, direction, etc.) that need to be controlled via additional GPIOs in SW (the SCI module only has HW control of the TX and RX pins).

    For programming the device via RS-485, refer to the "ROM Code and Peripheral Booting" chapter of the device Technical Reference Manual (https://www.ti.com/lit/ug/spruii0c/spruii0c.pdf).  This will use the SCI module.  For RS-485 transceiver ICs, see https://www.ti.com/interface/rs-485-rs-422/products.html.  We don't currently have a specifically recommended transceiver.