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.

TMS320F 2808



Hi Hareesh,

This is related to my previous query ,

1. Consider I have two nodes and each having 21 mail boxes(configured for 21 messages) for data transmission,if node1 gains bus access the node2 will get the chance only after the 21st messages transfer ? or the arbitration occurs between each mailboxes with node2?

2. What shall be the time delay between each mailbox data transfer(each maill box having same data length)

  • On the CAN bus level, arbitration is always between nodes. Suppose there are two nodes in a network, A & B, with each node having 21 mailboxes configured for Transmit operation. Let us assume MBX0 in node A starts the transmission. Once the transmission is complete, both node A and node B need to compete for bus access. Which MBX in each node competes for the bus access is determined by the Transmit priority mechanism.

     

    Case A:

    There are many nodes in the network, but only one node has mailboxes configured for transmission, In this case, the mailboxes get a chance to transmit based either on the Mailbox number or based on the TPL bit, if programmed. There is no bus arbitration, since only one node is transmitting all the time.

     

    Case B:

    There are many nodes in the network and all nodes have mailboxes configured for transmission. In this case, every time the bus becomes idle, all the nodes must compete for bus access. Within the node, the transmission priority order is determined by the MBX number or TPL value, as explained before.

     

    2. What shall be the time delay between each mailbox data transfer (each mail box having same data length

    If there are back-to-back transmissions, you will see 11-bits of "idle time" between frames. Note that "time delay" is a slightly vague term. There is such a thing as "protocol overhead", meaning the CAN bus does not transmit "raw data". It appends the MSGID, DLC bits, CRC field etc.