Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Tutorial
NI Supported: Yes
Publish Date: Oct 18, 2006


Feedback


Yes No

Related Links - Developer Zone

Related Links - Products and Services

Creating an LCD Daughter Card for the NI SPEEDY-33

1 ratings | 1.00 out of 5
Print

Overview

This document describes how to build an LCD daughter card for use with the NI SPEEDY-33. This document covers part selection, schematic design, layout, and fabrication of the hardware and also outlines how to create an API that can interface with the LCD controller using the LabVIEW DSP Module. The example program is a graphic equalizer application that acquires analog input from the SPEEDY-33 and displays the frequency content on an LCD. You can download the API and the final DSP VI from the Downloads section at the end of this document.

Part Selection

Open the SPEEDY-33 LCD Daughter Card BOM 1.0.xls spreadsheet (attached below) to view a list of the suggested manufacturers and part numbers of the hardware you need for this project. You also need a printed circuit board (PCB) to mount the LCD on before mounting the entire daughter card to the SPEEDY-33. Refer to the Schematic Design section for more details about designing and manufacturing a custom PCB for this project.

The most important aspect of creating an SPEEDY-33 LCD daughter card is choosing an LCD that is compatible with the SPEEDY-33 hardware. The main considerations for the LCD are physical size, interface complexity, and power consumption.

The physical size of the LCD should be large enough to display relevant information, but not so large that the LCD prevents access to the physical connectors on the SPEEDY-33 or creates mechanical strain on the SPEEDY-33 headers. The complexity of the LCD interface should be as simple as possible so that the SPEEDY-33 can use resources for signal processing, rather than display updating. Finally, choose an LCD with minimum power consumption for best use of SPEEDY-33 resources. Power consumption is not usually a problem for basic LCD displays, but LCDs with backlights, for example, possibly could draw more current than the SPEEDY-33 can source.

The Lumex LCM-S01604DSR 16 x 4 character LCD fits the above criteria well. This LCD has an adequate display size, draws minimal current, and uses an integrated LCD controller with a 4-wire bus mode.

The interface between the LCD and the SPEEDY-33 is the next most important part of the design. The interface requires a buffer because the SPEEDY-33 has separate input and output lines, the LCD controller has a single input and output bus, and the LCD display requires 3 control lines. In this project, a digital output on the SPEEDY-33 controls whether the buffer drives the bus with the SPEEDY-33 digital outputs or goes into a high impedance state. With 4 bus inputs, 4 bus outputs, 1 buffer control line, and 3 display control lines, the SPEEDY-33 has 4 digital inputs remaining that we will connect to digital pull-down switches in this design.

In addition, the buffer you choose must be compatible with two different voltages because the SPEEDY-33 digital I/O lines use 3.3 V logic (5 V tolerant) and the LCD module uses 5 V logic. The Texas Instruments SN74LS125AD quad buffer is a good choice for this project because the buffer uses 5 V logic, but 2 V registers as a logic high.

You can use the remaining parts listed in the spreadsheet or substitute them as needed. A 10 µF capacitor filters the supply voltage of the buffer. A 10 kΩ potentiometer adjusts the contrast of the display. Several sizes of .100" headers connect the LCD module to the PCB and the PCB to the SPEEDY-33. Refer to the Specifications of the External Connectors on the NI SPEEDY-33 article (linked below) for more information about the header requirements of the SPEEDY-33. Finally, standoffs, screws, and nuts physically connect the LCD and PCB together.

Schematic Design


You can use ExpressPCB to design and order the PCB for the SPEEDY-33 LCD daughter card. The ExpressPCB CAD software is free and you can download the software from the ExpressPCB web site. To view the attached schematic and board layout, you need to install ExpressPCB on your computer. Refer to the ExpressPCB Web site (www.expresspcb.com) for more information about ExpressPCB.

The schematic in Figure 1 illustrates the connections on the PCB for the LCD module that allow interface with a 2-way bus. The schematic also shows the pull-down circuitry of the switches, the filter capacitor, and power connections. The potentiometer, which adjusts the contrast of the LCD, is parallel to two series resistors. The design for this project requires that you populate either the potentiometer or the two resistors, but not both. Individual resistor values may vary from the ones shown to achieve the desired (fixed) contrast.


[+] Enlarge Image

Figure 1. Partial Schematic for the SPEEDY-33 LCD Daughter Card

Open the Speedy-33 LCD Daughter Card_v1.0.sch file (attached below) in the ExpressPCB software to view the entire schematic.

Layout


Board layout is not extremely important for the SPEEDY-33 LCD daughter card because the design does not include particularly high-speed digital logic. However, try to minimize trace lengths and layer transitions for better performance.

Using a two-layer fabrication method allows for a ground plane as well as north-south, east-west routing on separate layers. In this design, the top layer contains pads for surface mounting and through-hole components and all north-south routing. The bottom layer contains pads for all through-hole components, the ground plane, and all east-west routing. Four holes are included in the layout to facilitate physical mounting of the LCD module to the LCD PCB.

For some older SPEEDY-33 boards, you must remove a keep-out region outlined in the lower left corner of the PCB before attaching the PCB to the SPEEDY-33. This keep-out region accommodates a large electrolytic power supply capacitor that extends over half an inch from older SPEEDY-33 boards. However, this capacitor will not interfere with the LCD display PCB.



Figure 2. PCB Layout for the SPEEDY-33 LCD Daughter Card

You also can open the SPEEDY-33 LCD Daughter Card_v1.0.pcb file (attached below) in the ExpressPCB software to view the layout.

Fabrication


ExpressPCB provides a very efficient means for prototyping a small quantity of SPEEDY-33 LCD daughter cards. Using ExpressPCB CAD software, we ordered the boards online. It is important to note that the MiniBoard service we used for this layout does not include a silkscreen layer. Therefore, you might want to print out the individual layers of the board from the layout software to facilitate component placement.

After you populate the board with the small number of components and connectors, you must physically connect the LCD module to the PCB. The layout provides holes where you put standoffs to space the LCD module and the PCB. After physically mounting the two together, use both 1 x 8 headers to bridge the gap between the boards (J5 in Figures 1 and 2). Then solder the connectors in place. Be sure to use as little solder as necessary on the boards in case you need to separate the boards later for troubleshooting or repair.

Once you assemble and test the LCD module and LCD PCB, connect the PCB to the headers on the top side of the SPEEDY-33. Before powering on the complete system, first apply power to the LCD/PCB assembly to check for minimal current consumption.

Caution Be sure to review the electrical specifications of the SPEEDY-33 to avoid potential damage to the SPEEDY-33 from power supply shorting. Refer to the Specifications of the External Connectors on the NI SPEEDY-33 document (linked below) for more information about proper pin connections and power specifications.

API


Providing an application programming interface (API) is an efficient way to control the SPEEDY-33 LCD daughter card. The API exposes the functionality inherent to the Samsung S6A0069 LCD driver and controller so you can write DSP VIs to easily display text on the LCD, as well as access some of the more advanced custom character features of the controller. You do not have to use line-level digital communications with the controller if you download the API in the LCD API.zip file (attached below).

When creating an API for the SPEEDY-33, you should keep the design complexity to a minimum. The more case structures, loops, coercions, and so on that you use, the greater the size and execution time of the end application. Try to use built-in functions as much as possible to simplify the main program. In addition, hierarchical applications, such as multi-layer APIs, should be as flat as possible because nesting increases complexity more than flat architectures. The SPEEDY-33 LCD daughter card API uses only a few subVIs, This API even unrolls some of the more commonly used VIs, such as the Initialization VI, to improve the performance. However, some VIs still use subVIs and coercion because further optimization hinders the modularity of the API.

The attached LCD API compiles and performs well.



Figure 3. Block Diagram for a VI in the SPEEDY-33 LCD Daughter Card API

Download the LCD API.zip file (attached below) and unzip the SPEEDY-33 LCD daughter card API. Extract the files into a new folder labeled LCD API.

Example Program


You can create a graphical equalizer display using the LCD API and the SPEEDY-33 LCD daughter card. Download Graphic EQ.vi (attached below) and place the VI in the folder containing the LCD API folder.

The Graphic EQ VI uses the Spectral Measurements Express VI to perform the FFT of incoming audio data in real time. The Graphic EQ VI then passes the output FFT to the EQ Display VI, which is part of the SPEEDY-33 LCD daughter card API. The EQ Display VI displays on the LCD a logarithmic frequency representation of the spectral content of the audio data. Additionally, the VI scales audio data by a factor that the buttons on the LCD module control.


[+] Enlarge Image

Figure 4. The Graphic EQ VI Front Panel

Related Links:
Developer Zone Concept Document: Specifications of the External Connectors on the NI SPEEDY-33
Developer Zone Application Note: Connectors and Indicators for the NI SPEEDY-33
Manuals: NI SPEEDY-33 User Manual

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/).