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.

LAUNCHXL2-TMS57012: Not able to receive data through SCI-LIN port

Part Number: LAUNCHXL2-TMS57012
Other Parts Discussed in Thread: HALCOGEN, TMS570LS1224

Hi ,

We are using SCI-LIN port of TMS570LS1224PGE (Launch pad board) controller for serial transmission and receive. We are using HALCoGen for generating SCI code. We are using poling method for transmitting and receiving serial data for initial checking purpose. We are able to transmit data properly, however not able to any receive data.  There are no SCI related error (like PE, OE , FE etc ..) present.

Below configurations are used:

Mode:   SCI2 (NOT LIN mode)

Interrupts: No interrupts enabled (Poling method)

Baud Rate: 9600

Stop Bits: 2

Data Length: 8 bit

Parity: Disabled

Launch pad port: J6 pin 3 (RXD) and J6 pin 2 (TXD)

 

Queries:

1)      Is there any special steps needs to be taken care for Receive?

1)      Please let us know for any experiment needs to be performed?

 

Please let us know if more information is required?

Looking forward to hear from you as early as possible.

 

Thanks in advance.

  • Lokraj,

    Well everything you mentioned looks correct -- except maybe J6

    There are two considerations:

    1) the SCI/LIN is connected to the XDS110 emulator and J6 in parallel.

    -> try removing anything that you connected to J6 and instead use the virtual COM port of the XDS110 as the UART
    connection. See if that works. It should work.

    2) the common mistakes people make when not using the VCP are to either connect a USB-SERIAL adapter that is a +5V IO device (Say from Arduino) or to just go directly to a PC's TX & RX lines. Either way the voltage ranges of the TMS570LS1224 don't match... You need a 3.3V USB-Serial adapter if you do this.

    So ... what exactly are you connecting to J6?

    -Anthony
  • Correct me if I am wrong. How could it be a problem of the USB to TTL converter since he is able to transmit the data?
  • Can you upload your project?
  • Hi Anthony/Yash,

    Thanks for information.

    You are absolutely right.

    SCI-LIN receive started working, after removing 3.3V TTL to USB serial convertor from J6 and using the virtual COM port of the XDS110 as the UART. Now I am able to receive data through SCI-LIN port using the virtual COM port of the XDS110 in PC serial application as the UART.

     However I would like to know, how to connect/interface any UART compatible device like temperature sensor etc with this J6 SCI-LIN Port of Launch pad board TMS570LS1224PGE?

    So ... what exactly are you connecting to J6? 

    I am connecting TTL to USB 3.3V serial connector with SCI-LIN port of J6.

    Thanks & Regards,

    Lokraj Patro

  • Hi, 

    So to Yash's question  -- why it might transmit fine but not receive.... 

    ---   a 3.3V LVMCOS driver like we have on the MCU can drive the input of a 5V TTL receiver, because the VOH of the MCU is below the VIH spec of the receiver, and the VOH spec of the MCU is well above VIH of the receiver.   (Generally a 3.3V LVCMOS driver can drive a 5V TTL receiver directly). 
    So transmit could be fine. 

    But you cannot drive a 5V signal into the 3.3V LVCMOS input of the micro because it'll trip the ESD protection and start driving large currents that may damage the chip or at minimum really mess up it's ability to receive correctly.     

    Lokraj,  

    To your question - I am not sure what is going one exactly if you really have a 3.3V USB->Serial adapter.   

    It could be that it's not wired correctly to the board;  or some sort of error like that which we cannot easily diagnose like this. 

    Or it could be that there is just the simple matter of a drive conflict between the on-board XDS110 and the external USB-Serial. 

    I dont' think we have any resistors you can use to disconnect from the XDS110 ... if memory serves me the firmware on the TM4C chip on the

    110 is supposed to 3state it's pins when there isnt' a serial connection open so that an external serial connection can be made without drive conflict.

    But I don't know if that is actually implemented in the current firmware or if it is on the 'to-do' list.   


    If you really need this capability (because, you have already USB->Serial through the XDS110 so unless you need the connection to a different PC than your debug machine,  you could just use this connection) ..   then if you need this I would suggest posting the question about the XDS110 to the Code Composer studio forum.

    Someone from the firmware team for the XDS110 would have to answer about the behavior and if there is a way to make the thing 3-state. 

    Now if you haven't tried this.. at least try first to make sure that you do not have any terminals connected to the XDS110's serial port. 

    If you do have a connection to the XDS110 serial port active, and at the same time try to connect with an external USB->Serial ... well that is definitely hopeless. 

    Best Regards,

    Anthony