STM32 Boards

STM32F407G Discovery board

General Concepts
How to Use the Volatile Keyword and Its Importance in Embedded C
How to Create and Initialize a Structure in C
How to Access Elements of a Structure in C
How to Get the Size of a Structure in C
How to Create a C Structure of a Register Map of an STM32 Microcontroller Board
What is the Alternate Function Mode of a GPIO Pin of an STM32F4xx Discovery Board?
Alternate Function Low Register vs. Alternate Function High Register for a STM32F4xx Discovery Board
What are ADC Regular Sequence Registers?
SYSCLK, HCLK, PCLK1, and PCLK2 Clock Signals Explained in an STM32F4xx Microcontroller Board
HSI vs HSE Clock in an STM32F4xx Microcontroller Board- Explained
How to Print a Debug Statement through Serial Wire Viewing in an STM32F4xx Discovery Board
How to Print a Debug Statement through OpenOCD Semihosting in an STM32F4xx Discovery Board
Memory Mapped Registers vs Non Memory Mapped Registers in STM32 Boards- Explained Stack Memory in a Cortex-M4 Processor- Explained
How Push-Pull Output Configuration Works in an STM32 Board
How Open-drain Output Configuration Works in an STM32 Board
Push-Pull vs Open-Drain Output Configuration in an STM32 Board
When to Use Internal or External Pull-up or Pull-down Resistors in an STM32 Board
How to Debug an Addr Flag Not Setting with the I2C Communication Protocol with an STM32 Microcontroller Board

Calculators
Analog-to-digital Conversion (ADC) Calculator
Systick Reload Value Register Calculator

Nucleo STM32F446 Board
Concepts
How to Configure a PLL Clock from an HSI Clock Source in a Nucleo STM32F446 Board in C
How to Transmit Data with the UART Communication Protocol with a Nucleo STM32F446 Board in C
How to Transmit a String (Hello World Program) with the UART Communication Protocol with an STM32F446 Microcontroller Board in C
How to Receive Data with the UART Communication Protocol with a Nucleo STM32F446 Board in C
How to Create a Delay using the SysTick Timer with an STM32 Board in C
How to Create a Delay using a General-purpose Timer with an STM32F446 Board in C
How to Toggle an LED with a Timer in Output Compare Mode with an STM32F446 Board in C
How to Measure a Signal using a Timer in Input Capture Mode in an STM32F446 Microcontroller Board in C
How to Create a UART Receiver Interrupt Driver with an STM32F446 Microcontroller Board in C
How to Create a SysTick Timer Interrupt Driver with an STM32F446 Microcontroller Board in C
How to Create a Timer Interrupt Driver with an STM32F446 Microcontroller Board in C
How to Create an ADC Interrupt Driver with an STM32F446 Microcontroller Board in C
How to Configure a General-purpose Timer for PWM Output with an STM32F446 Microcontroller Board in C
How to Create an I2C Driver with an STM32F446 Microcontroller Board in C
How to Transmit Data from Direct Memory Access (DMA) to a Peripheral Device with an STM32F446 Microcontroller Board in C
What Clock Frequency Does a USB Module Need in an STM32F446 Board?
Circuits
How to Build an ADXL345 Accelerometer Circuit using the I2C Protocol with an STM32F446 Microcontroller Board in C
How to Build an ADXL345 Accelerometer Circuit using the SPI Protocol with an STM32F446 Microcontroller Board in C


STM32F407G Discovery Board
Concepts
STM32F407G Bus Architecture
STM32F407G Clock Tree- Explained
How to Select Alternate Functionality for a GPIO pin with an STM32F407G Discovery Board in C
How to Select a GPIO pin to Be the Source Input of an External Interrupt for an STM32F407G Discovery Board in C
How to Enable the Peripheral Clock for a Peripheral Device on a STM32F407G Discovery Board in C
How to Configure the Prescaler for a Bus with an STM32F407G Discovery Board in C
How to Configure the Prescaler for an MCO pin with an STM32F407G Discovery Board in C
How to Set up the External Oscillator (HSE) Clock in an STM32F407G Discovery Board in C
How to Calibrate the HSI Clock Signal in an STM32F407G Discovery Board in C
How to Configure the Priority Group of the Cortex-M4 Processor of an STM32F407G Discovery Board in C
How to Enable or Disable a System Exception of the Cortex-M4 Processor in an STM32F407G Discovery Board in C
How to Set the Priority of a System Exception of the Cortex-M4 Processor in an STM32F407G Discovery Board in C
How to Switch the Stack Pointer to PSP in an STM32F407G Discovery Board in C
Reference Code
C Structure Code of the GPIO Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the RCC Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the SYSCFG Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the EXTI Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the SPI Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the I2C Register Map of an STM32F407xx Microcontroller Board
C Structure Code of the USART Register Map of an STM32F407xx Microcontroller Board
Projects
How to Turn on an LED on a STM32F407G Discovery Board in C
How to Create a Blinking LED Circuit with a STM32F407G Discovery Board in C
How to Read Input from an I/O Pin on a STM32F407G Discovery Board in C
How to Create a Push Button Circuit with a STM32F407G Discovery Board in C
How to Build a Keypad Circuit with an STM32F407G Discovery Board in C
How to Build a Motion Detector Circuit with an STM32407G Discovery Board in C
How to Build a Motion Detector Security System Circuit with an STM32F407G Discovery Board in C
How to Output a Clock Signal from a Microcontroller Clock Output (MCO) Pin with an STM32F407G Discovery Board in C
How to Perform Analog to Digital Conversion with an STM3F407G Discovery Board in C
How to Build a Potentiometer Circuit with an STM32F407G Discovery Board in C
How to Build a Temperature Sensor Circuit using an External LM34 IC with an STM32F407G Discovery Board in C
How to Enable a GPIO pin to Function as the Source of an External Interrupt on an STM32F407G Discovery Board in C
How to Set the Priority of an External Interrupt in an STM32 Microcontroller Board in C
How to Transmit Data with the SPI Communication Protocol with an STM32F407G Discovery Board in C