Crash Course Arduino and Microcontroller Development
Crash Course Arduino and Microcontroller Development, available at $54.99, has an average rating of 4.9, with 128 lectures, based on 291 reviews, and has 2862 subscribers.
You will learn about Learn about microcontrollers, microprocessors and their internal architecture including how instructions are executed, ALUs, Buses, MMUs, DMA and more. Master embedded engineering theory and pratice from blinking an LED to building complex systems with sensors, actuators and displays. Learn the Arduino platform's hardware, software and APIs as a working platform to bridge the gap to more complex systems like ARM later in the course. Understand C/C++ from the ground up and how to write effective firmware for embedded systems and memory/compute constrained systems. Learn how processors run at the bare metal level including inline and external assembly language programming and interfacing with C/C++. Conquer advanced Computer Science subjects such as optimization theory, data structures, recursion, interrupts, and Big O analysis. Explore multitasking on microcontrollers by developing an interrupt based-round-robin kernal as well as using FreeRTOS. Become expert in numerous tools such as compilers, Arduino IDE, TinkerCAD, EasyEDA, Replit, VSCode, CodeLite, WokWi, Fritzing, MPLabX, STM32CubeIDE, and more. Learn electronics fundamentals like Ohm's and Kirchhoff's laws, circuit analysis, how passive components work, transistors, and FETs. Understand the basics of analog and digital systems and building both combinational and sequential logic circuits with TTL/CMOS ICs. Overcome programmable logic and the fundamentals of CPLDs, PALs, GALs, and FPGAs along with a primer on hardware description languages and CUPL. Understand various memories types such as FLASH, RAM, SRAM, EEPROM and their different applications. Conquer power management and sleep modes and how to shut peripherals down in your embedded designs, wake from interrupts, and manage power effectively. Understand how to read datasheets, do research, dig into APIs and documentation like the pros. Discover simulation software to test your ideas and build systems virtually before committing to physical hardware. Learn how to build embedded projects on the bench with solderless breadboards, point to point wiring and tactics to make these builds work at high speed. Understand how to use test equipment properly such as digital multimeters, oscilloscopes, logic analyzers, and power supplies. Build numerous bench projects including a complete Arduino based game console running a 3D wire-frame game, equipped with RGB LCD, game pad, sound and more! Master one of the fastest growing and highest paid engineering fields in the world. This course is ideal for individuals who are Anyone that wants to learn about the Arduino, Microcontrollers and Embedded Engineering. or Coders and programmers that want to explore the hardware side of development at the level of microcontrollers. or Hobbyists and hackers that want to learn about the "Arduino" platform, what it is, and how to use it to build projects, gadgets, and contraptions. or Students that want a single course that covers everything from the ground up, so by the end they can think of an embedded project, design, code, and build it with confidence. It is particularly useful for Anyone that wants to learn about the Arduino, Microcontrollers and Embedded Engineering. or Coders and programmers that want to explore the hardware side of development at the level of microcontrollers. or Hobbyists and hackers that want to learn about the "Arduino" platform, what it is, and how to use it to build projects, gadgets, and contraptions. or Students that want a single course that covers everything from the ground up, so by the end they can think of an embedded project, design, code, and build it with confidence.
Enroll now: Crash Course Arduino and Microcontroller Development
Summary
Title: Crash Course Arduino and Microcontroller Development
Price: $54.99
Average Rating: 4.9
Number of Lectures: 128
Number of Published Lectures: 128
Number of Curriculum Items: 128
Number of Published Curriculum Objects: 128
Original Price: $99.99
Quality Status: approved
Status: Live
What You Will Learn
- Learn about microcontrollers, microprocessors and their internal architecture including how instructions are executed, ALUs, Buses, MMUs, DMA and more.
- Master embedded engineering theory and pratice from blinking an LED to building complex systems with sensors, actuators and displays.
- Learn the Arduino platform's hardware, software and APIs as a working platform to bridge the gap to more complex systems like ARM later in the course.
- Understand C/C++ from the ground up and how to write effective firmware for embedded systems and memory/compute constrained systems.
- Learn how processors run at the bare metal level including inline and external assembly language programming and interfacing with C/C++.
- Conquer advanced Computer Science subjects such as optimization theory, data structures, recursion, interrupts, and Big O analysis.
- Explore multitasking on microcontrollers by developing an interrupt based-round-robin kernal as well as using FreeRTOS.
- Become expert in numerous tools such as compilers, Arduino IDE, TinkerCAD, EasyEDA, Replit, VSCode, CodeLite, WokWi, Fritzing, MPLabX, STM32CubeIDE, and more.
- Learn electronics fundamentals like Ohm's and Kirchhoff's laws, circuit analysis, how passive components work, transistors, and FETs.
- Understand the basics of analog and digital systems and building both combinational and sequential logic circuits with TTL/CMOS ICs.
- Overcome programmable logic and the fundamentals of CPLDs, PALs, GALs, and FPGAs along with a primer on hardware description languages and CUPL.
- Understand various memories types such as FLASH, RAM, SRAM, EEPROM and their different applications.
- Conquer power management and sleep modes and how to shut peripherals down in your embedded designs, wake from interrupts, and manage power effectively.
- Understand how to read datasheets, do research, dig into APIs and documentation like the pros.
- Discover simulation software to test your ideas and build systems virtually before committing to physical hardware.
- Learn how to build embedded projects on the bench with solderless breadboards, point to point wiring and tactics to make these builds work at high speed.
- Understand how to use test equipment properly such as digital multimeters, oscilloscopes, logic analyzers, and power supplies.
- Build numerous bench projects including a complete Arduino based game console running a 3D wire-frame game, equipped with RGB LCD, game pad, sound and more!
- Master one of the fastest growing and highest paid engineering fields in the world.
Who Should Attend
- Anyone that wants to learn about the Arduino, Microcontrollers and Embedded Engineering.
- Coders and programmers that want to explore the hardware side of development at the level of microcontrollers.
- Hobbyists and hackers that want to learn about the "Arduino" platform, what it is, and how to use it to build projects, gadgets, and contraptions.
- Students that want a single course that covers everything from the ground up, so by the end they can think of an embedded project, design, code, and build it with confidence.
Target Audiences
- Anyone that wants to learn about the Arduino, Microcontrollers and Embedded Engineering.
- Coders and programmers that want to explore the hardware side of development at the level of microcontrollers.
- Hobbyists and hackers that want to learn about the "Arduino" platform, what it is, and how to use it to build projects, gadgets, and contraptions.
- Students that want a single course that covers everything from the ground up, so by the end they can think of an embedded project, design, code, and build it with confidence.
Crash Course Arduino and Microcontroller Development is designed to transform the complex world of embedded engineering into an accessible and enjoyable experience for students and hobbyists alike. This unique course covers a wide range of topics from the ground up, requiring no impossible prerequisites. With over 128 lectures and 111+ hours of video content, my aim was to create a comprehensive guide that takes you from a novice to a confident master in embedded engineering, microcontrollers, and Arduino.
We will explore everything from basic electronics and microprocessor architecture to the intricacies of the Arduino platform, ARM, and programming. You’ll learn essential C/C++ programming skills to write your own code, optimize it, and understand advanced concepts like interrupts, data structures, multitasking, and object-oriented programming. Using simulators, compilers, IDEs, CAD, schematic entry programs, and various electrical test equipment, we will uncover the mysteries of communication protocols and signals, allowing you to see and understand the underlying processes.
Our journey will be hands-on and practical, with each lecture combining theory, calculations, and real-world examples. We’ll build simulations, construct physical hardware, test, and run our creations. This is not a scripted course but a genuine, one-on-one learning experience where I share my 40+ years of expertise in electronics and coding. Expect to have fun, learn deeply, and maybe even blow a few things up along the way!
Additionally, this course includes my college textbook, “Design Your Own Video Game Console” (aka “The Black Art of Video Game Console Design”), free of charge in PDF format. This 800+ page book will serve as a valuable reference throughout the course.
Join me in this exciting adventure into the world of embedded engineering and unlock your potential to create anything you can imagine.
Course Curriculum
Chapter 1: Getting Started with Embedded Engineering
Lecture 1: Course Overview and Welcome!
Lecture 2: Installation and Setup
Lecture 3: Installation and Setup – CodeLite IDE and Compiler
Chapter 2: Introduction to Microprocessors and Microcontrollers
Lecture 1: Microprocessors and Computer Architecture Fundamentals
Lecture 2: Microprocessors, Microcontrollers, ALUs, Assembly Language and More
Lecture 3: Processor Design Primer: ALU, Control Unit, RTL Logic and Processor Fundamentals
Lecture 4: Introduction to the Arduino, Hardware, Software, Documentation and Datasheet
Chapter 3: Arduino IDE, Coding, and Hardware Primer
Lecture 1: Introduction to the Arduino UNO, Hardware, IDE, API, Programming and Simulation
Lecture 2: Hands on with the Arduino, Parts Kits, Solderless boards and Component Intros
Lecture 3: Blinking an LED with C++ in Hardware
Lecture 4: Simulating our Arduino Hardware and Code Online with TinkerCAD and Wokwi
Lecture 5: More Simulation with Code API Emulation on Replit
Lecture 6: Building a Game From Scratch: The Simon Memory Game, Hardware Design
Lecture 7: Building a Game From Scratch: The Simon Memory Game, Hardware Build
Lecture 8: Building a Game From Scratch: The Simon Memory Game, Coding and Firmware
Lecture 9: Finishing the Simon Game and Introduction to Serial Debugging
Lecture 10: Porting Simon to Online Simulation
Chapter 4: Tools and Test Equipment Overview
Lecture 1: Basic Hand Tools for Electronics
Lecture 2: Working with Soldering Irons and Hot Air Machines without Burning Yourself!
Lecture 3: Multimeters, Oscilloscopes, Logic Analyzers, Signal Generators and Power
Lecture 4: Hands on with Test Equipment and Real-Time Experiments with Logic Analyzers
Chapter 5: Into the Abyss – Electronics Theory and Fundamentals Primer
Lecture 1: The Fundamentals of Electricity, Charge, Current, Voltage, Resistance and Fields
Lecture 2: Ohm’s Law, Basic Circuit Analysis, Series and Parallel Circuits
Lecture 3: Understanding Power, Series and Parallel Batteries, Voltage Dividers and EasyEDA
Lecture 4: Ohm's Law++, Kirchhoff's Laws; KVL and KCL
Lecture 5: Capacitors, Electric Fields, Physics, Charging and Discharging
Lecture 6: Inductors, Magnetic Fields, Flux, Lenz’s & Faraday’s Law, Charging/Discharging
Lecture 7: Reactance, Impedance, Phasors, AC Analysis of Series Capacitive Circuits
Lecture 8: Low Pass Filters, Transfer Functions, Gain, Decibels
Lecture 9: Low Pass Filter Bench Build, Simulation, Arduino Tone Generator
Lecture 10: Basic Semiconductor Devices, Diodes, Rectification, LEDs, Simulation
Lecture 11: Transformers, DC Rectification, Understanding Datasheets
Lecture 12: Transistor Theory and Applications
Lecture 13: Mosfet Theory and Practical Applications
Lecture 14: Introduction to Digital Electronics, Boolean Algebra, Gates, and Logic Families
Lecture 15: TTL/CMOS Logic Gates, Driving, Sinking Current, Packages and Prototyping
Lecture 16: Review of Common TTL/CMOS ICs and Bench Demo of Gates
Lecture 17: Simulating a Digital Logic Gate Module Using the Arduino
Lecture 18: A Tour of Programmable Logic (RAM, FLASH, PALs, GALs, CPLD, FPGA) and Bench Demo
Chapter 6: C++ (along with C) Primer and Fundamentals from the Ground Up
Lecture 1: Introducing C/C++, History and Programming Concepts for Embedded Systems
Lecture 2: Understanding C/C++ Compilers, Code Generation and Tools
Lecture 3: Working with IDEs, Compiling C++ Programs, and a Bit of Arduino Code
Lecture 4: C++ Primer Crash Course, Arduino Emulation and Coding
Lecture 5: Setting up our C++ Test Platforms
Lecture 6: C++ Fundamentals, Headers, External Libraries, Printing
Lecture 7: C++ Variables, Intrinsic Types, Naming Conventions, and more printf() Formatting
Lecture 8: C++ Variables, Globals, Locals, Basic Types, Math Operators, and Precedence
Lecture 9: C++ Mathematics, Understanding Base-N Number Systems with Binary, Hex & Octal
Lecture 10: C++, Programming Style Guide and Conventions, Macros, Conditional Compilation
Lecture 11: C++, Built in Math Operators, Binary Bitshift Operations and Using the Debugger
Lecture 12: More C++ Logical Operators, Conditionals and the "if" Statement, Type Casting
Lecture 13: C++ Looping Constructs, "for" and "while"
Lecture 14: C++ Switch Statements, Arrays, Strings
Lecture 15: C++ Strings, Arrays, Arduino Strings and Functions
Lecture 16: C++ Measuring Time, Nested Loops and Hardware Build (Finally!)
Lecture 17: C++ Console IO C and C++ methods, VT100 Gamepad Hardware Demo
Lecture 18: C++ Data Structures, Structs, Enums, Linked Lists and Trees
Lecture 19: C++ Pointers and References (The Dreaded Duo)
Lecture 20: C++ Classes, Methods, Properties and Object Oriented Basics
Lecture 21: C++ Advanced Classes, Constructors, Destructors, Operator Overloading
Lecture 22: C++ More Advanced Class Topics, Copy Constructors, Assignments, Deep and Shallow
Lecture 23: C++ Built in Objects and Including External Arduino Libraries
Lecture 24: C++ Understanding Microcontroller Memory Management, Globals, Locals, Statics
Lecture 25: C++ Memory Management and the Heap – Part II
Lecture 26: C++ Working with Arduino External Libraries and Objects and a Little Recursion
Chapter 7: Introducing the World of Arduino, AVR 8-Bit Processors, ATmega 328p & Firmware
Lecture 1: Introduction to Arduino AVR 8-Bit Architecture; 8-bit Ports, GPIOs and ADC
Lecture 2: Interfacing to 7-Segment Displays, Switches, Keypads, Rotary Encoders and More
Lecture 3: Interfacing to 7-Segment Displays, Keypads, Rotary Encoders, & Bench Build II
Lecture 4: Filtering and Debouncing Deep Dive
Lecture 5: Analog Interfacing to Potentiometers and Joysticks
Lecture 6: C++ Exercise Converting the Joystick Code to a Class
Lecture 7: Interfacing to LEDs and NeoPixels
Chapter 8: Advanced Microcontroller Development and Arduino Embedded Internals
Lecture 1: Assembly Language and Microcontroller Fundamentals, Inline AVR 328p
Lecture 2: Assembly Language, Memory, Registers, IO Space, GPIOs, Interfacing with C/C++
Lecture 3: Working with the UARTs in Assembly
Lecture 4: Using External Assembly Language and Memory Mapped IO
Lecture 5: Using External Assembly Language Part II – Writing a Math API
Lecture 6: Using External Assembly Language Part III – Variables, Tables, and Addressing
Lecture 7: Understanding Microcontroller In Circuit Programming, AVRDUDE, and Fuse Bits
Lecture 8: Understanding Microcontroller ICP Programming and Configuring the Clock Out Bits
Lecture 9: Understanding Microcontroller Clocking, Scaling, PLLs and More
Lecture 10: Understanding Sleep Modes, Interrupts, Polling and Multitasking
Lecture 11: More Advanced Interrupts and Coding Interrupt Service Routines
Lecture 12: Understanding Timers, Counters, PWM and Measuring Temporal Events
Lecture 13: Understanding Timers, Counters, PWM, Timer Interrupts and Waveform Generation
Lecture 14: Using the Timer and Interrupt Arduino APIs and Pin Change Interrupts
Lecture 15: Using the Timer and Interrupt Arduino APIs, Pin Change Interrupts Demo – Part II
Lecture 16: More Advanced Pin Change Interrupts and PIR Sensors
Lecture 17: The Watchdog Timer "Woof Woof"
Lecture 18: Power Consumption and Sleep Modes
Lecture 19: More Sleep and Power Saving Modes
Lecture 20: Direct Memory Access (DMA)
Instructors
-
Andre LaMothe
Computer Scientist / Embedded Engineer / Author
Rating Distribution
- 1 stars: 1 votes
- 2 stars: 0 votes
- 3 stars: 2 votes
- 4 stars: 29 votes
- 5 stars: 263 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Language Learning Courses to Learn in November 2024
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024