Arduino: Introduction To Microcontrollers
Arduino: Introduction To Microcontrollers
ARDUINO
MICROCONTROLLERS
…………………………………………………..
Overview
Background
Microcontroller definition/Why ARDUINO's?
Types of ARDUINO microcontrollers
What To Get (Hardware and Software)
ARDUINO C
Electronic Circuits
Projects
Blinking light(s)
Reading inputs (variable resistors)
MICROCONTROLLER
A microcontroller is basically a small-scale
computer with generalized (and programmable)
inputs and outputs.
The inputs and outputs can be manipulated by and
can manipulate the physical world.
History Of ARDUINO
ARDUINO started in 2005 as a project for students at
the Interaction Design Institute Ivrea in Ivrea, Italy.
At that time program students used a "BASIC Stamp"
at a cost of $100, considered expensive for students.
Massimo Banzi, one of the founders, taught at Ivrea.
A hardware thesis was contributed for a wiring design
by Colombian student Hernando Barragan. After
the Wiring platform was complete, researchers
worked to make it lighter, less expensive, and
available to the open source community.
WHAT IS ARDUINO?
ARDUINO is an open-source electronics prototyping
platform based on flexible, easy-to-use hardware and
software. It's intended for artists, designers, hobbyists,
and anyone interested in creating interactive objects or
environments.(OFFICIAL DEFINITION)
ARDUINO is a tool for making computers that can sense
and control more of the physical world than your desktop
computer. It's an open-source physical computing
platform based on a simple microcontroller board, and a
development environment for writing software for the
board.
WHY ARDUINO?
Inexpensive - ARDUINO boards are relatively inexpensive
compared to other microcontroller platforms.
Cross-platform - The ARDUINO software runs on Windows,
Macintosh OSX, and Linux operating systems. Most
microcontroller systems are limited to Windows.
Simple, clear programming environment - The ARDUINO
programming environment is easy-to-use for beginners, yet
flexible enough for advanced users to take advantage of as well.
For teachers, it's conveniently based on the Processing
programming environment, so students learning to program in that
environment will be familiar with the look and feel of ARDUINO.
……………CONTINOUE
Open source and extensible software- The
ARDUINO software is published as open source
tools, available for extension by experienced
programmers. The language can be expanded
through C++ libraries, and people wanting to
understand the technical details can make the leap
from ARDUINO to the AVR C programming
language on which it's based. Similarly, you can add
AVR-C code directly into your ARDUINO
programs if you want to.
ARDUINO Types
Leonardo
Due
Micro
LilyPad
Esplora
Uno
NG
Leonardo
Compared to the Uno, a slight upgrade.
Built in USB compatibility
Presents to PC as a mouse or keyboard
Bugs?
Due
Much faster processor, many more pins
Operates on 3.3 volts
Similar to the Mega
Micro
When size matters: Micro, Nano, Mini
Includes all functionality of the Leonardo
Easily usable on a breadboard
LilyPad
LilyPad is popular for clothing-based projects.
Esplora
Game controller
Includes joystick, four buttons, linear potentiometer
(slider), microphone, light sensor, temperature
sensor, three-axis accelerometer.
Not the standard set of IO pins.
Mega
Compared to the Uno, the Mega:
Many more communication pins
More memory
Some interface hardware doesn't work
ARDUINO Uno
The pins are in three groups:
Invented in 2010
14 digital pins
6 analog pins
power
ARDUINO UNO
Use For Auto-Reset Function
Where to Start
Get an ARDUINO (starter kit)
Download the compiler
Connect the controller
Configure the compiler
Connect the circuit
Write the program
Get frustrated/Debug/Get it to work
Get excited and immediately start next project
(sleep is for wimps)
What to Get – My Recommendation
Numerous sample
sketches are included in
the compiler
Located under File,
Examples
Once a sketch is written,
it is uploaded by clicking
on File, Upload, or by
pressing <Ctrl> U
ARDUINO C is Derived from C++
LED Interfacing
Counters
Distance measurement
LCD displays
Serial Communication
Motor Interfacing
IN G
PAY
FO R
T O U
A N K N
TH T I O
E N
ATT