Coding BareMetal Scheduler (a RTOS functionality)

Post Reply
User avatar
Posts: 12853
Joined: Fri Jan 07, 2022 12:47 am

Coding BareMetal Scheduler (a RTOS functionality)
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz, 2 Ch
Genre: eLearning | Language: English + srt | Duration: 55 lectures (3h 31m) | Size: 1.12 GB

Code a funtional system with Linker Script, Assembly and C language using opensource tools
What you'll learn
End-to-end embedded firmware development flow
Writting Linker scripts
Writting start-up ARM assembly code
Embedded C programming basics
Interfacing with Microcontroller peripherals
ARM processor set-up, interrupts and context switch
GNU Debugger (GDB)
ARM microcontroller internals overview
C is better to have but not necessary
This course tries to perform hands on coding to build, flash and debug a simple program to run on STM32F446RE Nucleo Board. It explains the ARM M4 microcontroller start-up process and walks though Assembly and C code to bring up the microcontroller.
A prior knowledge of C is preferable, this is a self contained beginner friendly approach to introduce concepts by writing simple and complete functional code that works on a Nucleo Board.
We will learn the following as we code through this course.
Essential Reference Documents - STM32F446 Datasheet, Programming Manual and Reference Manual
Usage of opensource tools. A lot of documentation is available in public for these tools and can be used free of cost. Tool set-up is not covered here.
Elaborates ARM Microcontroller start-up process.
Code following for minimal baremetal code
Linker File
Start-up Assembly Code
C code sections and how to prepare microcontroller to C code compiled with GCC.
Flashing with OpenOCD
Debugging and tracing code with GDB
Extending Code
Extending C code to blink LED
Extending C code to transmit and receive via UART for a terminal user interface.
Context switch
Overview of interrupts, interrupt vector table, Registers.
Context switch basics and Task Control Block
Coding context switch and creation and and deletion of tasks.
Software Concepts
Also uses finite state machine for Tasks.
Who this course is for
Beginner embedded systems engineer
Firmware developer
Hobby coders
[External Link Removed for Guests]
[External Link Removed for Guests]

[External Link Removed for Guests]
[External Link Removed for Guests]

[External Link Removed for Guests]
[External Link Removed for Guests]
Post Reply