Course Content
Setting Up
Course Requirements
Downloading CubeIDE
Installing CubeIDE
Getting the required documentation
Getting the required package for development
Testing the project setup
The Right Boot
The Need for a Bootloader
Developing some System Drivers for Implementing Real World Examples
Important information about this section
Code: Enabling the Floating Point Unit (FPU)
Code: UART Driver – Analyzing the Documentation
Code: UART Driver – Listing out the steps
Code: UART Driver – Implementing the Initialization function
Code: UART Driver – Implementing the Write function
Code: UART Driver – Testing the Driver
Code: System Timebase – Analyzing the Documentation
Code: System Timebase – Implementing the Init. function
Code: System Timebase – The rest of the functions
Code: System Timebase – Testing the Timebase
Code: BSP for the Dev Board – Required functions
Code: BSP for the Dev Board – The LED Driver
Code: BSP for the Dev Board – The Button Driver
Code: BSP for the Dev Board – Testing the BSP
The Embedded Build Process and Memory Model
A Closer Look at the Embedded Build Process
Overview of the Embedded Build Process
Overview of the STM32F4 Memory Model
Understanding the Linkerscript and Linking Process
Analyzing the Linkerscript and Memory Layout
Working with the Linkerscript
Code: Creating SECTIONS in the Linkerscript
Code: Defining custom MEMORY regions
Code: Storing functions in Custom Sections
Bare-Metal Bootloader Development
Code: Implementing the Default Application(Pt.1)
Code: Implementing the Jump-to-Application function
Code: Sharing functions between the Bootloader and User Application
Final Project- Multi-Slot Bootloader System
Code: Designing the System
Code: Receiving UART Commands
Code: Implementing the Multi-Slot Bootloader System
Know your Instructor
The course starts now and never ends! It is a completely self-paced online course – you decide when you start and when you finish.
Complete Source Code Included
Weekend Live Sessions
Next Batch 10-11 Feb
Saturday 2:30 PM – 5:30 PM
Sunday 2:30 PM – 5:30 PM
Frequently Asked Questions
What if I miss any of the live sessions?
You will be given access to the recorded sessions.
How long do I have access to the recorded sessions?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like – across any devices you own.
Do I get a certificate?
Yes, after a successful completion of the course.