Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
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:
-Actual lecture content
- and Quizzes
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: Introduction|
The course content is roughly divided by the section topics.
Most sections have the following structure:
Hi, and thanks for taking this course :)
This video describes the recommended knowledge and material to take the most out of this course.
What You'll Learn
Your Own Projects
|Section 2: The Usual Microcontroller Architecture|
Some Real Block Diagrams
Some Kind of Parallelism
|Quiz 1||3 questions|
Test your undesrtanding of the basic microcontroller architecture.
|Section 3: Pin Multiplexing|
Some Example Microcontrollers
|Quiz 2||2 questions|
Test your knowledge on Pin Multiplexing
|Section 4: Development Tools|
Beginner vs Advanced Tools
Who the Target Audience is
Some Example Development Tools
Some Reasonable, Undeniable Remarks
|Section 5: LEDs 101|
LEDs 101: How to Turn LEDs On and Off
LEDs 101: Calculating the Series Resistance
LEDs 101: Multicolor LEDs
LEDs 101: Not Exactly Building Blocks
|Quiz 3||3 questions|
Test your knowledge on LEDs
|Section 6: Pulse Width Modulation|
PWM: Periodic Pulses
PWM: Pulse Width Modulation
Analog Signal Generation
|Quiz 4||9 questions|
Test your knowledge on PWM
Optional Project: Pulse Width Modulation
|Section 7: LED Display Scan Algorithm|
Controlling LED Arrays
7 Segment DisplaysPreview
The 7 Segment Hardware
The Decode Function
Numbers with a Decimal Point
|Section 8: Live Demo: 7-Segment Scan Algorithm with the BASIC Stamp 2|
The BASIC Stamp 2: The Good
The BASIC Stamp 2: The Bad
The BASIC Stamp Software
The Scan Function in PBASIC
The Decode Subroutine and Live Demo
|Section 9: Live Demo: 7-Segment Scan Algorithm with the Tiva C Launchpad|
The Tiva C Launchpad
The Launchpad Development Software
The Scan Function
The Decode Function and Live Demo
Why is it missing counts?
|Section 10: What's Wrong with This Algorithm?|
What's Wrong with This Algorithm
The Original Scan Algorithm
A Better Scan Algorithm
What about Interrupts?
Can we do Better?
|Section 11: Live Demo: A Better 7-Segment Scan Algorithm|
Variables and Memory
The Scan Subroutine
The Decode Subroutine
|Section 12: Big No-Noes: Digital Output|
Connecting an Output to the Supply LinesPreview
LEDs without a Resistor
Connecting Two Digital Outputs Together
Capacitors on Outputs
|Section 13: Digital Input Switches 101|
Transistor Transistor Logic
DPDT Switch Application
A Bad Idea: SPDT Switches
A Better Idea: Pull Resistors
Why Pull Ups are Preferred
Internal Pull Resistors in Microcontrollers
|Section 14: Bounce and How to Deal with it|
What is Bounce?
RC Filters for Debouncing a Switch
Monostable Switch Debouncer
Debouncer Integrated Circuits
Software Switch Debouncing
|Section 15: Keypad Scan Algorithm|
A Running Example
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.
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.