Introduction to object-oriented programming with Arduino
- Development
- Dec 06, 2024

Introduction to object-oriented programming with Arduino, available at $49.99, has an average rating of 4.5, with 71 lectures, 4 quizzes, based on 24 reviews, and has 1628 subscribers.
You will learn about The structure of a class What data encapsulation is and how we implement this concept Creation and use of constructors Overloading constructors and functions (polymorphism) Inheritance of classes Use and adaptation of inherited classes Interaction of headers and CPP files Control of servo motors, infrared sensors, LEDs. Use of Visual Studio Code / Platform IO (with Arduino IDE also possible) Provide of own libraries for external developers Creation of individual libraries for own use Best practices in object oriented programming of microcontrollers Many practical examples which are built up step by step This course is ideal for individuals who are Anyone who wants to deepen their knowledge of object-oriented programming (OOP) in the Arduino environment. or Developers who are interested in taking their code to the next level. or All of you who want to understand, apply and write OOP themselves or All of you who want to create their own libraries It is particularly useful for Anyone who wants to deepen their knowledge of object-oriented programming (OOP) in the Arduino environment. or Developers who are interested in taking their code to the next level. or All of you who want to understand, apply and write OOP themselves or All of you who want to create their own libraries.
Enroll now: Introduction to object-oriented programming with Arduino
Summary
Title: Introduction to object-oriented programming with Arduino
Price: $49.99
Average Rating: 4.5
Number of Lectures: 71
Number of Quizzes: 4
Number of Published Lectures: 71
Number of Published Quizzes: 4
Number of Curriculum Items: 75
Number of Published Curriculum Objects: 75
Original Price: 69.99
Quality Status: approved
Status: Live
What You Will Learn
Who Should Attend
Target Audiences
Especially in the development of microcontrollers we often work with libraries, for example to control hardware components. The advantages of flexible and efficient source code design will be introduced to you in this course.
An ESP32 is used in the entire course, but all the examples (except the last one with the Website/Webserver and WIFI), exercises and explanations can be done with any Arduino.
Once you have completed this course, you will be able to…
create your own object-oriented programs and libraries
program reusable source code
create clean source code architecture for flexible programming and adaptation
code generalized classes and provide the libraries
implement the basic concepts of OOP for your own projects and apply them immediately.
save time for cumbersome programming. Because of the given conceptual design, your self-written code is easier to adapt.
maintain your own code better even after a longer period of time.
What we go through in the course:
Basics of object-oriented programming in the Arduino environment. We will go through the essential contents of OOP step by step. We will get right into practical examples.
Practical example: Own LED class. Many different functions and interfaces.
Practical example 2: Galton board with marble elevator and evaluation of 12 IR sensors.
Practical example 3: Headlamp with only one(!) button, two LEDs and three light modes.
Practical example: Rock, paper, scissors game. We develop this small game. We compete against the bot and play to win two games. The logic is triggered by a web server on the ESP32 (with server side events).
My approach in the course:
None (ok, only very few) slides/Powerpoints. We start in the basics immediately with a practical example. Also the theory can be tested immediately on the Arduino with the Serial Monitor and thus immediately better understood.
The practical projects are developed together in step-by-step instructions.
Together means in this context that I demonstrate the code, depending on the task, and you can follow me along with the source code.
All codes are available for download on the platform, so you can get to the result without frustration.
No rambling explanations or theory monologues, we get right to work in the basics chapter.
Benefit from my years of experience and get the key skills in microcontroller development.
I’m looking forward to see you in class
Markus Edenhauser
Course Curriculum
Chapter 1: Introduction
Lecture 1: Introduction to this course
Lecture 2: About me
Lecture 3: Download code snippets
Lecture 4: List of components
Lecture 5: Practical experience vs. theory
Lecture 6: Prerequisites for this course
Lecture 7: Disclaimer
Chapter 2: Basics
Lecture 1: Intro
Lecture 2: ESP32 Pinout
Lecture 3: VS Code vs Arduino IDE
Lecture 4: Open Source Code from VS Code in Arduino IDE
Lecture 5: Online Simulator
Lecture 6: Enum
Lecture 7: Struct
Chapter 3: Short introduction to object-oriented programming
Lecture 1: Intro
Lecture 2: Basic setting of an empty project
Lecture 3: Structure of a class & data encapsulation
Lecture 4: Instance and constructor
Lecture 5: Overloading constructor
Lecture 6: Exercise example Interaction of header and CPP files
Lecture 7: Getter
Lecture 8: Setter
Lecture 9: Inheritance
Lecture 10: Inherited function overloaded
Lecture 11: Recap Introduction OOP
Chapter 4: Individual LED Class
Lecture 1: Wiring and series resistance calculation
Lecture 2: Headerfile
Lecture 3: Control the LED with an object
Lecture 4: Toggle LED
Lecture 5: Turn LED off after x seconds
Lecture 6: Fading
Lecture 7: Pulsate
Lecture 8: Instantiate objects in array
Lecture 9: LED chasing effect
Chapter 5: IR sensors using the Galton board as an example
Lecture 1: Project Introduction
Lecture 2: Wiring
Lecture 3: Create Project and Class
Lecture 4: Address IR sensor individually
Lecture 5: Objects into an array
Lecture 6: Simulate Motor on off
Lecture 7: Evaluation of the IR sensors
Lecture 8: Craft Project Overview
Lecture 9: Recap OOP IRSensors
Chapter 6: Headlamp – Button short/long click
Lecture 1: Project idea
Lecture 2: Wiring
Lecture 3: Add Class Button
Lecture 4: Debounce button with millis
Lecture 5: Detect duration of clicks
Lecture 6: Clean Interface
Lecture 7: Control LEDs
Lecture 8: ButtonHeadlamp inherits from Button
Lecture 9: Function Keep button pressed
Lecture 10: Add function Fade
Lecture 11: Additional task implement LED class
Lecture 12: Possible solution
Chapter 7: Rock Paper Scissors
Lecture 1: Project idea
Lecture 2: Wiring
Lecture 3: Creating class files
Lecture 4: Headerfile
Lecture 5: First game mode
Lecture 6: Game mode in loop
Lecture 7: Create a website
Lecture 8: Access website via ESP32 Webserver
Lecture 9: Transfer data from website to ESP32
Lecture 10: Game mode on two games won
Lecture 11: Sending Server Side Events
Lecture 12: Prettify events
Lecture 13: Implement LED Class
Lecture 14: Housing
Chapter 8: Publish your OOP source code as Arduino library
Lecture 1: Create and publish your own library
Chapter 9: Conclusion
Lecture 1: Summary of the Learnings
Instructors

Markus Edenhauser
Tech Enthusiast, Dozent & systemischer Coach
Rating Distribution
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!
- Random Picks
- Popular
- Hot Reviews
- OMRON PLC 1 (CX-Programmer Usage)
- Crypto Trading Mastery (Scalping, Day trading, price action)
- Personal Finance
- Company Valuation Financial Modeling
- The Beginner Forex Trading Playbook
- How to Draw Cute Thanksgiving!
- Step-By-Step Stock Market Analysis and Real-Time Trades
- Canva Next Level- Become a Canva Expert
- 1YouTube Masterclass The Best Guide to YouTube Success
- 2Photoshop CC- Adjustement Layers, Blending Modes Masks
- 3Personal Finance
- 4The Architecture of Oscar Niemeyer
- 5SolidWorks Essential Training ( 2023 2024 )
- 6Advanced Photoshop Manipulations Tutorials Bundle
- 7ZB Trading Cryptocurrency Price Action Course
- 8Python for Absolute Beginners
- 1Linux Performance Monitoring Analysis Hands On !!
- 2Content Writing Mastery 1- Content Writing For Beginners
- 3Media Training for PrintOnline Interviews-Get Great Quotes
- 4Learn Facebook Ads from Scratch Get more Leads and Sales
- 5The Complete Digital Marketing Course Learn From Scratch
- 6C#- Start programming with C# (for complete beginners)
- 7[FREE] How to code 10 times faster with Emmet
- 8Driving Results through Data Storytelling