Arduino-Due-Based Dual CAN Bus Interface With RTC And Micro SD
MicroSD card and battery (CR1220) are not included!
The jCOM.DUE.CORE-C board combines two of our products into one:
- Dual CAN Bus Interface for Arduino Due
- Due Core - Arduino Compatible SAM3X8E 32bit ARM Cortex M3 Module
In addition, we have added two proven Adafruit components:
Further onboard components are:
- A 4-pos. DIP switch, readable per digital input
- 4 push-buttons, also readable per digital input
- 8 LEDs, controllable per digital output
- 2 x UART port, compatible with:
The CAN Bus section incorporates dual CAN transceivers required by the two integrated CAN ports on the Arduino Due, i.e. they convert the CAN TTL signal into a differential voltage as required by the CAN Bus Standard (ISO 11898).
The jCOM.DUE.CORE-C board is powered either by the USB port connection (either the programming or native USB) or through an external power supply supporting an input voltage of 7 to 36 VDC.
The Due Core is a microcontroller board based on Arduino Due, featuring the Atmel SAM3X8E ARM Cortex-M3 CPU. It integrates all peripherals required for the MCU, and all GPIO are connected to 2.54mm connectors. As a standard MCU core, the board has the following features:
- Compact size: All components are put on a 54 x 58mm 4-Layers PCB. All IOs are connected to a 116-pin 2.54 standard connector.
- Easy to use: All IOs are connected to 116pin 2.54 standard connector. It requires only a 5 VDC power supply to make it work.
- Stable design: High-quality 4-layer PCB layout, two 5V to 3.3V LDO onboard, one for digital and one for analog processing. Separate AVCC and AGND, to ensure optimum analog performance.
- Easy to set up the development environment: Uploading sketches through standard 6-pin UART interface, standard Micro usb connector, full use of existing resources.
- User-friendly design: Rich LED status indication, two onboard buttons, one is for MCU reset, and one is for Flash Erase. Unique jumper erase protection against the flash erased by mistake.
- Rich resources: All IOs are available for the user. The onboard I2C EEPROM is designed to compensate for the shortcomings of the standard SAM3X8E, which has no built-in EEPROM.
Digital I/O Assignment:
- BUTTON0 - D30
- BUTTON1 - D32
- BUTTON2 - D21
- BUTTON3 - D20
- DIP Switch
- SW0 - D12
- SW1 - D11
- SW2 - D29
- SW3 - D27
- CAN LEDs
- CAN1 LED - D14
- CAN2 LED - D15
- LED Block
- LED0 - D67
- LED1 - D64
- LED2 - D52
- LED3 - D2
- LED4 - D63
- LED5 - D65
- LED6 - D78
- LED7 - D13
Possible applications include:
- CAN to USB Gateway and Protocol Converter
- SAE J1939 Gateway and Protocol Converter
- CAN Bus Data Logger
- CAN Bus Bridge (connecting 2 CAN networks, even at different baud rates)
- CAN Bus Analyzer (in combination with a suitable Windows program)
- SAE J1939 Data Monitoring
- CAN ECU Prototyping
- SAE J1939 ECU Prototyping
- Dual CAN Port Test Sketch With LED CAN Traffic Indicators...
- Programming the Adafruit DS3231 Precision RTC Breakout Board...
- Programming the Adafruit Micro SD Breakout Board...
Further sample programs will added over time.
If you experience any problems with running our program samples, please check the following:
- Make sure, your Arduino IDE supports the Due - See: Arduino Due IDE Setup
- Make sure, you have the newest version of the Arduino IDE installed
CAN Board Resources:
- Arduino Due: Dual CAN Port Test Sketch
- Arduino Due: Dual CAN Port Test Sketch With LED CAN Traffic Indicators
- Dual CAN Bus Interface For Arduino Due: Controlling the LEDs
- ODB2 and CAN Bus Acquisition Libraries
- SAE J1939 Protocol Stack Sketch for Arduino Due
- App Note: ARM Cortex M3 Development Boards Require External CAN Bus Transceiver
- CAN Bus Data Traffic Simulation With Arduino Due
- CAN Bus Bridge (CAN-to-CAN) Application With Arduino Due
- SAE J1939 GPS Application With Arduino Due Delivers PGN 65267 (Vehicle Position)
Arduino Due Resources:
- Getting started with the Arduino Due
- Download the Arduino Software (IDE)
- Atmel 11057 32-bit Cortex-M3 Microcontroller SAM3X/SAM3A Datasheet (PDF...)
- A Brief Introduction to Controller Area Network
- Arduino Due Firmware Flaw: Problem With Using The USB Programming Port At 230400 Baud And Beyond...
- ARM Cortex Processors – UART Programming Problem At Baud Rates Higher Than 115200...
- Arduino Due - Programming And Debugging Using JTAG ICE And Atmel Studio...
- Arduino DUE CORE Board With Dual CAN Bus Interface And Extended Power Supply Range...
- Programmable, Arduino-Due-Based USB Gateway With Two CAN Bus Ports...
Programming Arduino - Getting Started With Sketches
by Simon Monk
Clear, easy-to-follow examples show you how to program Arduino with ease! "Programming Arduino: Getting Started with Sketches" helps you understand the software side of Arduino and explains how to write well-crafted Sketches (the name given to Arduino programs) using the C language of Arduino. This practical guide offers an unintimidating, concise approach for non-programmers that will get you up and running right away.
Programming Arduino: Getting Started with Sketches explains basic concepts and syntax of C with simple language and clear examples designed for absolute beginners - no prior knowledge of programming is required. It leads you from basic through to advanced C programming concepts and features dozens of specific examples that illustrate concepts and can be used as-is or modified to suit your purposes.
- All code from the book is available for download.
- Helps you develop working Sketches quickly.
Coverage includes: C Language Basics; Functions; Arrays, Strings; Input / Output; Standard Library Goodies; Storage; LCD Displays; Programming for the Web; Program Design; C++ and Library Writing