AN2103 Freescale Semiconductor / Motorola, AN2103 Datasheet - Page 28

no-image

AN2103

Manufacturer Part Number
AN2103
Description
Local Interconnect Network (LIN) Demonstration
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
28
Application Note
4.2.2 CAN
Communication
4.2.2.1 Receiving
CAN Messages
4.2.2.2 CAN Message
Handlers
4.2.2.2.1 Common
Message Handler
NOTE:
Freescale Semiconductor, Inc.
The master software also provides CAN communication and
implements a simple CAN to LIN gateway.
The CAN receive and the transmit functions are described below:
CAN communication do not occur when the demo is configured in
standalone mode.
The receiver function is interrupt driven. If a message passes the
CAN filters it is written into the CAN receive buffer and a receive
interrupt request is issued. The CANRx ISR sets a msgrxd flag that
indicates that a new message has been received and clears the
interrupt flag to enable further interrupts. The main routine, discussed
below, polls the msgrxd flag, waiting until it is set. When a new CAN
message is received, the code calls a MsgHandlerTable (array of
pointers to functions) and jumps to the appropriate
MsgHandlerFunction. The function that is executed is dependent on
the first byte of the received CAN message. This byte, masked off
with 0x0F, determines the index of the MsgHandlerTable and
subsequently the handler that the code executes.
The basis of the CAN communication and gateway function is
performed using a series of message handlers. These are described
below:
This handler is used to transmit a LIN message to a particular slave
node. The node that the message is transmitted to is determined by an
index (CanMsgIndex). The index is calculated from the CAN message
that was received. The slaves receive the LIN messages and control
the external button LED around the circumference of the ‘clock face’.
For More Information On This Product,
Figure 13 Message Handler (1-12) flow diagrams
Go to: www.freescale.com
CLOCK_LED_COMMAND
to slave node X
Transmit
Start
End
X denotes node number
(0 <= x >=12)
MOTOROLA
AN2103

Related parts for AN2103