4.6 out of 5
52 reviews on Udemy

FPGA Turbo Series – Advanced LED Control

Design and implement various techniques to control many different types of LEDs.
Your Embedded Systems Guy
424 students enrolled
English [Auto-generated]
Understand and apply various techniques for controlling LEDs.
Improve their skill sets in FPGA development platforms, specifically Vivado's Design Suite.
Have their very own set of working VHDL design files.
Understand the design, theory, and practical application of a LED Matrix.
Control NeoPixel LEDs.
Control the color of RGB (Red Green Blue) LEDs
Build your very own LED Matrix.

This course explains and discusses ways that LEDs are controlled to modify their brightness, change their color, and display messages using LEDs in a matrix configuration. This course discusses and explains the different types of LEDs as well as how to control them. Each project in this course uses each of the different LEDs discussed and requires the student to implement a design on their FPGA to control the LED. Students will be provided with VHDL design files that can be used as starting points for the various design projects. Working with the provided design files and using the lectures as references the students will be able to successfully complete each project. These various projects include:

  • Pulsing Standard LEDs
  • Changing the color of an RGB LED
  • Controlling the color of multiple NeoPixel LEDs
  • Design and build a scrolling LED Matrix Display

Using the lectures, design guides, and the VHDL files provided in this course students will have everything they need to successfully complete each project. The students will get to use Xilinx’s development tools for the design and debugging of their various VHDL designs.

This course is geared towards students who have been exposed to VHDL, FPGA’s, as well as a basic understanding of digital circuits. This is a great supplement to any engineering student who wants to improve upon their hardware design skills before entering the workforce. This course is also great for anyone who is currently employed in the field engineering. Also any electronic hobbyist would benefit greatly from this course!

Upon completing this course students will have all the skills and knowledge to implement multiple forms of LED control on a FPGA. Beings that the students will be designing and debugging their own code they will have very detailed knowledge of how each design works and will be able to expand upon each project if they so desire.



This lecture introduces the course and gives a brief explanation of everything that is covered in the course.


This lecture explains what materials are required in order to complete all the activities and projects.

LED Brightness Control

Controlling LED Brightness

This lecture discusses the methods used to control the brightness of a LED.

Simulating your Pulse Width Modulation Design in Vivado

This is a demonstration that shows how to verify your Pulse Width Modulation design is working correctly.

Pulsing LED Project

This lecture presents the pulsing LED project. Download the attached resources in order to get your pulsing LED project working.

Pulsing LED Project Demonstration

This is a live demonstration of the pulsing LED project running on a BASYS 3 development board.

Multi-Colored (RGB) LED Control

RGB LED Introduction and Control
RGB LED Project

This lecture introduces the RGB LED project. Download the attached resources to get your RGB LED project up and running.

RGB LED Resistor Selection Process

This lecture discusses the method I used for selecting the resistors to use in the RGB LED project.

RGB LED Project Demonstration

This is a live demonstration showing the RGB LED project running on a BASYS 3 development board.

NeoPixel LED Control

LED NeoPixel Introduction and Control

This lecture introduces and explains how to control the NeoPixel LEDs.

NeoPixel Project

This lecture introduces the NeoPixel project. Download the attached resources in order to get your NeoPixel project working.

LED Matrix Display

LED Matrix Introduction and Control

This lecture discusses LED Matrices, their uses, as well as ways to control them.


Download and Install Xilinx's Vivado Design Suite

This lecture walks through step-by-step how to download and install Xilinx’s Vivado Design Suite. This is a free tool created by Xilinx, used to develop and program Xilinx FPGA’s.

Download and Install TeraTerm

This lecture walks through the steps required to download and install the TeraTerm terminal emulator tool.

Creating a Project in Vivado

This lecture walks through step-by-step how to create a project in Xilinx’s Vivado Design Suite. Use this as a reference if you are not familiar with creating projects in Vivado.



This lecture reflects on everything covered in the course.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.6 out of 5
52 Ratings

Detailed Rating

Stars 5
Stars 4
Stars 3
Stars 2
Stars 1
30-Day Money-Back Guarantee


1 hours on-demand video
6 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion