SlideShare a Scribd company logo
With this class, you will begin learning
how to create custom software defined
hardware devices to build your own
electronic devices
Brought To You By
Your Local Make
Space
www.MakeSpace.io
Class Instructor
Joseph Sanchez
6/24/2014
build cool robots!
make an automated beverage dispenser
build an automated watering
system for plants
Build a digital harp that uses lasers as strings
Wouldn’t those type of abilities
make you happy?
 A microcontroller (sometimes abbreviated
µC, uC or MCU) is a small computer on a
single integrated circuit containing a
processor core, memory, and programmable
input/output peripherals. Program memory
that is also often included on chip, as well as
a typically small amount of RAM.
 Arduino is an open-source electronics
prototyping platform based on flexible, easy-
to-use hardware and software. It's intended
for artists, designers, hobbyists .
 There are a plethora of options for
development board to use. Including:
Arduino Raspberry Pi Beagle
……And Many More!
Arduino
The internal voltage
reference options may not
be used if an external
reference voltage is being
applied to the AREF pin.
Arduino
TX/RX
Inputs/outputs
are next!
Rx = (received data)
Tx = (transmit data)
These ports input and
output serial data
This will allow you to do things
like connect two Arduinos to
communicate with each other!
So what do we
plug into our
Input and outputs
on the arduino?
GADGETS!
 You have a variety of already built sensors, motors, and
other electrical devices to use in combination with your
Arduino
 These hardware devices are similar to your five senses.
These hardware devices our devices: See, feel, manipulate
and hear our surroundings.
 The more information you know about the availability of
these devices, the better you can create a solution for the
task you are trying to achieve with your Arduino.
L.E.D which stands for light emitting diode. Is a diode that lights
up when current is applied to it.
Resistors come in a variety of sizes
and they are used to reduce current
flow, and, at the same time, act to
lower voltage levels within circuits.
Schematic
Representations
of Resistors
Relays are devices which allow us to
complete a circuit or disconnect a
circuit based on an input voltage.
Based on the rating of the relay you
can switch a variety of voltages and
amperages.
Relays could be used to :
-Turn on water pumps
-Turn off lights or appliances in your
house
Electric motors spin when voltage is
applied.
If you reverse the power in (most)
motors then the spin direction will
reverse.
Take for example our 3D printers
which require to go one way and the
alternative direction.
Instead of constantly spinning, servo
motors will move based on an input.
Often times servo motors will turn
based on degrees.
This allows you to turn the top 90
degrees, 180 and then back or
anything in-between
Photocells are variable resistors
where the resistance decreases with
the increasing amount of light you
shine onto it.
A great example of using a photocell
in a “real life” application would be
laser trip wires. In order to achieve
this, we would place a laser towards
the photocell and if something
comes in between the two, the
resistance increases and we can
perform an action like playing an
alarm sound through a speaker.
Humidity sensors are as they sound.
They detect the levels of humidity in
the area and depending on the level
of moisture in the air, a value
decreases or increases respectively.
Gyroscopes which have been ever
increasing in their popularity due to
smart phones and personal drones,
allow us to sense the tilt and
rotation of a device.
The simple answer is yes! And this class will make sure you are
successful in understanding how to program (on Arduino).
We will be using the an IDE
specifically made for
programming our Adruino
IDE stands for integrated
development environment.
This is where we will write the
code that is stored and ran on our
microcontroller.
Void setup() {
}
Before the program starts, anything that is placed
between the void setup brackets will be loaded
and processed.
Void setup() {
}
Before the program starts, anything that is placed
between the void setup brackets will be loaded
and processed.
Void LOOP() {
}
The void loop is where your main program lives.
It is aptly named loop because that’s exactly
what happens when it reaches the end of the
code – it will LOOP and start over .
Void setup() {
}
Before the program starts, anything that is placed
between the void setup brackets will be loaded
and processed.
Void LOOP() {
}
The void loop is where your main program lives.
It is aptly named loop because that’s exactly
what happens when it reaches the end of the
code – it will LOOP and start over .
Before Load Setup we can call in Libraries which
are pre-written code to help us with what we are
trying to achieve.
#SD.H
Void setup() {
}
Before the program starts, anything that is placed
between the void setup brackets will be loaded
and processed.
Void LOOP() {
}
The void loop is where your main program lives.
It is aptly named loop because that’s exactly
what happens when it reaches the end of the
code – it will LOOP and start over .
Before Load Setup we can call in Libraries which
are pre-written code to help us with what we are
trying to achieve.
#SD.H
After the loop we can program functions
Functions are ways to migrate code outside of the
program and then you call them independently
into the code when needed.
To Call Our Function we would simply write:
blinkLED();
void blinkLED() {
digitalWrite(8,High);
delay(1000);
digitalWrite(8,LOW);
delay(1000);
}
Our first program will be a blinking LED. We will turn one led on and
then we will turn another LED on. Since our program loops it will repeat
and we should see the LEDs take turns turning on and off.
To get started we open our IDE.
And put in our void setup() { }
and
void loop(){ }
Add // after each ending curly bracket and put what these brackets are
closing. So we will write ‘//ends setup’ and
‘//ends loop’.
This will help us keep track of our code as the program grows.
Microcontroller Programming & Hardware Introduction
Microcontroller Programming & Hardware Introduction
Microcontroller Programming & Hardware Introduction
Microcontroller Programming & Hardware Introduction

More Related Content

What's hot

Programming with arduino
Programming with arduinoProgramming with arduino
Programming with arduino
Makers of India
 
IOTC08 The Arduino Platform
IOTC08 The Arduino PlatformIOTC08 The Arduino Platform
IOTC08 The Arduino Platform
Eoin Brazil
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.
Govind Jha
 
Ardui no
Ardui no Ardui no
Ardui no
Amol Sakhalkar
 
Arduino 101
Arduino 101Arduino 101
Arduino 101
Giorgio Aresu
 
Arduino for Beginners
Arduino for BeginnersArduino for Beginners
Arduino for Beginners
Sarwan Singh
 
Arduino slides
Arduino slidesArduino slides
Arduino slides
sdcharle
 
To count number of external events using LabVIEW
To count number of external events using LabVIEWTo count number of external events using LabVIEW
To count number of external events using LabVIEW
Ankita Tiwari
 
Interface stepper motor through Arduino using LABVIEW.
Interface stepper motor through Arduino using LABVIEW.Interface stepper motor through Arduino using LABVIEW.
Interface stepper motor through Arduino using LABVIEW.
Ankita Tiwari
 
Arduino Slides With Neopixels
Arduino Slides With NeopixelsArduino Slides With Neopixels
Arduino Slides With Neopixels
sdcharle
 
Embedded system introduction - Arduino Course
Embedded system introduction - Arduino CourseEmbedded system introduction - Arduino Course
Embedded system introduction - Arduino Course
Elaf A.Saeed
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the ArduinoWingston
 
Embedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontrollerEmbedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontroller
Arun Kumar
 
Arduino basics
Arduino basicsArduino basics
Arduino basics
Eueung Mulyana
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino Programming
James Lewis
 
NSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and ArduinoNSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and Arduino
Brian Huang
 
To study the relay operation from digital control signal using LabVIEW.
To study the relay operation from digital control signal using LabVIEW.To study the relay operation from digital control signal using LabVIEW.
To study the relay operation from digital control signal using LabVIEW.
Ankita Tiwari
 

What's hot (20)

Programming with arduino
Programming with arduinoProgramming with arduino
Programming with arduino
 
IOTC08 The Arduino Platform
IOTC08 The Arduino PlatformIOTC08 The Arduino Platform
IOTC08 The Arduino Platform
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.
 
Ardui no
Ardui no Ardui no
Ardui no
 
Arduino 101
Arduino 101Arduino 101
Arduino 101
 
Arduino for Beginners
Arduino for BeginnersArduino for Beginners
Arduino for Beginners
 
Arduino slides
Arduino slidesArduino slides
Arduino slides
 
To count number of external events using LabVIEW
To count number of external events using LabVIEWTo count number of external events using LabVIEW
To count number of external events using LabVIEW
 
Interface stepper motor through Arduino using LABVIEW.
Interface stepper motor through Arduino using LABVIEW.Interface stepper motor through Arduino using LABVIEW.
Interface stepper motor through Arduino using LABVIEW.
 
Arduino Slides With Neopixels
Arduino Slides With NeopixelsArduino Slides With Neopixels
Arduino Slides With Neopixels
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Embedded system introduction - Arduino Course
Embedded system introduction - Arduino CourseEmbedded system introduction - Arduino Course
Embedded system introduction - Arduino Course
 
Lab2ppt
Lab2pptLab2ppt
Lab2ppt
 
Arduino
ArduinoArduino
Arduino
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the Arduino
 
Embedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontrollerEmbedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontroller
 
Arduino basics
Arduino basicsArduino basics
Arduino basics
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino Programming
 
NSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and ArduinoNSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and Arduino
 
To study the relay operation from digital control signal using LabVIEW.
To study the relay operation from digital control signal using LabVIEW.To study the relay operation from digital control signal using LabVIEW.
To study the relay operation from digital control signal using LabVIEW.
 

Viewers also liked

Development platforms for startups by shawn gosh at guru program spring 2014
Development platforms for startups by shawn gosh at guru program spring 2014Development platforms for startups by shawn gosh at guru program spring 2014
Development platforms for startups by shawn gosh at guru program spring 2014
TechMeetups
 
Aurdidino1 anurag preetirajesh-sgsits
Aurdidino1  anurag preetirajesh-sgsitsAurdidino1  anurag preetirajesh-sgsits
Aurdidino1 anurag preetirajesh-sgsits
anurag278
 
Analog, IO Test Chip Validation
Analog,  IO Test Chip  ValidationAnalog,  IO Test Chip  Validation
Analog, IO Test Chip ValidationSMIT A. PATEL
 
Embedded Systems: Lecture 9: The Pi Control ARM
Embedded Systems: Lecture 9: The Pi Control ARMEmbedded Systems: Lecture 9: The Pi Control ARM
Embedded Systems: Lecture 9: The Pi Control ARM
Ahmed El-Arabawy
 
Microprocessor based system design
Microprocessor based system designMicroprocessor based system design
Microprocessor based system design
THANDAIAH PRABU
 
Plc (analog and special io)
Plc (analog and special io)Plc (analog and special io)
Plc (analog and special io)
Mohamed A Hakim
 
Mobile Development Platforms
Mobile Development PlatformsMobile Development Platforms
Mobile Development Platforms
Andri Yadi
 
Analog Layout design
Analog Layout design Analog Layout design
Analog Layout design
slpinjare
 
DAC-digital to analog converter
DAC-digital to analog converterDAC-digital to analog converter
DAC-digital to analog converter
Shazid Reaj
 

Viewers also liked (9)

Development platforms for startups by shawn gosh at guru program spring 2014
Development platforms for startups by shawn gosh at guru program spring 2014Development platforms for startups by shawn gosh at guru program spring 2014
Development platforms for startups by shawn gosh at guru program spring 2014
 
Aurdidino1 anurag preetirajesh-sgsits
Aurdidino1  anurag preetirajesh-sgsitsAurdidino1  anurag preetirajesh-sgsits
Aurdidino1 anurag preetirajesh-sgsits
 
Analog, IO Test Chip Validation
Analog,  IO Test Chip  ValidationAnalog,  IO Test Chip  Validation
Analog, IO Test Chip Validation
 
Embedded Systems: Lecture 9: The Pi Control ARM
Embedded Systems: Lecture 9: The Pi Control ARMEmbedded Systems: Lecture 9: The Pi Control ARM
Embedded Systems: Lecture 9: The Pi Control ARM
 
Microprocessor based system design
Microprocessor based system designMicroprocessor based system design
Microprocessor based system design
 
Plc (analog and special io)
Plc (analog and special io)Plc (analog and special io)
Plc (analog and special io)
 
Mobile Development Platforms
Mobile Development PlatformsMobile Development Platforms
Mobile Development Platforms
 
Analog Layout design
Analog Layout design Analog Layout design
Analog Layout design
 
DAC-digital to analog converter
DAC-digital to analog converterDAC-digital to analog converter
DAC-digital to analog converter
 

Similar to Microcontroller Programming & Hardware Introduction

Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docx
Ajay578679
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
avikdhupar
 
What is arduino
What is arduinoWhat is arduino
What is arduino
vivek kumar
 
Ch_2_8,9,10.pptx
Ch_2_8,9,10.pptxCh_2_8,9,10.pptx
Ch_2_8,9,10.pptx
yosikit826
 
Getting startedwitharduino ch04
Getting startedwitharduino ch04Getting startedwitharduino ch04
Getting startedwitharduino ch04Anil Yadav
 
Arduino Workshop Slides
Arduino Workshop SlidesArduino Workshop Slides
Arduino Workshop Slides
mkarlin14
 
Lab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docxLab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docx
RashidFaridChishti
 
Report on arduino
Report on arduinoReport on arduino
Report on arduino
Ravi Phadtare
 
Hello Arduino.
Hello Arduino.Hello Arduino.
Hello Arduino.
mkontopo
 
Arduino comic v0004
Arduino comic v0004Arduino comic v0004
Arduino comic v0004
DO!MAKERS
 
Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011
ΚΔΑΠ Δήμου Θέρμης
 
arduino
arduinoarduino
arduino
murbz
 
Lab 2_ Programming an Arduino.pdf
Lab 2_ Programming an Arduino.pdfLab 2_ Programming an Arduino.pdf
Lab 2_ Programming an Arduino.pdf
ssuser0e9cc4
 
Arduino IDE
Arduino IDE Arduino IDE
Arduino IDE
Mrunal Deshkar
 
Introduction of Arduino Uno
Introduction of Arduino UnoIntroduction of Arduino Uno
Introduction of Arduino Uno
Md. Nahidul Islam
 
Introduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerIntroduction to Arduino Microcontroller
Introduction to Arduino Microcontroller
Mujahid Hussain
 
Arduino: Arduino starter kit
Arduino: Arduino starter kitArduino: Arduino starter kit
Arduino: Arduino starter kit
SANTIAGO PABLO ALBERTO
 
Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced robotics
Shubham Bhattacharya
 
Arduino اردوينو
Arduino اردوينوArduino اردوينو
Arduino اردوينو
salih mahmod
 

Similar to Microcontroller Programming & Hardware Introduction (20)

Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docx
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
 
What is arduino
What is arduinoWhat is arduino
What is arduino
 
Ch_2_8,9,10.pptx
Ch_2_8,9,10.pptxCh_2_8,9,10.pptx
Ch_2_8,9,10.pptx
 
Getting startedwitharduino ch04
Getting startedwitharduino ch04Getting startedwitharduino ch04
Getting startedwitharduino ch04
 
Arduino Workshop Slides
Arduino Workshop SlidesArduino Workshop Slides
Arduino Workshop Slides
 
Lab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docxLab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docx
 
Report on arduino
Report on arduinoReport on arduino
Report on arduino
 
Hello Arduino.
Hello Arduino.Hello Arduino.
Hello Arduino.
 
Arduino comic v0004
Arduino comic v0004Arduino comic v0004
Arduino comic v0004
 
Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011
 
arduino
arduinoarduino
arduino
 
Lab 2_ Programming an Arduino.pdf
Lab 2_ Programming an Arduino.pdfLab 2_ Programming an Arduino.pdf
Lab 2_ Programming an Arduino.pdf
 
Arduino IDE
Arduino IDE Arduino IDE
Arduino IDE
 
Arduino Programming Basic
Arduino Programming BasicArduino Programming Basic
Arduino Programming Basic
 
Introduction of Arduino Uno
Introduction of Arduino UnoIntroduction of Arduino Uno
Introduction of Arduino Uno
 
Introduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerIntroduction to Arduino Microcontroller
Introduction to Arduino Microcontroller
 
Arduino: Arduino starter kit
Arduino: Arduino starter kitArduino: Arduino starter kit
Arduino: Arduino starter kit
 
Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced robotics
 
Arduino اردوينو
Arduino اردوينوArduino اردوينو
Arduino اردوينو
 

Recently uploaded

Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 

Recently uploaded (20)

Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 

Microcontroller Programming & Hardware Introduction

  • 1. With this class, you will begin learning how to create custom software defined hardware devices to build your own electronic devices Brought To You By Your Local Make Space www.MakeSpace.io Class Instructor Joseph Sanchez 6/24/2014
  • 2.
  • 4. make an automated beverage dispenser
  • 5. build an automated watering system for plants
  • 6. Build a digital harp that uses lasers as strings
  • 7. Wouldn’t those type of abilities make you happy?
  • 8.
  • 9.  A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory that is also often included on chip, as well as a typically small amount of RAM.
  • 10.  Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware and software. It's intended for artists, designers, hobbyists .
  • 11.  There are a plethora of options for development board to use. Including: Arduino Raspberry Pi Beagle ……And Many More!
  • 13. The internal voltage reference options may not be used if an external reference voltage is being applied to the AREF pin. Arduino
  • 15. Rx = (received data) Tx = (transmit data) These ports input and output serial data This will allow you to do things like connect two Arduinos to communicate with each other!
  • 16. So what do we plug into our Input and outputs on the arduino? GADGETS!
  • 17.  You have a variety of already built sensors, motors, and other electrical devices to use in combination with your Arduino  These hardware devices are similar to your five senses. These hardware devices our devices: See, feel, manipulate and hear our surroundings.  The more information you know about the availability of these devices, the better you can create a solution for the task you are trying to achieve with your Arduino.
  • 18.
  • 19. L.E.D which stands for light emitting diode. Is a diode that lights up when current is applied to it.
  • 20. Resistors come in a variety of sizes and they are used to reduce current flow, and, at the same time, act to lower voltage levels within circuits. Schematic Representations of Resistors
  • 21. Relays are devices which allow us to complete a circuit or disconnect a circuit based on an input voltage. Based on the rating of the relay you can switch a variety of voltages and amperages. Relays could be used to : -Turn on water pumps -Turn off lights or appliances in your house
  • 22. Electric motors spin when voltage is applied. If you reverse the power in (most) motors then the spin direction will reverse. Take for example our 3D printers which require to go one way and the alternative direction.
  • 23. Instead of constantly spinning, servo motors will move based on an input. Often times servo motors will turn based on degrees. This allows you to turn the top 90 degrees, 180 and then back or anything in-between
  • 24. Photocells are variable resistors where the resistance decreases with the increasing amount of light you shine onto it. A great example of using a photocell in a “real life” application would be laser trip wires. In order to achieve this, we would place a laser towards the photocell and if something comes in between the two, the resistance increases and we can perform an action like playing an alarm sound through a speaker.
  • 25. Humidity sensors are as they sound. They detect the levels of humidity in the area and depending on the level of moisture in the air, a value decreases or increases respectively.
  • 26. Gyroscopes which have been ever increasing in their popularity due to smart phones and personal drones, allow us to sense the tilt and rotation of a device.
  • 27.
  • 28.
  • 29. The simple answer is yes! And this class will make sure you are successful in understanding how to program (on Arduino).
  • 30. We will be using the an IDE specifically made for programming our Adruino IDE stands for integrated development environment. This is where we will write the code that is stored and ran on our microcontroller.
  • 31. Void setup() { } Before the program starts, anything that is placed between the void setup brackets will be loaded and processed.
  • 32. Void setup() { } Before the program starts, anything that is placed between the void setup brackets will be loaded and processed. Void LOOP() { } The void loop is where your main program lives. It is aptly named loop because that’s exactly what happens when it reaches the end of the code – it will LOOP and start over .
  • 33. Void setup() { } Before the program starts, anything that is placed between the void setup brackets will be loaded and processed. Void LOOP() { } The void loop is where your main program lives. It is aptly named loop because that’s exactly what happens when it reaches the end of the code – it will LOOP and start over . Before Load Setup we can call in Libraries which are pre-written code to help us with what we are trying to achieve. #SD.H
  • 34. Void setup() { } Before the program starts, anything that is placed between the void setup brackets will be loaded and processed. Void LOOP() { } The void loop is where your main program lives. It is aptly named loop because that’s exactly what happens when it reaches the end of the code – it will LOOP and start over . Before Load Setup we can call in Libraries which are pre-written code to help us with what we are trying to achieve. #SD.H After the loop we can program functions Functions are ways to migrate code outside of the program and then you call them independently into the code when needed. To Call Our Function we would simply write: blinkLED(); void blinkLED() { digitalWrite(8,High); delay(1000); digitalWrite(8,LOW); delay(1000); }
  • 35.
  • 36. Our first program will be a blinking LED. We will turn one led on and then we will turn another LED on. Since our program loops it will repeat and we should see the LEDs take turns turning on and off. To get started we open our IDE. And put in our void setup() { } and void loop(){ } Add // after each ending curly bracket and put what these brackets are closing. So we will write ‘//ends setup’ and ‘//ends loop’. This will help us keep track of our code as the program grows.