at91sam9263 ATMEL Corporation, at91sam9263 Datasheet - Page 661

no-image

at91sam9263

Manufacturer Part Number
at91sam9263
Description
At91 Arm Thumb Microcontrollers
Manufacturer
ATMEL Corporation
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
AT91SAM9263
Manufacturer:
AT
Quantity:
1
Part Number:
at91sam9263-CJ
Manufacturer:
ATMEL
Quantity:
181
Part Number:
at91sam9263-CU
Manufacturer:
ATMEL
Quantity:
132
Part Number:
at91sam9263-EK
Manufacturer:
Atmel
Quantity:
135
Part Number:
at91sam9263B-CU
Manufacturer:
IDT
Quantity:
1 043
Part Number:
at91sam9263B-CU
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
at91sam9263B-CU
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
Part Number:
at91sam9263B-CU-100
Manufacturer:
ATMEL
Quantity:
1 000
Part Number:
at91sam9263B-CU-100
Manufacturer:
ATMEL
Quantity:
3 060
Part Number:
at91sam9263B-CU-100
Manufacturer:
Atmel
Quantity:
10 000
Figure 37-3. Message Acceptance Procedure
6249D–ATARM–20-Dec-07
If a mailbox is dedicated to receiving several messages (a family of messages) with different
IDs, the acceptance mask defined in the CAN_MAMx register must mask the variable part of the
ID family. Once a message is received, the application must decode the masked bits in the
CAN_MIDx. To speed up the decoding, masked bits are grouped in the family ID register
(CAN_MFIDx).
For example, if the following message IDs are handled by the same mailbox:
The CAN_MIDx and CAN_MAMx of Mailbox x must be initialized to the corresponding values:
If Mailbox x receives a message with ID6, then CAN_MIDx and CAN_MFIDx are set:
If the application associates a handler for each message ID, it may define an array of pointers to
functions:
When a message is received, the corresponding handler can be invoked using CAN_MFIDx reg-
ister and there is no need to check masked bits:
ID0 101000100100010010000100 0 11 00b
ID1 101000100100010010000100 0 11 01b
ID2 101000100100010010000100 0 11 10b
ID3 101000100100010010000100 0 11 11b
ID4 101000100100010010000100 1 11 00b
ID5 101000100100010010000100 1 11 01b
ID6 101000100100010010000100 1 11 10b
ID7 101000100100010010000100 1 11 11b
CAN_MIDx = 001 101000100100010010000100 x 11 xxb
CAN_MAMx = 001 111111111111111111111111 0 11 00b
CAN_MIDx = 001 101000100100010010000100 1 11 10b
CAN_MFIDx = 00000000000000000000000000000110b
void (*pHandler[8])(void);
unsigned int MFID0_register;
MFID0_register = Get_CAN_MFID0_Register();
// Get_CAN_MFID0_Register() returns the value of the CAN_MFID0 register
pHandler[MFID0_register]();
CAN_MFIDx
CAN_MIDx
Message Accepted
&
CAN_MAMx
==
Yes
No
&
Message Received
AT91SAM9263 Preliminary
Message Refused
661

Related parts for at91sam9263