This is a practical programming course on embedded systems programming using the C++ programming language. Key features of C++ such as template programming and object-oriented programming can greatly improve embedded software portability, in recent years this has made C++ very attractive to embedded developers.
The goal of this course is to teach you how to navigate the microntroller reference manual and datasheet to extract the right information to professionally build peripheral drivers and firmware. To achieve this goal, no libraries are used in this course, purely bare-metal Embedded-C++ and register manipulations.
By the end of this course you will be able write drivers for peripherals like ADC, UART, PWM, GPIO, TIMER,I2C, SPI, etc. You will also master the ARM architecture and how to build professional embedded firmware for ARM processors.
Furthermore, you will master C++ key features like Object-Oriented methods, Template Programming, and optimization.
Highlights :
——————-
- Write Class Templates for accessing Microcontroller Registers
- Write Object-Oriented Peripheral Drivers
- Master Object-Oriented Techniques for Microcontrollers
- Master C++ Templates for Microcontrollers
- Master how to read Datasheets of Microcontrollers
- Write Universal Asynchronous Receiver-Transmitter (UART) drivers using bare-metal Embedded-C++
- Write General Purpose Timer (GPTM) drivers using bare-metal Embedded-C++
- Write System Tick (SysTick) Timer drivers using bare-metal Embedded-C++
- Write Pulse Width Modulation (PWM) drivers using bare-metal Embedded-C++
- Write Analog-to-Digital Converter (ADC) drivers using bare-metal Embedded-C++
- Write Interrupt drivers using bare-metal Embedded-C++
- Write Serial Peripheral Interface (SPI) drivers using bare-metal Embedded-C++
- Write Inter-Integrated Circuit (I2C) drivers using bare-metal Embedded-C++