This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Are CAN messages continuously sent by hardware if there is no ACK?

I am using T89C51CC03 UA right now. while debugging I found out that even if I wanna send a message once ( via interrupt ), the CAN bus is full of the same message with a period of 1.5ms.

I am sure that other messages are not sent by the interrrupt routine by placing some debugging code inside it.

My question is : Are the other messages sent automatically by the hardware itself if there are no other CAN nodes on the bus to receive them?

If so, how could I solve this problem?

Parents
  • The answer your question is yes. If you broadcast a message and there are no other nodes on the bus YOUR CAN module will send the message forever. You're CAN module will start out in error active mode and NAK your message until you hit an error level and then become error passive (message is still sending). The reason is due to the fact that no one has acknowledged your message.

    You need two nodes on the bus (if your device has two CAN modules then you need to connect them together, refer to your user's manual). The other CAN just needs to be programmed to the same baud rate.

Reply
  • The answer your question is yes. If you broadcast a message and there are no other nodes on the bus YOUR CAN module will send the message forever. You're CAN module will start out in error active mode and NAK your message until you hit an error level and then become error passive (message is still sending). The reason is due to the fact that no one has acknowledged your message.

    You need two nodes on the bus (if your device has two CAN modules then you need to connect them together, refer to your user's manual). The other CAN just needs to be programmed to the same baud rate.

Children