Workshop Lab: Arduino
Workshop Lab: Arduino
Workshop Lab: Arduino
Al-Ayen University
Technical college of engineering
Medical device technology engineering
Workshop Lab.
Arduino
2022-2021
1|Page
What Is Arduino
Is an open-source microcontroller which can be easily programmed, erased and
reprogrammed at any instant of time. Introduced in 2005 the Arduino platform was designed
to provide an inexpensive and easy way for hobbyists, students and professionals to create
devices that interact with their environment using sensors and actuators.
It is also capable of receiving and sending information over the internet with the help of various
Arduino shields.
Arduino uses a hardware known as the Arduino development board and software for
developing the code known as the Arduino IDE (Integrated Development Environment). Built
up with the 8-bit Atmel AVR microcontroller's that are manufactured by Atmel or a 32-bit
Atmel ARM, these microcontrollers can be programmed easily using the C or C++ language
in the Arduino IDE.
Figure. 1 Arduino
2|Page
Need for Arduino
1) Active User Community: A group of people using a similar product can hold posted
message conversations and share their experiences or solve the problems of the other users in
the communities with their own experiences.
2) Growth of Arduino: Arduino was developed with intent to provide an economical and
trouble-free way for hobbyists, students and professionals to build devices that interact with
their situation using sensors and actuators. This makes it perfect for newcomers to get started
quickly.
3) Inexpensive Hardware: Since Arduino is an open-source platform the software is not
purchased and only the cost of buying the board or its parts is incurred, thus making it very
cheap. The hardware designs are also available online for free from its official website.
4) Arduino Board as a Programmer: To make Arduino board function easy and also
making it available everywhere these boards come with a USB cable for power requirements
as well as functioning as a programmer.
5) Multi-platform Environment: The Arduino IDE is capable of running on a number of
platforms including Microsoft, Linux and Mac OS X making the user community even larger.
1) Arduino Ethernet shield: It that allows an Arduino board to connect to the internet
using the Ethernet library and to read and write an SD card using the SD library.
3|Page
2) Arduino Wireless shield: It allows your Arduino board to communicate wirelessly
using Zigbee.
3) Arduino Motor Driver Shield: It allows your Arduino boards to interface with driver
of a motor etc.
4|Page
Here is a list of the different types of Arduino Boards available along with its microcontroller
type, crystal frequency and availabilities of auto reset facility:
Table .1 Arduino Boards
• Hardware
• Software
Hardware
The Arduino Development Board consists of many components that together makes it work.
Here are some of those main component blocks that help in its functioning:
• Microcontroller: This is the heart of the development board, which works as a mini
computer and can receive as well as send information or command to the peripheral devices
connected to it. The microcontroller used differs from board to board; it also has its own
various specifications.
• External Power Supply: This power supply is used to power the Arduino development
board with a regulated voltage ranging from 9 – 12 volts.
• USB plug: This plug is a very important port in this board. It is used to upload (burn) a
program to the microcontroller using a USB cable. It also has a regulated power of 5V
which also powers the Arduino board in cases when the External Power Supply is absent.
• Internal Programmer: The developed software code can be uploaded to the
microcontroller via USB port, without an external programmer.
• Reset button: This button is present on the board and can be used to resets the Arduino
microcontroller.
5|Page
• Analog Pins: There are some analog input pins ranging from A0 – A7 (typical). These pins
are used for the analog input / output. The no. of analog pins also varies from board to
board.
• Digital I/O Pins: There are some digital input pins also ranging from 2 to 16 (typical).
These pins are used for the digital input / output. The no. of these digital pins also varies
from board to board.
• Power and GND Pins: There are pins on the development board that provide 3.3, 5 volts
and ground through them
Software
The program code written for Arduino is known as a sketch. The software used for developing
such sketches for an Arduino is commonly known as the Arduino IDE. This IDE contains the
following parts in it:
• Text editor: Is where the simplified code can be written using a simplified version of C++
programming language.
• Message area: It displays error and also gives feedback on saving and exporting the code.
• Text: The console displays text output by the Arduino environment including complete
error messages and other information
• Console Toolbar: This toolbar contains various buttons like Verify, Upload, New, Open,
Save and Serial Monitor. On the bottom right-hand corner of the window there displays the
Development Board and the Serial Port in use.
6|Page
Features of Arduino IDE
• The project file or the sketches for a project are saved with the file extension .ino
• Features such as cut / copy / paste are supported in this IDE.
• There also is a facility for finding a particular word and replacing it with another by pressing
the Ctrl + F buttons on the keyboard
• The most basic part or the skeleton of all Arduino code will have two functions
Programming Basics
Now we’ll discuss about the programming techniques of Arduino sketch in the Arduino IDE.
There are two main parts every sketch will always have, they are:
• void setup ()
• void loop ()
1- void setup():
This is the first routine that begins when the Arduino starts functioning. This function is execute
donly once throughout the entire program functioning.
The setup function contains the initialization of every pin we intend use in our project for input
or output. Here is an example of how it should be written:
7|Page
void setup()
{
pinMode(pin, INPUT);
}
void setup()
{
Serial.begin(9600);
}
It also contains the initialization of the Serial Monitor. A serial monitor is used to know the
data that are being sent serially to any peripheral device.
Before using any variables for programming it is necessary to define them above the function
“void setup()”
2- void loop():
This function is the next important function in the Sketch. It consists of that part of the code
that needs to be continuously executed unlike the part of the code written in the setup function.
Similarly, if there is a need for delay in the sketch then there is another function that creates a
delay in the execution of the code
delay(1000) // Delay of one second
This creates a delay in the execution of the program for the time period specified (in
milliseconds).
Using the above two function lets create a sketch for blinking a led.
References
[1] ARDUINO.CC, “Arduino – Introduction”, 2015 [Online] Available:
http://arduino.cc/en/Guide/Introduction. [Accessed: 25- Feb - 2015].
8|Page