Packt
Embedded Systems Object-Oriented Programming in C and C++
Packt

Embedded Systems Object-Oriented Programming in C and C++

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

14 hours to complete
3 weeks at 4 hours a week
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

14 hours to complete
3 weeks at 4 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Understand object-oriented principles and their application in firmware development

  • Apply object-oriented principles to write embedded C and C++ applications

  • Analyze firmware structures using polymorphism, inheritance, and encapsulation in C and C++

  • Evaluate and build robust firmware by applying object-oriented principles

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

September 2024

Assessments

5 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

Placeholder
Placeholder

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Placeholder

There are 12 modules in this course

In this module, we will provide an overview of the course, including its objectives and scope. You will learn how to download, install, and set up Keil uVision, ensuring you are ready to begin your journey in firmware programming.

What's included

5 videos1 reading

In this module, we will delve into object-oriented firmware programming by creating a UART driver and an LED class. You will learn to apply object-oriented principles in C and transition these concepts into C++ for enhanced firmware development.

What's included

4 videos

In this module, we will focus on implementing inheritance in both C and C++. You will learn how to create inherited classes, understand the advantages of using inheritance, and perform testing to ensure functionality in embedded systems.

What's included

4 videos1 assignment

In this module, we will guide you through the development of a GPIO driver and library in C from scratch. You will learn to build and test the necessary structures, integrate them into a comprehensive driver, and validate the complete library.

What's included

8 videos

In this module, we will explore polymorphism in embedded C and C++. You will learn to add new classes to your project, implement polymorphism, and use virtual functions to enhance the flexibility and scalability of your firmware.

What's included

3 videos

In this module, we will extend the GPIO library to handle alternate functions. This optional section will allow you to apply advanced features to your GPIO driver, enhancing its overall functionality and versatility.

What's included

1 video1 assignment

In this module, we will focus on developing a GPIO library in C++ from scratch. You will apply object-oriented principles to manage GPIOs effectively and ensure the library's functionality through thorough testing.

What's included

1 video

In this module, we will guide you through creating a UART driver and library in C. You will learn to implement UART register structures, develop the driver and library, and validate their functionality through comprehensive testing.

What's included

5 videos

In this module, we will develop a UART library in C++ from scratch. You will apply object-oriented principles to manage UARTs effectively and ensure the library's functionality through thorough testing.

What's included

1 video1 assignment

In this module, we will focus on creating a SysTick timer library in C. You will learn to implement the SysTick registers structure, develop and test the library, and then transition the implementation to C++ for enhanced functionality.

What's included

4 videos

In this module, we will guide you through setting up the STM32CubeIDE. You will learn to download, install, and configure the IDE, and then write and test a GPIO driver using the STM32CubeIDE environment.

What's included

6 videos1 assignment

In this module, we will conclude the course by summarizing the key concepts covered. You will be encouraged to continue exploring and applying your firmware programming skills, and provided with contact information for any additional support or questions.

What's included

1 video1 assignment

Instructor

Packt
Packt
170 Courses2,469 learners

Offered by

Packt

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

New to Software Development? Start here.

Placeholder

Open new doors with Coursera Plus

Unlimited access to 7,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions