![](https://embetron-academy.com/wp-content/uploads/2024/01/Build-Your-Own-Bootloader-for-ARM-Cortex-M4.webp)
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
![](https://embetron-academy.com/wp-content/uploads/2023/07/Rahul_Profile.jpg)
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.