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.

buffer configuration in SCI(Cortex R4F)

Other Parts Discussed in Thread: TMS570LS20216

I m using TMS570LS20216 ARM Cortex-R4F CPU. i want to use SCI/LIN feature of this processor.

i want to configure the processor for LIN module to function in multibuffered mode. I went  through the SPNU489C TMS570LS Series Technical Reference Manual (TRM). There are eight transmit and receiver buffers(SCITD0-SCITD7 and SCIRD0-SCIRD7) in the SCI multi buffered mode. I want to have more than eight buffers. In section 13.8 its mentioned that  additional receive/transmit buffers are a part of "enhanced buffered SCI Module".

How to configure for enhanced buffered SCI Module so  that i can have more than 8 buffers?

Where can i get more information on"enhanced buffered SCI Module"?

Thanks

Pallavi

  • Pallavi,

    The buffer is only 8 bytes long. You may want to consider the following method to serve LIN/SCI.

    (1) Configure LIN/SCI in non-buffered mode, enable TX/RX DMA request.

    (2) Define TX/RX buffer in system memory with whatever size you need.

    (3) Set up two DMA transfers moving data between SCI TX/RX registers and buffer in memory. Set transfer block size to your buffer size. Enable DMA block transfer complete interrupt.

    (4) CPU checks the data after DMA interrupt.

    Please let me if the above suggestion works for you.

    Thanks and regards,

    Zhaohong

  • Zhaohong,

    Thanks for your response.

    As I m new to this microcontroller I need a reference document where I can get more information regarding DMA interface in SCI.

    I want to know how to configure the TX/RX buffers in system memory and how to define transfer block in DMA transfer.

    It would be helpful if you provide a reference. I went through section 13.5 of Technical Reference Manual "SCI DMA Interface" but i could not find the configurations you specified.

    Thanks and Regards

    Pallavi

  • Pallavi,

    From the "SCI DMA Interface" section, you can see how SCI module is configured to generate DMA request for TX and RX. Then you need to go to DMA section to see how to set up DMA. In the attached file, there are two CCS3.3 projects. One is to handle SCI TX with DMA, the other one is using DMA for RX.

    3618.SCI_DMA.zip

    Thanks and regards,

    Zhaohong

  • In this code there is this line :

    DMA_SetChEnable(channel,DMA_HW);   /* Setting this bit will not initiate the transfer */

     

    But what would initiate the transfer ??

  • Gregory,

    This function configures a DMA channel as H/W triggered. The actual DMA transfer will be triggered by the DMA request signal from the peripheral modules. In this case, it is the LIN/SCI module.

    Thanks and regards,

    Zhaohong