All About Circuits

Latest Digital ICs Technical Articles

Categories

The I2C Bus: Firmware Implementation Details

The I2C Bus: Firmware Implementation Details

Understand the I2C protocol in the context of firmware design and make your projects seamless.


Make a PWM Driver for FPGA and SoC Design Using Verilog HDL

Make a PWM Driver for FPGA and SoC Design Using Verilog HDL

An FPGA is a crucial tool for many DSP and embedded systems engineers. However, the learning curve when getting started can be fairly steep. This project introduces the Quartus II and ModelSim software suites as well as a background on FPGA design flow for system on chip development. The development board used was a Terasic DE1-SoC, which has the Altera Cyclone V SoC chip. This IC contains an FPGA and an integrated ARM Cortex A9 as a hard processor system.


Understanding the Successive Approximation Register ADC

Understanding the Successive Approximation Register ADC

One of the most common analog-to-digital converters used in applications requiring a sampling rate under 10 MSPS is the Successive Approximation Register ADC. This ADC is ideal for applications requiring a resolution between 8-16 bits.


Build an Object Detection DC Motor Controller

Build an Object Detection DC Motor Controller

In this continuing series of Building Raspberry Pi Controllers, you'll learn how to build a object detection control circuit for operating a small DC motor using a photocell.


Projects Dec 27, 2015 by Don Wilcher
Implementing a Finite State Machine in VHDL

Implementing a Finite State Machine in VHDL

Impress your friends and family by learning how to implement a finite state machine in VHDL


The I2C Bus: Hardware Implementation Details

The I2C Bus: Hardware Implementation Details

This article covers information essential for understanding and designing the hardware needed for an I2C bus.


Download Your First Program Using ARM mbed and KEIL MDK V5

Download Your First Program Using ARM mbed and KEIL MDK V5

The FRDM-K64F is a development platform which utilises the MK64FN1M0VLL12 microcontroller. This tutorial includes how to download a simple blinky example onto the FRDM-K64F using the ARM mbed online IDE and KEIL MDK. Details of the GPIO module configuration are included.


Projects Dec 17, 2015 by Elliott Smith
Introduction to the I2C Bus

Introduction to the I2C Bus

This article covers the essential characteristics and prominent advantages of the Inter–Integrated Circuit (aka I2C) serial-communications protocol.


Make a Wireless Thermometer with a PIC Microcontroller

Make a Wireless Thermometer with a PIC Microcontroller

Getting more familiar with a PIC MCU is a matter of working more often with it. Learn how to make a wireless thermometer with a PIC microcontroller.


How to Build a Wall-Following Robot

How to Build a Wall-Following Robot

This is the final part in a series of articles on building a robot that can follow lines or walls and avoid obstacles!


Convert a Vintage Thermostat into a Modern Energy Saver

Convert a Vintage Thermostat into a Modern Energy Saver

Programmable thermostats can save a lot of energy and money. But you don't have to buy one- you can convert an old mechanical thermostat into a programmable thermostat using an Arduino and a servo.


Understanding Analog-to-Digital Converters: Deciphering Resolution and Sampling Rate

Understanding Analog-to-Digital Converters: Deciphering Resolution and Sampling Rate

Resolution and sampling rate are two important factors to consider when selecting an analog-to-digital converter (ADC). In order to understand these fully, concepts such as quantisation, and the Nyquist Criterion must be understood to a certain degree.


Everything You Need to Know About Direct Digital Synthesis

Everything You Need to Know About Direct Digital Synthesis

Direct Digital Synthesis is used to generate precise analog waveforms that can quickly change frequencies. It's used in test equipment, spread spectrum techniques and to enable frequency sweeps.


Use LaunchPad to Make a Laser Tripwire Alarm

Use LaunchPad to Make a Laser Tripwire Alarm

Use the Analog to Digital Converter (ADC) feature of LaunchPad to build a laser tripwire alarm. This is a great way to familiarize yourself with LaunchPad while simultaneously making something cool.


Projects Nov 18, 2015 by Tim Youngblood
Use an Arduino to Convert an Old Mechanical Thermostat into a Programmable Thermostat

Use an Arduino to Convert an Old Mechanical Thermostat into a Programmable Thermostat

Programmable thermostats can save a lot of energy and money. But you don't have to buy one. You can convert an old mechanical thermostat into a programmable thermostat using an Arduino and a servo.


Create Your First Application with TI’s LaunchPad

Create Your First Application with TI’s LaunchPad

Texas Instruments' LaunchPad makes developing applications with MSP430 microcontrollers easy and fast. Learn all about it and create your first application.


Projects Nov 08, 2015 by Tim Youngblood
Universal Logic Gates

Universal Logic Gates

NAND and NOR gates are widely known to be universal logic gates, meaning that any other logic gate be made from NAND or NOR gates. This article discusses other universal logic gates.


Introduction to the RFM69HW Transceiver

Introduction to the RFM69HW Transceiver

This handy introduction teaches you all about the RFM69HW transceiver module using two circuits running a wireless version of the "blinky" code.


How to Use a Rotary Encoder in an MCU-Based Project

How to Use a Rotary Encoder in an MCU-Based Project

Learn how to use a rotary encoder in an Arduino project. Rotary encoders are electromechanical, electro-optical or electro-magnetic devices which convert rotational motion into digital or analog information.


Projects Nov 01, 2015 by Tim Youngblood
Make a Wireless Thermometer with Arduino

Make a Wireless Thermometer with Arduino

Learn how to use a 433MHz RF module with an ATMega 328P-PU. In this article, we'll make a circuit with a DHT11 sensor and a RF transmitter. We'll also make a receiving circuit with a 433MHz RF receiver and an LCD display.