Tutorial - Arduino Due - Button Mouse Control

This tutorial will show you how to use the ButtonMouseControl example with the Arduino Due. The code reads five buttons and use the Mouse library to send commands to the PC.

Materials List

1 x Arduino Due

1 x Breadboard

5 x Push Buttons

5 x 1KΩ Resistor

Some jumpers

The Arduino Due

The Arduino Due is the last member of Arduino family. It's the first with 32-bit microcontroller, the Atmel ATSAM3X8E and has a CPU based on ARM-Cortex-3. The microcontroller's clock runs at 84MHz has USB interface (like a Leonardo) and others connections. Because of the new features implemented on Due, it makes possible some projects with highly computing needs.

 

The specifications of Arduino Due  (From Arduino WebSite)

Microcontroller AT91SAM3X8E
Operating Voltage 3.3V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 54 (of which 12 provide PWM output)
Analog Input Pins 12 (12 bits)
Analog Outputs Pins 2 (DAC) (12 bits)
Total DC Output Current on all I/O lines 130 mA
DC Current for 3.3V Pin 800 mA
DC Current for 5V Pin 800 mA
Flash Memory 512 KB all available for the user applications
SRAM 96 KB (two banks: 64KB and 32KB)
Clock Speed 84 MHz

WARNING!!!

The operation voltage of I/O pins are 3.3V (not 5V). Don't use 5 Volts on I/O pins, you can damage the Arduino Due. The shields based on Rev.3  (like a Ethernet Shield) are compatible with Due. Other shields, based on 5 Volts need you  to add a logic level converter between them. 

DAC Output

Finally! A DAC is available. The Due has two 12 bits digital-analogic converters!!! Give goodbye to MP3 shields. The Audio Library (only compatible with Due) is on beta version but it can read .wav files.

Communication         

  • 4 Hardware UARTs 
  • 2 I2C
  • 1 CAN Interface (Automotive communication protocol)
  • 1 SPI
  • 1 Interface JTAG (10 pin)
  • 1 USB Host  (like as Leonardo)
  • 1 Programming Port

PS:The SAM3X natively supports ethernet protocol but its need a PHY interface to work. See more information on this link

Pinout Diagram

On image below you see the Pinout Diagram (by Gray Nomad) :

Programming

1° Download Arduino version 1.5.2 (beta version). Windows users, don’t forget to install USB drivers for Programming Port and for Native Port.

2° Mount circuit of figure below

3° Connect the Board to Programming Port and select Arduino Due (Programming Port) from the Tools>Board menu in the Arduino IDE.

4° Select sketch from the File>Examples>09.USB> Mouse>ButtonMouseControl menu and upload it.

5° Change to Native Port.

6° Click on buttons and see your mouse moving.

That's All!!! Please comment below!!! Thanks!

Reference

http://arduino.cc/en/Tutorial/ButtonMouseControl

http://arduino.cc/forum/index.php?PHPSESSID=7a57482e5bea99f5316fa31...

http://arduino.cc/en/Main/ArduinoBoardDue

http://arduino.cc/forum/index.php/topic,142908.0.html

Views: 11644

Comment

You need to be a member of GarageLab (arduino, electronics, robotics, hacking) to add comments!

Join GarageLab (arduino, electronics, robotics, hacking)

Latest Activity

iftekhar Mobin is now a member of GarageLab (arduino, electronics, robotics, hacking)
yesterday
Profile IconLeicester Hibbert and Michael Young joined GarageLab (arduino, electronics, robotics, hacking)
Jan 9
Profile IconThorsten Schwarz and Dana Custer joined GarageLab (arduino, electronics, robotics, hacking)
Jan 2
Aqeel munir updated their profile
Dec 31, 2016
Todd Enger updated their profile
Dec 29, 2016
FRANK KWABENA is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 28, 2016
Ayhan Chaplan commented on GarageLab's blog post How to use a Peltier with Arduino
"Hi! Will this setup work with a 3,8V / 2,5A Peltier element? Or do I have to reduce the resistance…"
Dec 26, 2016
Profile IconAyhan Chaplan, Erva and Donna Carter joined GarageLab (arduino, electronics, robotics, hacking)
Dec 26, 2016
Galy Huang posted a discussion

Ubuntu on Firefly-RK3399

Firefly-RK3399 with dual-core Cortex-A72 and quad-core Cortex-A53, ARM® Mali-T860 MP4 quad-core…See More
Dec 20, 2016
Chase Rangel posted a discussion

What is the simplest way to control one brushless motor forward/reverse?

  Hello everyone I don't know much about this type of stuff had only a handful of RC cars.I've been…See More
Dec 12, 2016
Profile IconErving Howe, Chase Rangel, Werner Pretorius and 1 more joined GarageLab (arduino, electronics, robotics, hacking)
Dec 12, 2016
Frank Turner is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 9, 2016
Marcelo Rodrigues and swapnil are now friends
Dec 6, 2016
Marcelo Rodrigues replied to swapnil's discussion Tiny 85 based Thermometer
"Dear Swapnil, Since you don't have any experience with programming you should consider start…"
Dec 5, 2016
swapnil posted a discussion

Tiny 85 based Thermometer

Hi, can any one guide me how to make the tiny 85 based Thermometer which will glow the LED…See More
Dec 4, 2016
Spyros Svoronos is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 4, 2016
K Biju is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 29, 2016
Profile Iconswapnil and Yasser joined GarageLab (arduino, electronics, robotics, hacking)
Nov 28, 2016
udit is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 25, 2016
Aqeel munir is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 23, 2016

© 2017   Created by Marcelo Rodrigues.   Powered by

Badges  |  Report an Issue  |  Terms of Service