This is a Teachable school. Build your own and save.
Get Black Friday offer
Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Foundations of Embedded Systems with ARM Cortex and STM32 | 2 Week Series
Getting started
Before we get started!
Section 0 - Introduction
Introduction to Microcontrollers (3:10)
Introduction to Embedded - Basic MCU Architecture (4:04)
Introduction to Embedded - CPU Overview (5:25)
Logic Levels (1:53)
Section 1 - Cortex-M Introduction and Architecture Overview
ARM Cortex Family (3:35)
Cortex-M Family (4:47)
Cortex-M Instruction Set (3:05)
Overview of the Nucleo F303RE board (4:00)
Reference Documents
Section 1 - Quiz
ARM vs Thumb Instructions Quiz
Section 2 - Cortex-M Programmer's Model
Programmers Model (6:10)
General Registers and Process Specific Registers (4:35)
Special Registers (5:36)
Lab Session #1 - Programmers Model - General and Special Registers (22:16)
Lab Session #2 - Programmers Model - xPSR and Control Register (17:56)
Section 2 - Quiz
Programmers Model Quiz
Section 3 - Cortex-M Exception Model, Vector Table and VTOR
Exception Model and Vector Table (18:04)
Lab Session #3 - Reset Exception Handler and the Vector Table (8:23)
Vector Table Offset Register (VTOR) (4:00)
Lab Session #4 - Using VTOR to move vector table to SRAM (20:59)
Section 3 - Quiz
Exception Model Quiz
Section 4 - Cortex-M Core Peripherals
Core Peripherals (4:50)
Big Endian vs Little Endian (2:49)
STM32F3x System Overview, Bus Interface (4:22)
Section 5 - Windows, Mac, Linux - Development environment setup
Lab session #5 - Setting up the development environment - Windows, Mac and Linux (23:00)
Section 6 - Hands On Lab Sessions using STCubeMX
Lab session #6 - Install STCubeMX for generating HAL drivers (5:34)
Section 7 - GPIO Driver Development
Lab session #7 - GPIO Peripheral Driver Development (29:01)
Section 8 - UART Driver Development
Lab session # 8 - Deep dive into UART and its driver development (46:57)
Section 9 - I2C Driver Development
Lab session # 9 - Inter integrated circuit driver development lab exercise (63:04)
Section 10 - DAC and TIM driver development
Lab session # 10 - DAC and TIM Peripheral Driver development (31:31)
(Optional) Setting Up The Development Environment
Section Introduction
Setting up the virtual machine (2:57)
Setting up Linux OS on the virtual machien (3:29)
Setting up the Eclipse development environment (2:39)
Setting up the development toolchain (6:10)
Creating a blinky project (3:05)
Setting up the open source debugger (8:08)
Setting up the open source debugger (Part 2) (8:32)
Running the blinky project (6:53)
FAQ and troubleshooting (8:09)
Congratulations and Thank you!
Closing Notes (0:31)
Lab session #5 - Setting up the development environment - Windows, Mac and Linux
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock