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 4.25K
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 1.12K
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 1.16K

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 1.07K

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 1.21K
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 2.06K
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 2.76K
I2C Basics

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

tag I2C
eye 1.45K
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 1.12K
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.

Shift Registers

An explanation on the benefits of using shift registers.

eye 2.19K
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 2.28K
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 1.60K
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 3.93K
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 3.19K
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 3.04K
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 3.41K
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 3.04K
Digital Circuits and the Basys Board

Project 1, Exercise 1

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

eye 1.63K
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 1.77K
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 1.96K
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 1.49K
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 1.31K
Structural Design of Sequential Circuits

Real Digital Project 10

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

eye 4.09K