Carte à clic MCP2517FD
Carte à clic MCP2517FD
Key Features
- Étend le MCU existant avec l'option de connectivité CAN fiable et robuste, la prise en charge des trames CAN 2.0B et CAN FD, la communication CAN haut débit jusqu'à 5 Mbps, le connecteur DE-9 intégré, la sélection d'oscillateur, etc.
- Basé sur le MCP2517FD - contrôleur CAN FD externe avec une interface SPI de Microchip ATA6563 - émetteur-récepteur CAN haute vitesse de Microchip
- Peut être utilisé pour développer une large gamme d'applications de diagnostic automobile, même sur des microcontrôleurs qui ne prennent pas en charge l'interface CAN
- mikroBUS : interfaces SPI, GPIO et PWM
Overview
Le MCP2517FD Click Board™ est une solution CAN complète qui intègre le contrôleur CAN FD MCP2517FD et l'émetteur-récepteur CAN haute vitesse ATA6563 de Microchip et un connecteur DB9 à 9 broches.
Le MCP2517FD Click Board™ Click Board™ nécessite une alimentation de 3,3 V et 5 V. Il communique avec le microcontrôleur cible via l'interface SPI, avec des fonctionnalités supplémentaires fournies par les broches suivantes sur la prise MikroBUS : AN, PWM, INT, TX et RX.
The MCP2517FD Click Board™ is a complete CAN solution which carries the MCP2517FD CAN FD controller and ATA6563 high-speed CAN transceiver from Microchip, as well as a DB9 9-pin connector.
The click requires both 3.3V and 5V power supply. It communicates with the target microcontroller through the SPI interface, with additional functionality provided by the following pins on the mikroBUS™ socket: AN, PWM, INT, TX and RX.
Note: For selecting the interface voltage level, use the onboard jumper, and choose between the 3.3V and 5V. For more information, see the Jumpers and Settings table below.
MCP2517FD Features
The MCP2517FD is a cost-effective and small-footprint CAN FD controller that can be easily connected to a microcontroller over an SPI interface. Therefore, a CAN FD channel can be easily added to a microcontroller that is either lacking a CAN FD peripheral, or that doesn't have enough CAN FD channels.
The MCP2517FD supports both, CAN frames in the Classical format (CAN2.0B) and CAN Flexible Data Rate (CAN FD) format.
ATA6563 CAN TRANSCEIVER FEATURES
ATA6563 is a high-speed CAN transceiver that provides an interface between a controller area network (CAN) protocol controller and the physical two-wire CAN bus.
The transceiver is designed for high-speed ( up to 5Mbit/s ) CAN applications in the automotive industry, providing differential transmit and receive capability.
It offers improved electromagnetic compatibility (EMC) and electrostatic discharge (ESD) performance.
CONNECTOR FEATURES
This is a standard DB 9-pin male connector.
SPECIFICATIONS
Type | CAN |
Applications | Simple solution for adding CAN FD connectivity to your device |
On-board modules | 9-pin CAN connector, ATA6563 CAN transceiver |
Key Features | Communication speed up to 5Mbit/s, low electromagnetic emission (EME) and high electromagnetic immunity (EMI) |
Interface | SPI |
Compatibility | mikroBUS |
Click board size | L (57.15 x 25.4 mm) |
Input Voltage | 3.3V or 5V |
PINOUT DIAGRAM
This table shows how the pinout on MCP2517FD click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
Standby control IP | STBY | 1 | AN | PWM | 16 | CLKO | Clock OP |
NC | 2 | RST | INT | 15 | INT | Interrupt OP | |
Chip select | CS | 3 | CS | TX | 14 | INT0 | Int/GPIO 0 / ATA6563 StdBy |
SPI Clock | SCK | 4 | SCK | RX | 13 | INT1 | Int/GPIO 1 |
SPI data OP | MISO | 5 | MISO | SCL | 12 | NC | |
SPI data IP | MOSI | 6 | MOSI | SDA | 11 | NC | |
Power supply | +3.3V | 7 | 3.3V | 5V | 10 | +5V | Power supply |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ADDITIONAL PINS
Name | I/O | Description |
---|---|---|
TX_CAN | I | CAN transmit |
RX_CAN | O | CAN receive |
CANL | I/O | CAN low line |
CANH | I/O | CAN high line |
JUMPERS AND SETTINGS
Designator | Name | Default Position | Default Option | Description |
---|---|---|---|---|
JP1 | VIO.SEL. | Left | 3V3 | Power Supply Voltage Selection 3V3/5V, left position 3V3, right position 5V |
JP2 | STBY | Right | ON | Select Stand by function, default ON, other takes the STBY SEL configuration |
JP3 | STBY SEL | Left | STBY | Takes STBY input from STBY pin or INT0 pin on mikroBUS™ |
JP4 | Right | 40MHz | Selects between 20 and 40 MHz clock |
LEDS AND BUTTONS
Designator | Name | Type | Description |
---|---|---|---|
CN1 | CONNECTOR | DB9 connector for CAN |
Software Support
Code examples for MCP2517FD click, written for MikroElektronika hardware and compilers are available on Libstock.
CODE SNIPPET
The following code snippet shows the transmission using MCP2517FD CAN FD controller.
01 void transmitMessage( char *msg ) 02 { 03 T_MCP2517FD_txFifoEvent txFlags; 04 T_MCP2517FD_txMsgObj txObj; 05 uint8_t txData[_MCP2517FD_MAX_DATA_BYTES]; 06 bool flush; 07 08 flush = true; 09 txObj.word[0] = 0; 10 txObj.word[1] = 0; 11 12 txObj.bF.id.SID = 0x300; 13 txObj.bF.id.EID = 0; 14 txObj.bF.ctrl.FDF = 1; 15 txObj.bF.ctrl.BRS = 1; 16 txObj.bF.ctrl.IDE = 0; 17 txObj.bF.ctrl.RTR = 0; 18 txObj.bF.ctrl.DLC = MCP2517FD_DLC_64; 19 txObj.bF.ctrl.SEQ = 1; 20 21 memset(txData, 0, _MCP2517FD_MAX_DATA_BYTES); 22 strcpy(txData, msg); 23 MCP2517FD_TransmitEventGet(MCP2517FD_IDX, &txFlags); 24 25 if( txFlags & MCP2517FD_TX_FIFO_NOT_FULL ) 26 { 27 MCP2517FD_TransmitChannelLoad(MCP2517FD_IDX, MCP2517FD_FIFO_CH1, &txObj, 28 txData, MCP2517FD_DlcToDataBytes(txObj.bF.ctrl.DLC), flush); 29 LOG( "rn MCP2517FD : Message sent! > " ); 30 LOG( txData ); 31 LOG( "rn" ); 32 } 33 else 34 { 35 LOG( "rn MCP2517FD : Message not sent! >rn" ); 36 } 37 }
Software Support
Code examples for MCP2517FD click, written for MikroElektronika hardware and compilers are available on Libstock.
CODE SNIPPET
The following code snippet shows the transmission using MCP2517FD CAN FD controller.
01 void transmitMessage( char *msg ) 02 { 03 T_MCP2517FD_txFifoEvent txFlags; 04 T_MCP2517FD_txMsgObj txObj; 05 uint8_t txData[_MCP2517FD_MAX_DATA_BYTES]; 06 bool flush; 07 08 flush = true; 09 txObj.word[0] = 0; 10 txObj.word[1] = 0; 11 12 txObj.bF.id.SID = 0x300; 13 txObj.bF.id.EID = 0; 14 txObj.bF.ctrl.FDF = 1; 15 txObj.bF.ctrl.BRS = 1; 16 txObj.bF.ctrl.IDE = 0; 17 txObj.bF.ctrl.RTR = 0; 18 txObj.bF.ctrl.DLC = MCP2517FD_DLC_64; 19 txObj.bF.ctrl.SEQ = 1; 20 21 memset(txData, 0, _MCP2517FD_MAX_DATA_BYTES); 22 strcpy(txData, msg); 23 MCP2517FD_TransmitEventGet(MCP2517FD_IDX, &txFlags); 24 25 if( txFlags & MCP2517FD_TX_FIFO_NOT_FULL ) 26 { 27 MCP2517FD_TransmitChannelLoad(MCP2517FD_IDX, MCP2517FD_FIFO_CH1, &txObj, 28 txData, MCP2517FD_DlcToDataBytes(txObj.bF.ctrl.DLC), flush); 29 LOG( "rn MCP2517FD : Message sent! > " ); 30 LOG( txData ); 31 LOG( "rn" ); 32 } 33 else 34 { 35 LOG( "rn MCP2517FD : Message not sent! >rn" ); 36 } 37 }
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.