HOME > Development > Introduction to object-oriented programming with Arduino

Introduction to object-oriented programming with Arduino

  • Development
  • Dec 06, 2024
SynopsisIntroduction to object-oriented programming with Arduino, ava...
Introduction to object-oriented programming with Arduino  No.1

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

  • 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
  • Who Should Attend

  • Anyone who wants to deepen their knowledge of object-oriented programming (OOP) in the Arduino environment.
  • Developers who are interested in taking their code to the next level.
  • All of you who want to understand, apply and write OOP themselves
  • All of you who want to create their own libraries
  • Target Audiences

  • Anyone who wants to deepen their knowledge of object-oriented programming (OOP) in the Arduino environment.
  • Developers who are interested in taking their code to the next level.
  • All of you who want to understand, apply and write OOP themselves
  • All of you who want to create their own libraries
  • 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

  • Introduction to object-oriented programming with Arduino  No.2
    Markus Edenhauser
    Tech Enthusiast, Dozent & systemischer Coach
  • Rating Distribution

  • 1 stars: 0 votes
  • 2 stars: 1 votes
  • 3 stars: 3 votes
  • 4 stars: 6 votes
  • 5 stars: 14 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!