
2004 Microchip Technology Inc.
Preliminary
DS39637A-page 277
PIC18F2480/2580/4480/4580
REGISTER 23-2:
CANSTAT: CAN STATUS REGISTER
R-1
R-0
OPMODE2
(1)
OPMODE1
(1)
OPMODE0
(1)
Mode 0
R-0
R-0
—
R-0
R-0
R-0
U-0
—
ICODE3
ICODE2
ICODE1
Mode 1, 2
R-1
R-0
R-0
R-0
R-0
R-0
R-0
R-0
OPMODE2
(1)
OPMODE1
(1)
OPMODE0
(1)
EICODE4 EICODE3 EICODE2 EICODE1 EICODE0
bit 7
bit 0
bit 7-5
OPMODE2:OPMODE0:
Operation Mode Status bits
(1)
111
= Reserved
110
= Reserved
101
= Reserved
100
= Configuration mode
011
= Listen Only mode
010
= Loopback mode
001
= Disable/Sleep mode
000
= Normal mode
Mode 0:
Unimplemented:
Read as ‘
0
’
ICODE3:ICODE1:
Interrupt Code bits
When an interrupt occurs, a prioritized coded interrupt value will be present in these bits. This
code indicates the source of the interrupt. By copying ICODE3:ICODE1 to WIN2:WIN0 (Mode 0)
or EICODE4:EICODE0 to EWIN4:EWIN0 (Mode 1 and 2), it is possible to select the correct
buffer to map into the Access Bank area. See Example 23-2 for a code example. To simplify the
description, the following table lists all five bits.
Mode 0
No interrupt
00000
Error interrupt
00010
TXB2 interrupt
00100
TXB1 interrupt
00110
TXB0 interrupt
01000
RXB1 interrupt
01010
RXB0 interrupt
01100
Wake-up interrupt
00010
RXB0 interrupt
-----
RXB1 interrupt
-----
RX/TX B0 interrupt
-----
RX/TX B1 interrupt
-----
RX/TX B2 interrupt
-----
RX/TX B3 interrupt
-----
RX/TX B4 interrupt
-----
RX/TX B5 interrupt
-----
bit 4
bit 3-1
bit 0
bit 4-0
Unimplemented:
Read as ‘
0
’
Mode 1, 2:
EICODE4:EICODE0:
Interrupt Code bits
See ICODE3:ICODE1 above.
Note 1:
To achieve maximum power saving and/or able to wake-up on CAN bus activity,
switch CAN module in Disable mode before putting device to Sleep.
2:
If buffer is configured as receiver, EICODE bits will contain ‘
10000
’ upon interrupt.
Legend:
R = Readable bit
-n = Value at POR
W = Writable bit
‘1’ = Bit is set
U = Unimplemented bit, read as ‘0’
‘0’ = Bit is cleared
x = Bit is unknown
Mode 1
00000
00010
00100
00110
01000
10001
10000
01110
10000
10001
10010
10011
10100
10101
10110
10111
Mode 2
00000
00010
00100
00110
01000
-----
10000
01110
10000
10000
10010
10011
(2)
10100
(2)
10101
(2)
10110
(2)
10111
(2)