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.

TMS320F280049M: DMA example on F280049M

Part Number: TMS320F280049M

Hi Champs,

I checked the C2000ware driver library example and didn't see dma example in F28004x. Could you please tell me will we provide dma example in future c2000ware release ? If yes, could you please tell me the schedule? thanks!

  • Hi Lisa,

    Some of the communications peripherals have DMA examples--CAN, FSI, and SPI all do. Will that do or were you looking for something else?

    Whitney
  • Hi Whitney,

    I am looking for CAN+DMA, in our example code. We use DMA to move RX object. Now I would like to use DMA move date to TX_obj & RX_obj. I will try the example code first. thanks!
  • Hi Whitney,

    I got another question, I check the "can_ex4_loopback_dma" code and I didn't know why the RX_OBJ will be in IF2 instead of IF1 ? Because IF1&IF2 can write&read.

    There is a code which is CAN_transferMessage(CANA_BASE, CAN_IF2, RX_MSG_OBJ_ID, false, true); However, I think this one didn't set receive object is in IF2. And looks like RX_OBJ is located on IF2. I also check CAN_setupMessageObject(). It looks like all message object is located on IF1 only. Could you please tell me where I can see which IFx message locate ? thanks!

  • Lisa

    The IFx are the interface registers, they are present to set data to be placed into a specified message object RAM or to store data pulled from a specified message object RAM. We typically follow the philosophy to use IF1 to deal with transmitting message objects and IF2 to pull in the received data. You don't necessarily have to follow that. You can specify a different IFx when using the CAN_transferMessage().

    Best regards
    Chris
  • Hi Chris,
    thanks for your reply. I have another question about CAN transmit. After we write data into IFx register then use CAN_transferMessage() to move IFx data register to MessageRAM. Could you please tell me when signal will be passed to external ? Will message be passed out after write to MessageRAM or after write into IFx data register ? thanks !
    I also have another question about external loopback mode. I use LA ( Logic analyzer) to measure CAN signal. Because I can check CAN signal on TX pin when I set CAN to external loopback mode. Should I connect TX pin to CAN transceiver or I can measure the pin directly ? thanks!
  • Lisa

    Those won't trigger a message to be transmitted unless you are setting the TXRQST bit in the IFxCMD when you do the transfer. It will be transferred to RAM and then transmitted.

    You'll need to hook up CAN transceiver.

    Best regards
    Chris
  • Hi Chris,
    I see. thanks !