Beyond Arduino: Electronics for Developers & Makers - (GPIO)

Learn beyond the basics of electronics and hardware design for your embedded hardware or IoT projects.
4.4 (19 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
453 students enrolled
$19
$200
90% off
Take This Course
  • Lectures 110
  • Length 6 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 9/2016 English

Course Description

In this course you will learn that there's more to life than the Arduino Uno and that there's probably a better way to do what you've been doing with microcontrollers. Yes, Arduino is an excellent platform to get you started, but you will learn that Arduino is not part of the day to day electronics you use like your TV, microwave oven or car dashboard. 

Do you know how the supporting hardware in a microcontroller work? Well, you will learn that here. Also as a bonus you will learn how the functions in dumbed-down libraries work. 

This is not exactly a hands-on course, not if you don't want it to be. There are no promises on the projects you’ll make because I won’t force you to build something you didn’t choose to. However, I strongly recommend that you code along. Several microcontroller development platforms are showcased, but you should follow the examples with your own microcontroller.

You should know that most lectures have the following elements:

-Recommended Material

-“Recall” Slide

-Actual lecture content

-Live Demo

- and Quizzes

What are the requirements?

  • A development platform is recommended to get the most out of this course. Anything from Arduino to Raspberry Pi to the BASIC Stamp, TI Launchpad or NXP Freedom board will do. Even stand alone microcontrollers such as NXP s08, microchip PIC or TI MSP430 will do.
  • Some actuators and sensors, not necessarily designed to work with your development platform. Anything you'd like to experiment with, such as RC servos, LCD displays, temperature sensors, motors, accelerometers, optical encoders, potentiometers and so on.
  • Some basic knowledge of how to run your code in your development platform is assumed.
  • Some basic knowledge on electronics is assumed, such as Ohm's Law, Series and Parallel Circuits, Voltage, Current, and so on

What am I going to get from this course?

  • Design the hardware around your IoT applications
  • Design add-on circuitry for popular development boards such as Arduino and Raspberry Pi.
  • Understand how a microcontroller interacts with its supporting hardware

What is the target audience?

  • Makers who have some experience with hardware and would like to learn how these circuits work with as few equations as possible.
  • Coders who were introduced to hardware through some development board popular in the Maker movement, such as the Raspberry Pi or Arduino (e.g. blinking an LED, reading push button input)
  • Beginners who would rather skip the boring theory and math, and dive into fun hands- on applications that move, light up and make sounds instead.
  • This course is not for advanced hardware designers or electrical engineers.
  • This is not an introductory Microcontroller course. You will not learn to use an Arduino board by taking this course.
  • This is not a theoretical electronics course. Some of the basics are covered but we won't study differential equations, transforms, or transfer functions.
  • This is not a programming introductory course. You won't learn C, python or Java by taking this course.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introduction
01:14

The course content is roughly divided by the section topics.

Most sections have the following structure:

  • A Recommended Material lecture with the things you need to know before you start the section.
  • A dedicated slide to remind you of the key concepts we're about to use.
  • The actual content of the lesson.
  • A wrap up slide with the concepts you have learned in the lesson.
01:19

Hi, and thanks for taking this course :)

01:18

This video describes the recommended knowledge and material to take the most out of this course.

What You'll Learn
01:06
Your Own Projects
01:11
Content Distribution
00:54
Section 2: The Usual Microcontroller Architecture
Recommended Material
Article
What's inside
02:31
Operational Modules
Preview
02:47
Some Real Block Diagrams
03:33
Some Kind of Parallelism
03:14
3 questions

Test your undesrtanding of the basic microcontroller architecture.

Section 3: Pin Multiplexing
Some Example Microcontrollers
05:14
Multiplexers
Preview
04:06
2 questions

Test your knowledge on Pin Multiplexing

Section 4: Development Tools
Beginner vs Advanced Tools
07:06
Who the Target Audience is
02:55
Some Example Development Tools
02:51
Some Reasonable, Undeniable Remarks
01:21
Section 5: LEDs 101
Recommended Material
Article
LEDs 101: How to Turn LEDs On and Off
05:51
LEDs 101: Calculating the Series Resistance
06:11
LEDs 101: Multicolor LEDs
07:54
LEDs 101: Not Exactly Building Blocks
03:56
3 questions

Test your knowledge on LEDs

Section 6: Pulse Width Modulation
Recommended Material
Article
PWM: Periodic Pulses
04:15
Rectangular Signals
01:38
PWM: Pulse Width Modulation
03:42
Power Control
02:27
Analog Signal Generation
03:19
9 questions

Test your knowledge on PWM

Optional Project: Pulse Width Modulation
Article
Section 7: LED Display Scan Algorithm
Recommended Material
Article
LED Arrays
06:05
Controlling LED Arrays
02:48
7 Segment Displays
Preview
04:42
The 7 Segment Hardware
05:23
The Algorithm
06:03
The Decode Function
04:39
Numbers with a Decimal Point
05:29
Section 8: Live Demo: 7-Segment Scan Algorithm with the BASIC Stamp 2
The BASIC Stamp 2: The Good
05:03
The BASIC Stamp 2: The Bad
07:27
The Hardware
02:41
The BASIC Stamp Software
05:45
The Scan Function in PBASIC
07:28
The Decode Subroutine and Live Demo
03:17
Section 9: Live Demo: 7-Segment Scan Algorithm with the Tiva C Launchpad
The Hardware
03:21
The Tiva C Launchpad
02:10
The Launchpad Development Software
04:39
The Scan Function
05:06
The Decode Function and Live Demo
03:05
Why is it missing counts?
05:09
Section 10: What's Wrong with This Algorithm?
What's Wrong with This Algorithm
02:21
The Original Scan Algorithm
03:53
A Better Scan Algorithm
05:03
What about Interrupts?
04:13
Can we do Better?
04:00
Section 11: Live Demo: A Better 7-Segment Scan Algorithm
Variables and Memory
01:26
The Scan Subroutine
01:32
The Decode Subroutine
02:04
The Demo
02:05
Implementation Comparison
00:39
Section 12: Big No-Noes: Digital Output
Connecting an Output to the Supply Lines
Preview
05:01
LEDs without a Resistor
02:15
Connecting Two Digital Outputs Together
01:57
Capacitors on Outputs
02:13
Overloading Outputs
02:25
Section 13: Digital Input Switches 101
Logic Families
Preview
07:43
Transistor Transistor Logic
04:11
CMOS Logic
04:12
Switches
03:50
DPDT Switch Application
02:16
A Bad Idea: SPDT Switches
01:48
A Better Idea: Pull Resistors
02:54
Why Pull Ups are Preferred
01:50
Internal Pull Resistors in Microcontrollers
02:40
Section 14: Bounce and How to Deal with it
What is Bounce?
05:39
RC Filters for Debouncing a Switch
06:16
Monostable Switch Debouncer
03:26
Debouncer Integrated Circuits
03:23
Software Switch Debouncing
04:00
Section 15: Keypad Scan Algorithm
Matrix Keypads
03:51
The Algorithm
03:26
A Running Example
02:53

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Eduardo Corpeño, Electrical & Computer Engineer

I'm an Electrical and Computer Engineer. I've been teaching Electrical and Computer Engineering at undergraduate and graduate for over 10 years now. 

I love hardware, software and teaching.

Among the subjects in the classes I teach, my strongest are Electrical Circuit Theory, Electronic Devices, Digital Design, Computer Architecture, Microcontrollers, Assembly and C Programming for Embedded Applications, Hardware Description Language, Field Programmable Gate Arrays, Artificial Intelligence, Printed Circuit Board Design and Real Time Operating Systems.

Along with two of my finest colleagues, I created one of the first MOOCs in spanish, an introduction to the Raspberry Pi. We wrote a conference paper on the outcome of this very successful course. 

I'm currently taking the Online Master of Science in Computer Science at Georgia Tech and I'm loving every minute of it.

Instructor Biography

Marissa Siliezar, Telecom Engineer

Telecom Engineer passionate about new technologies and my family. The general background I have revolves around value added services in mobile services and also product marketing for a major brand of mobile devices. When it comes to hardware design I came across various developer platforms when designing my bachelor's thesis. After 6+ years of experience I became a mommy to my dear Ignacio and a stay at home mommy.


Ready to start learning?
Take This Course