Tags
Language
Tags
June 2025
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
    Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

    ( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
    SpicyMags.xyz

    Mastering Microcontroller: Timers, Pwm, Can, Low Power(Mcu2) (updated 3/2023)

    Posted By: ELK1nG
    Mastering Microcontroller: Timers, Pwm, Can, Low Power(Mcu2) (updated 3/2023)

    Mastering Microcontroller: Timers, Pwm, Can, Low Power(Mcu2)
    Last updated 3/2023
    MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
    Language: English | Size: 14.31 GB | Duration: 21h 24m

    Learn STM32 Timers, CAN, RTC, PWM, Low Power embedded systems and program them using STM32 Device HAL APIs step by step.

    What you'll learn

    You will learn from scratch about STM32 Timers : Basic and General Purpose Timers

    Understand General purpose timer's Input capture and Output compare unit handling and Exercises

    Handling of Timer interrupts : Time base interrupts, capture interrupts, compare interrupts

    You will learn from scratch CAN Protocol, CAN Signalling, CAN Transceivers , Bus Access procedures

    Understand CAN LOOPBACK mode, SILENT mode and NORMAL mode

    Understand about CAN filtering

    Learn about CAN interrupts

    CAN Peripheral programming using STM32 device HAL drivers

    You will master Low power modes of the MCU : SLEEP,STOP and STANDBY

    You will understand different power domains of the MCU : VDD domain, 1.2V domain, backup domain

    Understand Microcontroller Wakeup Procedures using : RTC, wakeup pins,EXTI,etc.

    You will master RTC Features : CALENDAR, ALARM , TIME STAMP,WAKEUP UNIT

    RTC interrupts and wake up procedures

    Mastering Microcontroller Clocks Handling : HSE,HSI,LSE,LSI,PLL

    Understand phase locked loop (PLL) programming

    Learn PWM mode and Master through step by step code exercises

    You should be able to quickly develop applications which involves STM32 Device HAL layer

    Requirements

    Basic knowledge of C Programming and Microcontroller could be added advantage but not mandatory

    Description

    Update: English closed captions have been added, transcript availableCourse code: MCU2>>Welcome to the course which teaches you advanced Micro-controller programming. In this course you are going to learn and master Timers , PWM, CAN, RTC, Low Power modes of STM32F4x Micro-controller with step by step guidance. Highly recommended if you are seeking a career in the domain of Embedded software. <<In this course, you will understand behind the scene working of peripherals with supportive code exercises. I have included various real-time exercises which help you to master every peripheral covered in this course and this course thoroughly covers both theory and practical aspects of Timers, PWM, CAN, RTC, Low Power modes of STM32F4x Micro-controller.In Timer Section the course covers,1. Simple time-based generation using the basic timer in both polling and interrupt mode2. Timer interrupts and IRQ numbers, ISR implementation, callbacks, etc3. General-purpose timer4. Working with Input Capture channels of General-purpose timer5. Interrupts, IRQs, ISRs, callbacks related to Input Capture engine of the general purpose timer6. Working with output capture channels of the General purpose timer7. Interrupts, IRQs, ISRs, callbacks related to Output Capture engine of the general purpose timer8. PWM generation using output capture modes9. PWM Exercises10. Step by Step code development process will help you to master the TIMER peripheralIn CAN Section the course covers,1. Introduction to the CAN protocol2. CAN frame formats3. Understanding a CAN node4. CAN signaling (single-ended signals vs differential signals ) \5. CAN Bus recessive state and dominant state6. CAN Bit timing Calculation \7. CAN network with Transceivers8. Exploring inside view of CAN transceivers9. CAN Self-test modes such as LOOPBACK, SILENT LOOPBACK, etc with code exercises.10. Exploring STM32 bXCAN peripheral11. self-testing of bxCAN peripheral with exercises12. bXCAN block diagram13. Tx/Rx path of the bxCAN Peripheral14. CAN frame filtering and executrices15. CAN in Normal Mode16. Communicating between 2 boards over CAN17. Code exercisesIn the Power Controller Section the course covers,1. ARM Cortex Mx Low Power Modes Normals Vs DeepSleep2. STM32 SLEEP mode3. STOP mode4. STANDBY mode5. Current measurement with different submode6. Waking up MCU by using wakeup pins, EXTI, RTC, etc7. Backup SRAM8. Step by Step coverage with lots of code exercises.In RTC Section the course covers,1. RTC functional block diagram2. RTC clock management3. RTC calendar unit4. RTC Alarm unit5. RTC wake-up unit6. RTC Time Stamp Unit7. waking up MCU using RTC events8. RTC interrupts9. and lots of other details with step by step code exercises.STM32 Device HAL framework1. STM32 Device Hal framework details2. APIs details3. Interrupt handling4. Callback implementation5. Peripheral Handling and configurations6. Step by Step explanation with code exercises.==> Important note: This course is NOT about auto-generating code using STM32CubeMx software<==Hardware used :STM32F446RE-NUCLEO BoardCAN Transceivers for CAN ExercisesIDE used :Eclipse-based OpenSTM32 SystemWorkbenchLearning order of FastBit Embedded Brain Academy Courses,If you are a beginner in the field of embedded systems, then you can take our courses in the below-mentioned order. This is just a recommendation from the instructor for beginners. 1) Microcontroller Embedded C Programming: absolute beginners(Embedded C)2) Embedded Systems Programming on ARM Cortex-M3/M4 Processor(ARM Cortex M4 Processor specific)3) Mastering Microcontroller with Embedded Driver Development(MCU1)4) Mastering Microcontroller: TIMERS, PWM, CAN, RTC,LOW POWER(MCU2)5) Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL(MCU3)6) Embedded System Design using UML State Machines(State machine)7) Mastering RTOS: Hands-on FreeRTOS and STM32Fx with Debugging(RTOS)8) ARM Cortex M Microcontroller DMA Programming Demystified(DMA)9) STM32Fx Microcontroller Custom Bootloader Development(Bootloader)10) Embedded Linux Step by Step using Beaglebone Black(Linux)11) Linux device driver programming using Beaglebone Black(LDD1)

    Overview

    Section 1: Introduction

    Lecture 1 what are we going to do in this course ?

    Lecture 2 Important Note

    Lecture 3 Source Code and Slides

    Lecture 4 Rating and Review

    Section 2: Development board details

    Lecture 5 Note for the students

    Lecture 6 About the development board used in this course

    Lecture 7 Board Details and Locating Documents

    Lecture 8 ST-Link Driver Installation

    Lecture 9 ST Link Firmware Upgrade

    Section 3: Hardware/Software Requirements

    Lecture 10 Hardware/Software Requirements

    Section 4: Installing OpenSTM32 System-Workbench

    Lecture 11 Note for the students

    Lecture 12 Downloading and Installing OpenSTM32 System-Workbench

    Lecture 13 Installing OpenSTM32 System-Workbench

    Lecture 14 STM32 CUBE mx installation

    Section 5: STM32 HAL and Project Architecture

    Lecture 15 Introduction to STM32 Cube Project Architecture

    Lecture 16 Creating and Importing Project into OpenSTM32 System Workbench – Part1

    Lecture 17 Understanding Project Hierarchy

    Lecture 18 Project Layers Interaction

    Lecture 19 STM32 Cube framework program flow-1

    Lecture 20 STM32 Cube framework program flow-2

    Lecture 21 HAL_Init()

    Lecture 22 Understanding main.c msp.c and it.c

    Lecture 23 Peripheral Handle Structure

    Lecture 24 Linking Handle Structure and Peripheral

    Lecture 25 STM32 HAL Header File Hierarchy

    Section 6: Understanding STM32 HAL program flow with UART exercise

    Lecture 26 Importing Source Codes

    Lecture 27 Project Creation

    Lecture 28 Low level Processor specific hardware initialization: Part 1

    Lecture 29 Low level Processor specific hardware initialization: Part 2

    Lecture 30 Low level Processor specific hardware initialization: Part 3

    Lecture 31 Peripheral High Level Initialization

    Lecture 32 Peripheral Low Level Initialization

    Lecture 33 Peripheral Low Level Initialization : configuring Pin Packs

    Lecture 34 Peripheral Low Level Initialization : Alternate function settings

    Lecture 35 Peripheral Low Level Initialization : IRQ settings

    Lecture 36 STM32 HAL Peripheral data handling APIs

    Lecture 37 UART Data TXing : Part 1

    Lecture 38 UART Data TXing : Part 2

    Lecture 39 UART Data RXing: Intro

    Lecture 40 Implementing UART DATA RXing in Polling mode

    Lecture 41 UART Data RXing in Interrupt Mode : Part 1

    Lecture 42 UART Data RXing in Interrupt Mode : Part 2

    Lecture 43 UART Data RXing in Interrupt Mode : Part 3

    Lecture 44 UART Data RXing in Interrupt Mode : Part 4

    Section 7: Clocks and PLL Programming

    Lecture 45 Introduction to different clock sources of the microcontroller

    Lecture 46 Understanding methods to configure the SYSCLK

    Lecture 47 Exploring clock handling APIs in RCC driver files

    Lecture 48 Exercise : OSC Init and HSE bypass

    Lecture 49 Exercise : Clock init implementation

    Lecture 50 Exercise : SYSTICK configuration and summary

    Lecture 51 Exercise : Testing

    Lecture 52 Understanding HSI calibration

    Lecture 53 PLL introduction and working principle

    Lecture 54 Exercise : PLL Configuration via HSI Part 1

    Lecture 55 Exercise : PLL Configuration via HSI Part 2

    Lecture 56 Exercise : PLL Configuration via HSE

    Lecture 57 Exercise : PLL Configuration for 180MHz

    Lecture 58 Exercise : PLL Configuration for 180MHz implementation

    Section 8: Timers

    Lecture 59 Introduction to Timers

    Lecture 60 Types of Timers

    Lecture 61 Timer Availability in STM32 MCUs

    Lecture 62 Timer Availability in STM32 MCUs : Summary

    Lecture 63 STM32 Basic Timer Assembly

    Lecture 64 Timer Exercise : Project creation

    Lecture 65 Timer Exercise : Understanding Timer Clock (TIMx_CLK)

    Lecture 66 Timer Exercise : Understanding Prescaler and Period(ARR)

    Lecture 67 Timer Exercise : Period Value Calculation

    Lecture 68 Timer Exercise : MSP Init Implementation

    Lecture 69 Timer Exercise : Test

    Lecture 70 Timer Exercise : Interrupt Mode

    Lecture 71 Timer Exercise : 10 Micro timer base generation

    Section 9: General Purpose Timer: Input Capture Unit

    Lecture 72 Timer with input capture block

    Lecture 73 Input Capture Exercise : working principle

    Lecture 74 Input Capture Exercise : time base init

    Lecture 75 Input Capture Exercise : Channel Configuration

    Lecture 76 Input Capture Exercise : Channel Configuration Coding

    Lecture 77 LSE Configuration

    Lecture 78 Testing of LSE on MCO1 Pin

    Lecture 79 Timer Input Capture Callback Implementation

    Lecture 80 Input Capture Exercise : Testing

    Lecture 81 Input Capture Exercise : Update on HSE

    Lecture 82 Input Capture Exercise : with 4Mhz external signal

    Lecture 83 Input Capture Exercise : with 50KHz external signal

    Section 10: Timer's Output Compare unit

    Lecture 84 Timer Output compare Introduction

    Lecture 85 Output Compare Exercise : Project Creation

    Lecture 86 Output Compare Exercise Coding : Part 1

    Lecture 87 Output Compare Exercise Coding : Part 2

    Lecture 88 Output Compare Exercise Coding : Part 3

    Lecture 89 Output Compare Exercise Coding : Part 4

    Lecture 90 Output Compare Assignment

    Section 11: PWM

    Lecture 91 PWM Introduction

    Lecture 92 PWM Exercise : Part 1

    Lecture 93 PWM Exercise : Part 2

    Lecture 94 PWM Exercise : Part 3

    Lecture 95 PWM Exercise : Part 4

    Lecture 96 PWM Exercise : Part 5

    Lecture 97 PWM Exercise : Part 6

    Lecture 98 PWM Exercise : Part 7

    Lecture 99 LED brightness control using PWM signal: Part 1

    Lecture 100 LED brightness control using PWM signal: Part 2

    Section 12: Controller Area Network Fundamentals

    Lecture 101 CAN section introduction

    Lecture 102 Introduction to CAN

    Lecture 103 CAN's most attractive features

    Lecture 104 Summary of CAN features

    Lecture 105 Understanding a CAN and its parts

    Lecture 106 CAN single ended signals Vs Differential signal

    Lecture 107 Understanding CAN differential signals

    Lecture 108 CAN Dominant and Recessive Signal states

    Lecture 109 CAN signalling summary

    Section 13: CAN frame formats

    Lecture 110 CAN Message format explanation : Arbitration field

    Lecture 111 Standard CAN Vs Extended CAN

    Lecture 112 CAN Message format explanation : ACK bit

    Lecture 113 ACK Summary

    Lecture 114 CAN Message format explanation : EOF, IFS and SOF

    Lecture 115 CAN remote frame

    Section 14: CAN Bus Arbitration

    Lecture 116 Understanding CAN bit wise arbitration

    Section 15: STM32 bxCAN

    Lecture 117 STM32 bxCAN introdcution

    Lecture 118 STM32 bxCAN block diagram

    Lecture 119 STM32 bxCAN self test modes

    Lecture 120 Exercise : CAN loop back mode : Project Creation

    Lecture 121 CAN bit timing calculation

    Lecture 122 Exercise : CAN loop back mode : Coding init function

    Lecture 123 Exploring bxCAN TX path

    Lecture 124 Exercise : CAN loop back mode : Coding Tx function

    Lecture 125 understanding bxCAN operating modes

    Lecture 126 Exercise : CAN loop back mode : MSP code implementation

    Lecture 127 CAN loopback connection details

    Lecture 128 Exercise : CAN loop back mode : Testing and Protocol decoding

    Lecture 129 STM32 bxCAN RX block diagram and acceptance filters

    Section 16: bxCAN Frame filtering

    Lecture 130 Understanding bxCAN acceptance filtering with examples

    Lecture 131 Exploring filtering data structures

    Lecture 132 Exercise : CAN loop back mode : Coding RX function

    Lecture 133 Exercise : CAN filter config implementation and testing TX-RX

    Section 17: CAN interrupts

    Lecture 134 Understanding STM32 bxCAN Interrupt requests (IRQs)

    Lecture 135 CAN LOOPBACK interrupt mode implementation Part -1

    Lecture 136 CAN LOOPBACK interrupt mode implementation Part -2

    Section 18: CAN normal mode and exercise

    Lecture 137 Exercise : CAN Normal Node Introduction - Part-1

    Lecture 138 Exercise : CAN Normal Node Project Creation- Part-2

    Lecture 139 Exercise : CAN Normal Node Code Implementation - Part-3

    Lecture 140 Exercise : CAN Normal Node Code Implementation - Part-4

    Lecture 141 Exercise : CAN Normal Node Code Implementation - Part-5

    Lecture 142 Exercise : CAN Normal Node Testing TX - Part-6

    Lecture 143 Exercise : CAN Normal Node Testing TX - Part-7

    Lecture 144 Exercise : CAN Normal Node RX Code implementation- Part-8

    Lecture 145 Exercise : CAN Normal Node RX Code implementation- Part-9

    Lecture 146 Exercise : CAN Normal Node Sending Remote Frame Part-10

    Lecture 147 Exercise : CAN Normal Node Testing- Part-11

    Lecture 148 Exercise : CAN Normal Node Testing TX at 1Mbit/sec - Part-12

    Lecture 149 Exercise : CAN Normal Configuring acceptance filtering - Part-13

    Lecture 150 Exercise : CAN Normal Configuring acceptance filtering - Part-14

    Section 19: Low Power Modes

    Lecture 151 Section Introduction

    Lecture 152 MCU low power modes introduction

    Lecture 153 Processor specific low power modes

    Lecture 154 Entering normal and deep sleep modes

    Lecture 155 Entering sleep mode using SLEEPONEXIT feature

    Lecture 156 Exercise : Usage of SLEEPONEXIT feature

    Lecture 157 waking up from SLEEPONEXIT feature

    Lecture 158 Exercise : test SLEEPONEXIT feature -creating a project

    Lecture 159 Exercise : Implementation and current measurement without SLEEPONEXIT feature

    Lecture 160 Current measurement with SLEEPONEXIT feature

    Lecture 161 SLEEPONEXIT Exercise summary

    Section 20: Current reduction tips and tricks

    Lecture 162 Tips to reduce current consumption

    Lecture 163 Current measurement with increased HCLK frequency

    Lecture 164 Current measurement with increased UART baudrate

    Lecture 165 Clock gating and RCC Low power register settings

    Lecture 166 IO analog mode and effect on current consumption

    Lecture 167 Current measurement in IO analog mode

    Section 21: WFI and WFE

    Lecture 168 Understanding WFI instruction

    Lecture 169 WFI Exercise Introduction

    Lecture 170 WFI Exercise Implementation

    Lecture 171 Understanding WFE and event register of ARM Cortex Mx processor

    Lecture 172 WFE wake-up behavior and Comparison with WFI

    Lecture 173 WFE exercise introduction

    Lecture 174 WFE project explanation

    Lecture 175 Generating Peripheral events in STM32 MCU

    Lecture 176 WFE project implementation-Part1

    Lecture 177 WFE project implementation-Part2

    Lecture 178 Difference and similarity between WFI and WFE

    Lecture 179 When to use WFE and WFI ?

    Section 22: STM32 Low Power modes and Voltage domains

    Lecture 180 MCU specific low power modes

    Lecture 181 STM32 MCU voltage domains

    Section 23: STM32 Voltage Regulator

    Lecture 182 STM32 voltage regulator and its modes

    Lecture 183 Voltage regulator Over Drive and Power Down mode

    Section 24: Current Measurement and datasheet comparison : RUN Mode

    Lecture 184 Current measurement with core-mark in Run mode-Part1

    Lecture 185 Current measurement with core-mark in Run mode-Part2

    Lecture 186 Run mode current measurement + HCLK180MHz+ all peripherals enabled

    Lecture 187 Run mode current measurement + HCLK180MHz + all peripherals enabled + ART

    Section 25: Current Measurement and datasheet comparison : SLEEP Mode

    Lecture 188 SLEEP mode current measurement

    Lecture 189 SLEEP mode and Voltage regulator settings to save current

    Section 26: Current Measurement and datasheet comparison : STOP Mode

    Lecture 190 STOP mode and wake-up latency

    Lecture 191 STOP mode current measurement

    Lecture 192 Microcontroller wake-up Pins discussion

    Section 27: STM32 BACKUP SRAM and STANDBY MODE effect

    Lecture 193 Understanding STM32 BACKUP SRAM

    Lecture 194 Different types of MCU resets

    Lecture 195 BACKUP SRAM exercise Intro

    Lecture 196 Backup SRAM Exercise implementation part 1

    Lecture 197 Backup SRAM Exercise implementation part 2

    Section 28: RTC and RTC Calendar Block

    Lecture 198 RTC Introduction

    Lecture 199 RTC BCD programming example

    Lecture 200 RTC block diagram and RTC Clock selection

    Lecture 201 RTC and STM32 device HAL APIs explanation

    Lecture 202 Exercise : RTC Calendar Part-1

    Lecture 203 Exercise : RTC Calendar Part-2

    Lecture 204 Exercise : RTC Calendar Part-3

    Lecture 205 Exercise : RTC Calendar Part-4

    Lecture 206 Exercise : RTC Calendar Testing

    Lecture 207 Exercise : RTC Calendar Testing with system reset and STANDBY exit

    Section 29: RTC Alarm

    Lecture 208 RTC Alarm Introduction

    Lecture 209 STM32 CUBE APIs for RTC Alarm Handling

    Section 30: RTC Interrupts

    Lecture 210 RTC Interrupts and IRQ numbers

    Lecture 211 RTC Interrupts Summary

    Section 31: RTC Alarm Exercises

    Lecture 212 RTC Alarm Exercise-1

    Lecture 213 RTC Alarm Exercise-1 Testing

    Lecture 214 RTC Alarm Exercise-2

    Lecture 215 RTC Alarm Exercise-2 Testing

    Lecture 216 RTC Alarm Exercise-3

    Lecture 217 RTC Alarm Exercise-4

    Lecture 218 BONUS LECTURE

    Professionals interested in exploring Embedded systems,Anyone who wants to start career in Embedded Systems,Anyone who wants to learn Microcontroller programming in depth,Students in the domain of Embedded Systems