
Overview of what you will learn in this course. At the end, you will be an expert on SPI and have working VHDL and Verilog code that you can use in your own projects! Also a neat demo with real hardware!
This lecture introduces the basics of SPI. I show where SPI is commonly used. I explain how the signals such as Clock, MISO, MOSI, and CS each work. I show data is passed from master to slave and from slave to master. After this lecture you will understand the fundamentals of SPI and be ready to start implementing the code.
In this video I give you a quick overview of the hardware that I'm using. None of this is required to be successful in this course, but it's helpful to have real hardware (FPGA) to actually program you code on to.
This lesson shows you the VHDL code for the SPI Master. I walk through the code line by line and explain how it's working.
This lesson simulates the SPI Master in VHDL introduced in the previous lesson. I show you how to run a testbench right in your browser window, so no downloads are required!
Chip Select is very commonly used. This lesson adds Chip-Select functionality to the SPI Master. This allows for multi-byte transactions. I will walk you through line-by-line how this module works.
A quick lesson to simulate the chip-select code introduced in the previous video. I show you how the simulation works and ensure that the waveforms look correct.
This lesson shows you the Verilog code for the SPI Master. I walk through the code line by line and explain how it's working.
This lesson simulates the SPI Master in Verilog introduced in the previous lesson. I show you how to run a testbench right in your browser window, so no downloads are required!
Chip Select is very commonly used. This lesson adds Chip-Select functionality to the SPI Master. This allows for multi-byte transactions. I will walk you through line-by-line how this module works.
A quick lesson to simulate the chip-select code introduced in the previous video. I show you how the simulation works and ensure that the waveforms look correct.
This is it! What we have been working toward! This video shows you an application of our SPI Master code in both VHDL and Verilog. In it, I read data from an Analog to Digital Converter (ADC) to get the brightness of the room. I then use that value to control the brightness of a display on the board.
Everyone needs a fun demo to show off what you've learned, and this is it!
Everything we discussed, all links are here!
This course will take you through the basics of SPI communication. I will explain how the interface works, what each signal does, and talk about how master to slave communication is possible. I then go through both the VHDL and Verilog code for an SPI Master controller and show how to communicate with a peripheral device.