Bonjour à tous !
Je travaille sur un projet où le but final est de permettre la communication entre 2 Arduino (MEGA et UNO) via bus CAN grâce aux modules MCP2515.
Pour cela je souhaite utiliser la librairie mcp_can.h.
J'essaye actuellement de tester les codes fournis par la librairie comme le CAN_loopback.ino , le CAN_send.ino et le CAN_receive.ino . Pour tester ces codes, j'utilise seulement un module MCP2515 et l'arduino MEGA.
Avec le code du CAN_loopback j'obtiens bien le message indiquant que c'est ok :
Message Sent Successfully!
Standard ID: 0x100 DLC: 8 Data: 0xAA 0x55 0x01 0x10 0xFF 0x12 0x34 0x56
Concernant le code du CAN_send.ino, j'obtiens ce message :
Error Sending Message...
Mais lorsque je change CAN0.setMode(MCP_NORMAL); en CAN0.setMode(MCP_LOOPBACK); j'obtiens bien :
Message Sent Successfully!
Je ne comprends pas pourquoi cela ne fonctionne pas en mode normal... Si quelqu'un peut m'éclaircir dessus je suis preneuse.
Et enfin pour le code CAN_receive.ino, j'obtiens ce message même en changeant le mode :
Entering Configuration Mode Successful!
Settingaudrate Successful!
MCP2515 Initialized Successfully!
MCP2515 Library Receive Example...
Entering Configuration Mode Successful!
Setting Baudrate Successful!
MCP2515 Initialized Successfully!
MCP2515 Library Receive Example...
Il n'arrive donc pas à recevoir le message.
C'est la première fois que je travaille sur le CAN et j'aimerais vraiment comprendre où sont mes erreurs et comprendre aussi ce que sont les modes (NORMAL, LOOPBACK...).
Merci pour votre aide ! ![]()
Si vous avez besoin de plus d'informations, n'hésitez pas ![]()
PS: j'ai connecté le cs sur le pin 10 de mon arduino MEGA et le int sur le pin 2