STM32 Discovery Tutorials
Complete STM32F4 Discovery tutorial series covering all peripherals from bare metal using CMSIS and HAL, built for Cortex-M4 developers.
Install STM32CubeIDE, configure toolchain, and set up your first Discovery project.
Overview of the STM32F4 Discovery board, pinout, and on-board peripherals.
ARM Cortex-M4 core features, registers, pipeline, and FPU overview.
Flash, SRAM, CCM, and backup SRAM layout with linker script explanation.
Digital input/output, alternate function, open-drain, and speed configuration.
Clock sources, PLL configuration, AHB/APB prescalers, and peripheral gating.
Cortex-M4 system tick timer for millisecond delays and periodic interrupts.
STM32F4 address space, bit-banding regions, and peripheral base addresses.
Voltage regulator, sleep/stop/standby modes, and wake-up sources.
Reset sources, clock security system, and MCO output configuration.
Direct Memory Access: streams, channels, priority, and double-buffer mode.
Interrupt priority grouping, enabling, pending, and nested interrupt handling.
Single, continuous, injected, and scan conversion modes with DMA transfer.
DAC channels, waveform generation, and DMA-driven signal output.
Interfacing CMOS image sensors, frame capture, and DMA-to-SDRAM transfer.
Driving TFT displays with layering, pixel format, and framebuffer management.
PWM generation, complementary outputs, dead-time insertion, and break input.
32-bit timers: input capture, output compare, encoder, and PWM modes.
16-bit timers for basic timing, PWM, and input capture on limited channels.
Independent and window watchdog configuration for system fault recovery.
Hardware AES, DES, and Triple-DES encryption and decryption with DMA.
True random number generation using the on-chip entropy source.
Hardware SHA-1, SHA-224, SHA-256, and MD5 hashing with HMAC support.
Calendar, alarms, wakeup timer, and backup registers with LSE oscillator.
Master/slave mode, 7/10-bit addressing, DMA transfer, and SMBus support.
Full-duplex, simplex, and multi-master SPI with NSS hardware management.
I2S, PCM, TDM, and AC97 audio streaming with dual block synchronization.
10/100 Mbps Ethernet with MII/RMII, DMA descriptor rings, and lwIP stack.
USB device, host, and OTG modes with CDC, HID, and MSC class examples.
SWD/JTAG debugging, ITM printf, SWO trace, and fault handler analysis.