Having thoroughly read the LPC55xx user manual, Chapter 41, there seems to be two pieces of information conspicuous by their absence:
1. How does one send a CAN message?
2. How does one receive a CAN message?
From reading the information on Fifos it would seem that a received message is placed in the receive fifo, and it can be read from RAM, but what is not clear is how the fifo get/put registers are then updated.
Sending a message, appears to involve writing to the Fifo and then sending an "add request". Is that correct?
Hi, Benton,
Regarding the CAN message buffer, pls refer to the section as following Fig in UM11424.pdf, there are TWO message buffer type, one is FIFO, another is buffer, for simplicity, pls refer to the buffer.
Firstly, you can put the CAN message RAM in any internal RAM location, the CAN->MRBA register defines the start address of the CAN message RAM.
For example the TX buffer, the CAN->TXBC specifies the TX buffer start address(not absolute address, just offset based on CAN->MBRA) and the buffer number. The CAN->TXESC register specifies the data length for each TX buffer.
Hope it can help you
BR
XiangJun Rong