
Reinstall the software and use the installer across operating systems, agree to license terms, and configure libraries for STM32 HAL projects.
Create a new STM32 project using HAL, configure pins, and generate code for a basic peripheral setup, with library management and power optimization.
Explore how to configure the SysTick timer with HAL to create nonblocking delays and interrupt-driven actions every three seconds on STM32.
Configure the system clock in stm32 using hal by selecting the clock source, enabling the pll, and setting the maximum frequency, with the generated rcc initialization function.
Explore software reset and system reset concepts on STM32 microcontrollers, including power-off behavior, reset sources, and how to trigger and observe resets via software and hardware.
Configure STM32 GPIO output with HAL, selecting push-pull or open-drain, wiring direction and pull-up/down, and initializing ports for reliable read/write of signals.
Configure STM32 input pins with pull-up and pull-down resistors, define default input states, and mitigate noise to reliably detect button presses using the HAL.
Learn how to configure an external interrupt on STM32 using HAL, including edge-triggered transitions and how to set up the interrupt for responsive handling.
Configure interrupt priority in stm32 hal to control preemption and interrupt interaction, prioritizing critical events and managing execution flow.
Configure memory-to-memory mode in stm32 hal to perform dma transfers between memory regions, manage channel priorities, and optimize data flow.
Explore polling mode and data type conversion for STM32 peripherals, focusing on interfacing with the microcontroller, configuring transmission paths, and managing practical setup steps and data flow.
Explore STM32 basic peripherals with HAL, focusing on interrupt mode, RX FIFO buffer, and DMA mode. Master practical techniques for configuring peripherals, data transfer, and efficient interrupt handling.
Learn to configure a timer to generate time-based interrupts and implement an encoder interface mode using STM32 HAL, covering timer clocks, prescalers, and counting behavior.
Learn to configure STM32 timers for output compare toggle and PWM output using HAL, control duty cycles and channel timing, and generate precise square wave signals.
Learn how to configure input capture to measure signal frequency and duty cycle using PWM input on STM32 with HAL, including timing relationships and capture control.
Learn how to configure STM32 ADC peripherals with HAL in polling and interrupt modes, including channel selection, continuous versus single conversions, and sending results to a PC.
Learn to configure the analog watchdog and scan mode for STM32 peripherals using HAL, including setup steps, channel selection, and practical considerations for reliable ADC monitoring.
Configure the ADC with timer-triggered conversions and an injected channel, selecting channels such as 6 and 10, and set the trigger timing to occur every three seconds.
This course teaches you the hands-on skills of STM32 programming using the HAL library. This course is divided into 3 parts. After finishing the first part, you will be able to write codes for basic peripherals like Clock Control, GPIO, Interrupt, and DMA. After finishing the second part, you will be able to write codes for commonly used peripherals like UART, Timer, ADC, SPI, and I2C. After finishing the third part, you will be able to write codes for other peripherals like WDG and Power. This course is suitable for those who want to learn about HAL library but don't really want to read the documentation. This course provides you with example codes that can be reused in the future as template codes for your embedded system projects. By the end of the course, you will have a solid understanding of how to work with STM32 microcontrollers and confidently implement them in real-world applications. The skills you gain will be applicable in various industries, helping you build reliable and efficient embedded systems for different projects. Throughout the course, you'll also get practical tips and tricks that make the development process smoother and more efficient. This hands-on approach will ensure you gain practical experience with every step.