MCP2510-I/P Microchip Technology Inc., MCP2510-I/P Datasheet - Page 45
![no-image](/images/manufacturer_photos/0/4/440/microchip_technology_inc__sml.jpg)
MCP2510-I/P
Manufacturer Part Number
MCP2510-I/P
Description
STAND-ALONE CAN CONTROLLER, I TEMP
Manufacturer
Microchip Technology Inc.
Type
Programmable Peripheral Interfacer
Datasheet
1.MCP2510-IP.pdf
(76 pages)
Specifications of MCP2510-I/P
Package Type
18-Pin PDIP
Voltage, Supply
2.7-5.5 V
Lead Free Status / Rohs Status
RoHS Compliant part
Electrostatic Device
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Part Number:
MCP2510-I/P
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
7.0
The device has eight sources of interrupts. The CAN-
INTE register contains the individual interrupt enable
bits for each interrupt source. The CANINTF register
contains the corresponding interrupt flag bit for each
interrupt source. When an interrupt occurs the INT pin
is driven low by the MCP2510 and will remain low until
the Interrupt is cleared by the MCU. An Interrupt can
not be cleared if the respective condition still prevails.
It is recommended that the bit modify command be
used to reset flag bits in the CANINTF register rather
than normal write operations. This is to prevent unin-
tentionally changing a flag that changes during the
write command, potentially causing an interrupt to be
missed.
It should be noted that the CANINTF flags are read/
write and an Interrupt can be generated by the MCU
setting any of these bits, provided the associated CAN-
INTE bit is also set.
7.1
The source of a pending interrupt is indicated in the
CANSTAT.ICOD (interrupt code) bits as indicated in
Register 9-2. In the event that multiple interrupts occur,
the INT will remain low until all interrupts have been
reset by the MCU, and the CANSTAT.ICOD bits will
reflect the code for the highest priority interrupt that is
currently pending. Interrupts are internally prioritized
such that the lower the ICOD value the higher the inter-
rupt priority. Once the highest priority interrupt condi-
tion has been cleared, the code for the next highest
priority interrupt that is pending (if any) will be reflected
by the ICOD bits (see Table 7-1). Note that only those
interrupt sources that have their associated CANINTE
enable bit set will be reflected in the ICOD bits.
TABLE 7-1:
ICOD<2:0>
2002 Microchip Technology Inc.
000
001
010
011
100
101
110
111
INTERRUPTS
Interrupt Code Bits
ERR•WAK•TX0•TX1•TX2•RX0•RX1
ERR
ERR•WAK
ERR•WAK•TX0
ERR•WAK•TX0•TX1
ERR•WAK•TX0•TX1•TX2
ERR•WAK•TX0•TX1•TX2•RX0
ERR•WAK•TX0•TX1•TX2•RX0•RX1
ICOD<2:0> DECODE
Boolean Expression
7.2
When the Transmit Interrupt is enabled (CAN-
INTE.TX
INT pin when the associated transmit buffer becomes
empty and is ready to be loaded with a new message.
The CANINTF.TX
source of the interrupt. The interrupt is cleared by the
MCU resetting the TX
7.3
When the Receive Interrupt is enabled (CAN-
INTE.RX
INT pin when a message has been successfully
received and loaded into the associated receive buffer.
This interrupt is activated immediately after receiving
the EOF field. The CANINTF.RX
indicate the source of the interrupt. The interrupt is
cleared by the MCU resetting the RX
7.4
When an error occurs during transmission or reception
of a message the message error flag (CAN-
INTF.MERRF) will be set and, if the CANINTE.MERRE
bit is set, an interrupt will be generated on the INT pin.
This is intended to be used to facilitate baud rate deter-
mination when used in conjunction with listen-only
mode.
7.5
When the MCP2510 is in sleep mode and the bus activ-
ity wakeup interrupt is enabled (CANINTE.WAKIE = 1),
an interrupt will be generated on the INT pin, and the
CANINTF.WAKIF bit will be set when activity is
detected on the CAN bus. This interrupt causes the
MCP2510 to exit sleep mode. The interrupt is reset by
the MCU clearing the WAKIF bit.
N
N
Transmit Interrupt
Receive Interrupt
Message Error Interrupt
Bus Activity Wakeup Interrupt
IE = 1) an Interrupt will be generated on the
IE = 1) an interrupt will be generated on the
N
IF bit will be set to indicate the
N
IF bit to a ‘0’.
MCP2510
N
IF bit will be set to
DS21291E-page 45
N
IF bit to a ‘0’.