
22. 16-Slot CAN Module
22.1.15 CANi Error Source Register (CiEFR Register) (i = 0, 1)
Figure 22.18
C0EFR and C1EFR Registers
The CiEFR register determines an error source when a communication error occurs. Set each bit in the CiEFR
register to 0 after reading out the CiEFR register by program.
Use the MOV instruction to set each bit in the CiEFR register to 0. Write a 0 to the bit which is to set to 0, and
write a 1 to the bit which is to remain unchanged.
For example: To set the ACKE bit in CAN0 to 0
mov.b #0FEh, C0EFR
22.1.15.1 ACKE Bit
The ACKE bit becomes 1 when an ACK error is detected.
22.1.15.2 CRCE Bit
The CRC bit becomes 1 when a CRC error is detected.
Bit Name
Symbol
C0EFR
C1EFR
Address
0216h
0296h
After Reset(1)
00h
Function
Bit Symbol
RW
RCVE
CANi Error Source Register (i = 0, 1)
FORM error detect bit(2)
FORME
RW
Stuff error detect bit(2)
RW
STFE
0: FORM error not detected
1: FORM error detected
0: Stuff error not detected
1: Stuff error detected
Receive error detect bit(2)
Bit error detect bit 0(2)
BITE0
RW
0: Bit error not detected while transmitting
recessive "H"
1: Bit error detected while transmitting recessive
"H"
RW
Bit error detect bit 1(2)
0: Bit error not detected while transmitting
dominant "L"
1: Bit error detected while transmitting dominant
"L"
BITE1
NOTES:
1. The value is obtained by setting the SLEEP bit in the CiSLPR register to 1 (sleep mode exited) after reset and supplying the
clock to the CAN module.
2. Set each bit to 0 by program. If a 1 is written, the value before writing a 1 remains unchanged.
RW
ACK error detect bit(2)
ACKE
0: ACK error not detected
1: ACK error detected
CRC error detect bit(2)
CRCE
0: CRC error not detected
1: CRC error detected
TRE
Transmit error detect bit(2)
RW
0: Error not detected while receiving
1: Error detected while receiving
0: Error not detected while receiving
1: Error detected while receiving
b7 b6 b5 b4
b1
b2
b3
b0