Embedded Systems. STM32 Interrupt-Driven NEC decoder

STM32, ARM Cortex-M4, GPIO, EXTI, Timers, RCC, NVIC, Embedded C, Makefile, STM32F4Discovery, NEC protocol

Hello and welcome to the STM32 Interrupt-Driven NEC Decoder embedded systems course.

What you’ll learn

  • Embedded Systems.
  • STM32 MCU.
  • NEC protocol.
  • Timers/Counters.
  • GPIO.
  • External Interrupts.
  • Nested Vectrored Interrupt Controller.
  • Reset and Clock Control Unit.
  • IR remote control decoding.
  • Timing intervals measurement.

Course Content

  • Setting Up Your Development Environment –> 3 lectures • 8min.
  • Hardware Setup Overview –> 2 lectures • 4min.
  • NEC Protocol Timing Diagram Analysis –> 1 lecture • 5min.
  • MCU System Peripherals Initialization in STM32CubeMX –> 5 lectures • 14min.
  • NEC Decoding Algorithm and Firmware Architecture –> 9 lectures • 36min.

Embedded Systems. STM32 Interrupt-Driven NEC decoder


  • Familiarity with embedded C programming language.
  • Understanding of electrical schematics.

Hello and welcome to the STM32 Interrupt-Driven NEC Decoder embedded systems course.

With mixed hardware and programming-based approach, this course is created to show the practical application of the embedded systems and explain the basics of the STM32 microcontrollers at the same time.

This course provides an overview of the NEC protocol and a practical example of how an infrared remote control can control the LEDs on the STM32F4Discovery board. The course explains the necessary system configuration steps to enable the specific system peripherals and select their operation modes. The GPIO, an external interrupt and a timer compare mode are described in detail. These peripherals are the essential part of the NEC protocol decoder, which is the core part of the course.

The beginning of the course contains an explanation of how to install the GNU ARM toolchain for code compilation and the ST-LINK programmer for flashing the STM32F4Discovery board. There is a brief overview of the Discovery board as well.

By the end of the course, you will become familiar with the STM32 GPIO, the reset and clock control unit, external interrupts, timers and the NVIC. The important peripheral registers and their bits will be considered as well.

The NEC decoding firmware will be tested on the STM32F4Discovery board to prove that everything works as expected.