1
1
This library allows you to communicate with multiple types of CAN controllers
2
- using a consistent API, making CAN communications easier through Arduino.
2
+ using a consistent API, making CAN communications across development platforms
3
+ easier through Arduino.
3
4
4
5
The idea behind this CAN library is to use a similar approach to Adafruit's
5
6
Unified Sensor library (https://github.com/adafruit/Adafruit_Sensor ) by
@@ -22,20 +23,29 @@ I can take credit in putting it together and releasing back to the public
22
23
to make any variation as needed. This is a work in progress library with
23
24
no current release.
24
25
25
- For the MCP2515 library release see CAN_MCP2515 branch on this repo
26
-
26
+ To start using this library, simply add the following two lines to your sketch:
27
27
``` Arduino
28
- #include <Arduino.h>
29
28
#include <CAN.h>
30
-
31
- #if defined(ARDUINO_ARCH_AVR) // Arduino with SPI interface to MCP2515 chip
32
- #include <SPI.h>
33
- #include <CAN_MCP2515.h>
34
- #elif defined(ARDUINO_ARCH_SAM) // Arduino Due
35
- #include <CAN_SAM3X.h>
36
- #elif defined(__MK20DX256__) // Teensy 3.1
37
- #include <CAN_K2X.h>
38
- #else
39
- #error “Your CAN controller is currently unsupported.”
40
- #endif
29
+ #include <SPI.h> // required to resolve #define conflicts
41
30
```
31
+
32
+ Acknowledgements:
33
+ Fabian Greif for the initial libraries for MCP2515, SJA1000 and AT90CAN
34
+ http://www.kreatives-chaos.com/artikel/universelle-can-bibliothek
35
+ as well as his updates at https://github.com/dergraaf/avr-can-lib
36
+ David Harding for his version of the MCP2515 library
37
+ http://forum.arduino.cc/index.php/topic,8730.0.html
38
+ Kyle Crockett CANduino library with 16Mhz oscillator
39
+ http://code.google.com/p/canduino/
40
+ Nuno Alves for the help on Extended ID messaging
41
+ Stevenh for his work on library and all of the MCP research/work
42
+ http://modelrail.otenko.com/arduino/arduino-controller-area-network-can
43
+ Collin Kidder (collin80) for his work on the Arduino Due CAN interface
44
+ https://github.com/collin80/due_can
45
+ Daniel Kasamis (togglebit) both for his code at
46
+ https://github.com/togglebit/ArduinoDUE_OBD_FreeRunningCAN as well as his
47
+ DUE CANshield http://togglebit.net/product/arduino-due-can-shield/
48
+ Cory Fowler (coryjfowler) for 16 MHz bitrate timing information
49
+ https://github.com/coryjfowler/MCP2515_lib
50
+ teachop for the FlexCAN library for the Teensy 3.1
51
+ https://github.com/teachop/FlexCAN_Library
0 commit comments