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.

TM4C123GE6PZ: TM4C123GE6PZ CAN bus questions

Part Number: TM4C123GE6PZ

Hi 

Here is our customer TM4C123GE6PZ CAN bus questions shown as below, please help

1. The code sends always a message with Id 0 and DLC 0 when the bus is started. Is There any way that we can disable it?
2. Is there a buffer for sending/receiving messages? If yes, how big are these buffers?
3. How fast can the CAN function be called? How can we prevent runtime errors by high bus load , for example, we try to send messages but the bus is just busy. In this case would the messages be send later or just ignored?

Thanks,

Andy

  • Andy918 said:
    1. The code sends always a message with Id 0 and DLC 0 when the bus is started. Is There any way that we can disable it?

    That is not inherently caused by the CAN module. It is probably a software issue.

    Andy918 said:
    2. Is there a buffer for sending/receiving messages? If yes, how big are these buffers?

    There are 32 message objects. Each message object can hold one CAN message. It can either be a message to transmit, or a place to put a message received. It is possible to reserve more than one message object for receive messages with the same arbitration ID, but in that case you cannot always tell which message was received first.

    Andy918 said:
    3. How fast can the CAN function be called? How can we prevent runtime errors by high bus load , for example, we try to send messages but the bus is just busy. In this case would the messages be send later or just ignored?

    I am not sure I understand the question. A message object that is loaded for transmit will remain in that object until the CAN module is able to transmit it. The software should check that a previous message has successfully completed transmission before reloading that message object.