04.03.2013 Views

RL78/D1A User's Manual: Hardware - Renesas

RL78/D1A User's Manual: Hardware - Renesas

RL78/D1A User's Manual: Hardware - Renesas

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Under development<br />

Preliminary document<br />

Specifications in this document are tentative and subject to change.<br />

<strong>RL78</strong>/<strong>D1A</strong> CHAPTER 14 CAN CONTROLLER<br />

14.9.2 Receive Data Read<br />

To keep data consistency when reading CAN message buffers, perform the data reading according to Figure 14-76 to<br />

14-78.<br />

During message reception, the CAN module sets DN of the C0MCTRLm register two times: at the beginning of the<br />

storage process of data to the message buffer, and again at the end of this storage process. During this storage process,<br />

the MUC bit of the C0MCTRLm register of the message buffer is set. (Refer to Figure 14-55.)<br />

The receive history list is also updated just before the storage process. In addition, during storage process (MUC = 1),<br />

the RDY bit of the C0MCTRLm register of the message buffer is locked to avoid the coincidental data WR by CPU. Note<br />

the storage process may be disturbed (delayed) when the CPU accesses the message buffer.<br />

CAN std ID format<br />

DN<br />

MUC<br />

CINTS1<br />

INTREC1<br />

SOF (1)<br />

Figure 14-55. DN and MUC Bit Setting Period (for Standard ID Format)<br />

ID<br />

R0<br />

IDE<br />

RTR<br />

Operation of the CAN contoroller<br />

Remark m = 0 to 15<br />

DLC DATA0-DATA7 CRC ACK EOF<br />

(11) (1) (1) (1) (4) (0-64) (16) (2)<br />

Message Store<br />

MDATA,MDLC.MIDx- > MBUF<br />

Recessive<br />

Dominant<br />

R01UH0317EJ0004 Rev. 0.04 886<br />

Feb. 22, 2013<br />

(7)<br />

IFS<br />

Set DN & MUC<br />

at the same time<br />

Set DN & clear MUC<br />

at the same timing

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!