Overview
This document provides a set of laboratory examples for the National Instruments LabVIEW for ADI Blackfin Module. In these examples, students can see how to use and develop projects with the LabVIEW for Blackfin Module development environment, which is based on the graphical programming language G. Lessons include: Filters, Fourier Transform, Adaptive Filters, FIR, IIR, DTMF and Sample Rate Conversion. These lessons are designed for the textbook:Embedded Signal Processing with the Micro Signal Architecture by Woon-Seng Gan.
Table of Contents
![]() |
Embedded Signal Processing with the Micro Signal Architecture February 2007
Woon-Seng Gan, Electrical and Electronic Engineering, Nanyang Technological University in Singapore Official Companion Website (Download Companion Material Here) |
Dot Product
This exercise introduces the NI LabVIEW Embedded Module for ADI Blackfin Processors and the process for deploying graphical code on the Blackfin processor for rapid prototyping and verification. This experiment utilizes arrays, functions, and the Inline C node within LabVIEW.
More details about this example
Audio Talk through
A good starting point when implementing audio experiments on the Blackfin processor is the Audio Talk through example. This is useful for testing the audio setup consisting of computer, cables and loudspeakers (or headphone).
More details about this example
Moving Average Filter
This experiment uses the Blackfin FIR Filter VI to perform a moving average filter operation on an audio signal.
More details about this example
Frequency Analysis
This experiment implements the FFT algorithm in the LabVIEW Embedded Module for ADI Blackfin Processors for execution on the Blackfin EZ-KIT to explore the advantages of various windowing implementations. Executing the project in debug mode on the Blackfin processor allows to interact with the LabVIEW front panel and to see the results of the FFT.
More details about this example
LMS Filter
This experiment implements the LMS algorithm with the LabVIEW Embedded Module for ADI Blackfin Processors using C programming. Algorithms written in C can be quickly prototyped in the LabVIEW Embedded, allowing them to be implemented as a subcomponent of the graphical system. Graphical system implementation allows other parts of the system to be abstracted, thus allowing the programmer to focus on the algorithm.
More details about this example
8 Band FIR Filtering (Equalizer)
This experiment implements 8-band FIR filtering on the Blackfin processor using LabVIEW Embedded Module for ADI Blackfin Processors. For this project, we will run in Release mode to take advantage of the excellent speed optimizations when the various debugging features are not necessary. There are two key processing steps in this experiment. First, the single FIR filter Blackfin library function is the only processing VI that modifies the original signal. The computationally intensive portion of this VI is the calculation of the FIR filter coefficients. This filter coefficient calculation is packaged into a subVI for code modularity and is used as a single processing block.
More details about this example
IIR Filter-based Equalizer
In this experiment, we will combine many concepts such as audio input and output, the use of subVIs, and the Inline C Node, to create a 4-band IIR equalizer within the LabVIEW Embedded Module for ADI Blackfin Processors. We use interrupt handling to register the events generated by the Blackfin EZ-KIT push-buttons for updating the band gains during execution on the Blackfin processor.
More details about this example
DTMF Signal Generator
This experiment evaluates the DTMF encoder on the Blackfin EZ-KIT using the LabVIEW Embedded Module for ADI Blackfin Processors. Running the project in debug mode on the target gives us the ability to interact with the graphical front panel interface and dictate which tones are generated by the Blackfin processor. A DTMF decoder will be used to receive and decode the resulting touch-tone signals.
More details about this example
Sample Rate Conversion
This experiment examines a LabVIEW Embedded Module for ADI Blackfin Processors project that employs decimation and interpolation filters to mix signals of different sampling rates. the Blackfin EZ-KIT operates with an audio CODEC that digitizes signals at 48 kHz, which is a common rate for capturing audio signals. It is often desirable to process signals using a lower sampling rate, such as 8000 Hz, which minimizes the amount of computation necessary by reducing the number of samples. Sample rate conversion is commonly used in industrial applications for analyzing and manipulating communication signals, mixing signals from multiple sources, and noise cancellation.
More details about this example
MDCT Implementation and Benchmarking
In this experiment we implement the Modified Discrete Cosine Transform (MDCT) which divides the audio signal into overlapping frequency bands. It later recombines them using the inverse MDCT (IMDCT), to reproduce the signal with minimal distortion. First, we will analyze two methods of implementing the IMDCT in LabVIEW: the direct implementation of the IMDCT and the faster implementation using FFT. Next, the algorithms will be benchmarked with both LabVIEW for Windows and the Blackfin EZ-KIT. Benchmarking will be done by isolating the IMDCT and placing it in a simple structure that can be reused to study the performance of any function within LabVIEW or the LabVIEW Embedded Module for ADI Blackfin Processors.
More details about this example
Basic Image Processing
The extensive libraries of analysis functions in LabVIEW can be applied to both one- and multi-dimensional data. In this experiment, we will explore the effects of basic mathematical operations on a 2D image. The subtraction operation is used to invert the image. Division allows us to reduce the number of quantized values present in the image. Multiplication affects the contrast. We will also explore thresholding, which converts the gray scale image to black and white. These types of operations are common when preparing an image for additional processing or to highlight specific details. For example, inverting an image can often make dark or faint features easier to see with the human eye.
More details about this example
2D Convolution Image Processing
This experiment implements a 2D image filter that consists of a 3 x 3 kernel matrix.
More details about this example
Related Links
- Products and Services: Embedded System Design
- Embedded Signal Processing with the Micro Signal Architecture
Reader Comments | Submit a comment »
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).

