Design Challenge:

Relay Controlled Camera Flash

In this design challenge we will use a relay to control the flash circuit found in a disposable camera. Specifically we will modify the circuit built in the relay controlled LEDs project.

eye 11.2K
Transimpedance Amplifier

A transimpedance amplifier is a circuit that will produce a scaled output voltage that is proportional to a supplied input current (this type of circuit is often considered a current controlled voltage source).

eye 2.37K
Music Theory Basics

The field of music theory tries to define what music is and how it is made. A key concept from music theory is the use of musical notes. Obviously, musical notes are used to compose songs, so understanding them and how they are organized will prove very useful. In this background topic page, we will examine the notes on a piano and how they are arranged.

eye 14.3K

Defining and Using Arrays

An “array” is essentially a collection of variables stored sequentially in memory. Defining an array is much quicker and more manageable than defining multiple variables. You simply need to indicate the data type of the values the array will store, the name of the array, and the number of values you want to be stored.

eye 2.14K

In programming, a string is simply a series of characters grouped together. Strings provide a convenient way for storing groups of characters, like words or sentences. When dealing with strings, there are two primary types to worry about.

eye 2.82K
Serial Peripheral Interface

This is a basic description of the operation of the Serial Peripheral interface bus (SPI for short). SPI is a common serial communication protocol used to communicate between two or more digital devices.

eye 4.53K
Sine Wave Generator

For this project, we will be expanding on the concepts introduced in the Creating Music With a Piezo Element project by creating a sine wave generator. Instead of rapidly toggling a digital pin high or low to generate an output signal, we will be using an external digital to analog converter (DAC for short) for more control over the signal. Additionally, we will be incorporating potentiometers for volume and frequency control of the sine wave.

eye 7.86K
I2C Basics

In this topic page, we will discuss how I2C works in greater detail.

tag I2C
eye 3.78K
I/O Expander

In this page, we will talk about the MCP23008 I/O Expander IC. This IC is used to expand the number of I/O pins available. It also has a number of features that allow us to configure how pins when set to input react and otherwise behave.

eye 3.22K
Non-Blocking Delays

This page discusses the concept of non-blocking delays as a way to allow multiple periodic events to occur while allowing other functions to run during the time between calls.

eye 8.43K
Shift Registers

An explanation on the benefits of using shift registers.

eye 5.72K
Introduction to Electronic Circuits

Real Digital Project 1

This project presents a brief, non-rigorous introduction to electronic circuits and systems. Only the most essential concepts are presented, with emphasis on topics used in later projects. As with all projects in this module, a companion “Exercise1” document is available for further understanding.

eye 7.40K
Introduction to Digilent FPGA-based Boards

Real Digital Project 2

This project introduces Digilent’s FPGA-based circuit boards and the Adept™ software that is used to program them. In tutorial fashion, Adept is used to download a logic circuit to the board, and that circuit is used in an experiment with basic logic circuits.

eye 4.86K
Logic Circuit Structure with an Introduction to Computer Aided Design (CAD) tools

Real Digital Project 3

This module presents the basic structure of combinational logic circuits, and introduces the use of computer aided design (CAD) tools in modern circuit design.

eye 12.6K
Logic Minimization

Real Digital Project 4

The requirements for new logic circuit designs are often expressed in some loose, informal manner. For an informal behavioral description to result in an efficient, well designed circuit that meets the stated requirements, appropriate engineering design methods must be developed.

eye 15.6K
Introduction to VHDL

Real Digital Project 5

Since the first widespread use of CAD tools in the early 1970's, circuit designers have used both picture-based schematic tools and text-based netlist tools. Schematic tools dominated the CAD market through the mid-1990's because using a graphics editor to build a structural picture of a circuit was easy compared to typing a detailed, error-free netlist.

eye 12.5K
Combinational Circuit Blocks

Real Digital Project 6

This lab introduces several combinational circuits that are frequently used by digital designers, including a data selector (also called a multiplexor or just "mux"), a binary decoder, a seven-segment decoder, an encoder, and a shifter.

eye 8.16K
Combinational Arithmetic Circuits

Real Digital Project 7

This project examines several combinational circuits that perform arithmetic operations on binary numbers, including adders, subtractors, multipliers, and comparators.

eye 9.59K
Digital Circuits and the Basys Board

Project 1, Exercise 1

This Exercise is based on the material covered in Real Digital Project 1.

eye 3.45K
Signal Propagation Delays

Real Digital Project 8

This module considers the time-course of logic signals as they pass through logic circuits. Until now, we have not considered the time required for logic signals to propagate through logic gates and along signal wires.

eye 8.00K
Basic Memory Circuits

Real Digital Project 9

This project introduces the concept of electronic memory. Memory circuits function by storing the voltage present on an input signal whenever they are triggered by a control signal, and they retain that stored voltage until the next assertion of the control (or trigger) signal.

eye 34.0K
Introduction to Digilent FPGA-based Boards

Project 2, Exercise 1

This exercise is based off of the material from Read Digital Project 2. There is a link available to download the PDF of the exercise.

eye 2.94K
Board Verification and Basic Logic Circuits

Project 2, Exercise 2

This exercise is based off of the material from Real Digital Project 2. You will download a .bit file to your board to configure the FPGA with eight different logic circuits. The circuits use buttons and switches for inputs, and LEDs for outputs. You must probe the logic circuits by applying all possible combinations of input signals, and from the results write logic equations that describe the circuit’s behavior.

eye 2.97K
Structural Design of Sequential Circuits

Real Digital Project 10

This project introduces the founding concepts used in the design of sequential circuits.

eye 10.5K