Course Highlights
  • Master the fundamentals of Arduino programming with C/C++
  • Build functioning circuits on a breadboard
  • Control sensors, robots, and Internet of Things (IoT) devices using Arduino
  • Write programs that perform basic math, light up LEDs, and control motors
  • Design circuits and write code for your own project
Skills you will learn!
Curriculum

12 Topics
Prologue
The Road Ahead
What is Arduino?
Using the Simulator (Tinkercad)
Required Parts (for Hands-On)
Installing the Arduino IDE (for Hands-On)
Getting to Blink
Challenge: Change Blink
Solution: Change Blink
Debugging with Serial
Challenge: Say Your Name over Serial
Solution: Say Your Name over Serial

33 Topics
Introduction: Programming in Arduino
Syntax Program Flow and Comments
Literals Variables and Data Types
Arithmetic Operators
Challenge: Count with a Variable
Solution: Count with a Variable
Conditional Statements
Challenge: Fizz
Solution: Fizz
Loops
Challenge: Countdown and Wait
Solution: Countdown and Wait
Writing Functions
Challenge: power()
Solution: power()
Scope
Challenge: Sum Digits
Solution: Sum Digits
Arrays and Strings
Challenge: Compute the Average
Solution: Compute the Average
Finding and Fixing Bugs
Challenge: Fix All the Bugs!
Solution: Fix All the Bugs!
Using the String Object
Challenge: L33t Sp34k
Solution: L33t Sp34k
Reading Serial Input
Challenge: Combine First and Last Name
Solution: Combine First and Last Name
Random Numbers
Challenge: Dice Roller
Solution: Dice Roller

21 Topics
Introduction: What is a Circuit?
Using a Breadboard
Reading a Schematic
Applying Ohm's Law
Challenge: Find the Right Resistor
Series vs. Parallel Resistors
Challenge: Compute Equivalent Resistance
Solution: Compute Equivalent Resistance
How to Read the Resistor Code
Challenge: Translate Some Resistors
Solution: Translate Some Resistors
Voltage Dividers
Challenge: Make 3V from 5V
Solution: Make 3V from 5V
Diodes
Challenge: Reverse Polarity Protection
Solution: Reverse Polarity Protection
LEDs
Challenge: Find the Limiting Resistor
Solution: Find the Limiting Resistor
Debugging Circuits

16 Topics
Introduction: What is GPIO?
Controlling LEDs
Challenge: FizzBlink
Solution: FizzBlink
Pulse Width Modulation
analogWrite()
Challenge: Color Mixer
Solution: Color Mixer
Using a Shift Register
Challenge: Simple Larson Scanner
Solution: Simple Larson Scanner
Including a Library
Using NeoPixels
Challenge: Fun Patterns
Solution: Fun Patterns
Project: Advanced Larson Scanner

23 Topics
Introduction: User Input
Switches
Challenge: LED Selector
Solution: LED Selector
Buttons
Challenge: Manual Blink
Solution: Manual Blink
External Pull-Up Resistor
Challenge: Toggle Button
Solution: Toggle Button
Internal Pull-Up Resistor
Challenge: Push to Count
Solution: Push to Count
Software Debouncing
Challenge: Multiple Buttons
Solution: Multiple Buttons
Reading Analog Voltage
Challenge: Voltage Divider Checker
Answer: Voltage Divider Checker
Potentiometer
Challenge: Fade Knob
Solution: Fade Knob
Project: Mood Lighting Controller

8 Topics
Introduction: Displays and Sounds
Character LCD
Challenge: Move a Character
Solution: Move a Character
Buzzers and Tones
Challenge: Play a Song
Solution: Play a Song
Project: Jukebox

14 Topics
Introduction: Why Sensors?
Light Sensor
Challenge: Night Light
Solution: Night Light
Temperature Sensor
Challenge: Thermometer
Solution: Thermometer
Ultrasonic Distance Sensor
Challenge: Digital Theremin
Solution: Digital Theremin
Accelerometer
Challenge: Which Way is Up?
Solution: Which Way is Up?
Project: Burglar Alarm

14 Topics
Introduction: Robots!
Transistors as Switches
Challenge: LEDs in Parallel
Solution: LEDs in Parallel
DC Motor
Challenge: Speed Controller
Solution: Speed Controller
H-Bridge
Challenge: Two Motors
Solution: Two Motors
Servo Motor
Challenge: Light Gauge
Solution: Light Gauge
Project: Mousebot

13 Topics
Introduction: The Internet
IMPORTANT: Tinkercad simulator does not work with this section
UART
Challenge: Echo
Solution: Echo
Connecting to WiFi
Challenge: Print IP Address
Solution: Print IP Address
GET a Web Page
Challenge: Print Parts of a Web Page
Solution: Print Parts of a Web Page
JSON Primer
Project: Local Weather

16 Topics
Introduction: What is IoT?
Posting to ThingSpeak
Challenge: Temperature Logger
Solution: Temperature Logger
Retrieving Data from ThingSpeak
Challenge: Clear a Channel
Solution: Clear a Channel
Intro to IFTTT
Challenge: Make Your Own Applet
Solution: Make Your Own Applet
Making Requests to IFTTT
Passing Arguments to IFTTT
Challenge: IoT Button
Solution: IoT Button
IFTTT to ThingSpeak
Project: Internet-Controlled Light Switch

4 Topics
Planning and Building a Project
Finding Parts and Documentation
Closing Remarks
Final Project: Make Something!

  Write a Review

Arduino Programming and Hardware Fundamentals with Hackster

Go to Paid Course