FPGA Turbo Series – Advanced LED Control
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
This lecture discusses the methods used to control the brightness of a LED.
This is a demonstration that shows how to verify your Pulse Width Modulation design is working correctly.
This lecture presents the pulsing LED project. Download the attached resources in order to get your pulsing LED project working.
This is a live demonstration of the pulsing LED project running on a BASYS 3 development board.
Multi-Colored (RGB) LED Control
This lecture introduces the RGB LED project. Download the attached resources to get your RGB LED project up and running.
This lecture discusses the method I used for selecting the resistors to use in the RGB LED project.
This is a live demonstration showing the RGB LED project running on a BASYS 3 development board.
NeoPixel LED Control
This lecture introduces and explains how to control the NeoPixel LEDs.
This lecture introduces the NeoPixel project. Download the attached resources in order to get your NeoPixel project working.
LED Matrix Display
This lecture discusses LED Matrices, their uses, as well as ways to control them.
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.
This lecture walks through the steps required to download and install the TeraTerm terminal emulator tool.
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.