APPLICATION NOTE 1879

Using Maxim SPI-compatible Display Drivers with other SPI Peripherals

© Feb 10, 2003, Maxim Integrated Products, Inc.

Abstract: This application note discusses techniques to connect Maxim's daisy-chained SPI™-compatible display drivers and GPIO to 3-state SPI devices.

This application note discusses techniques to connect Maxim's SPI™-compatible display drivers to other SPI devices on a common SPI interface. The discussion applies to the MAX6950, MAX6951, MAX6952, MAX6954, MAX6957, and MAX7221 LED drivers, the MAX6850, and MAX6852 vacuum fluorescent display (VFD) controllers, and the MAX7301 general purpose I/O (GPIO) peripheral.

Motorola's serial peripheral interface (SPI) is a flexible synchronous serial interface superset standard. When implemented within a Motorola microcontroller such as one of the M68HC11 family, the SPI serial interface can be configured to send and receive data with a wide degree of flexibility of polarity and timing of the control signals. The operation of the microcontroller's serial interface is specified by configuration register. These register bits set clock polarity (CPOL) and clock phase (CPHA) as well as speed and detail timings for the serial transmissions. Table 1 shows the Maxim and Motorola nomenclature for the SPI interface functions.

Table 1. SPI Interface Connection to a Motorola Microcontroller
Maxim Pin Name
Maxim Pin Function
Connect to Motorola Pin Name
Motorola Pin Function
Implementation
DIN
Slave Data Input
MOSI
Master Output/Slave Input
ECH transmission is 16-bits
DOUT
Slave Data Output
MISO
Slave Output/Master Input
Expected to be a 3-state output
CS
Chip Select Input
SS
Slave Select Output
Set CPHA = 1 (chip/slave select line does not rise at end of each transmitted byte)
CLK
Master Clock Input
SCK
Clock Output
Set CPOL = 0 (slave samples data from master on rising edge of clock)

One issue that may arise is that the Motorola SPI protocol expects all slave devices to use 3-state MISO/DOUT outputs. This architecture allows multiple slaves to be connected to a common MISO/DOUT microcontroller input, and only an addressed slave drives the MISO/DOUT line at any time. The Maxim DOUT pin is, however, not 3-state. The reason for this was that multiple devices were expected to be daisy-chained (cascaded) together by connecting the DOUT of one device to the DIN of the next, and the CLK and CS lines of all devices being driven in parallel. This architecture reduces microcontroller pin count when large numbers of devices are being driven on one serial bus, because only one CS line is required. Since the DOUT of each device is likely to drive the DIN pin of another, the DOUT output remains active. If the DOUT output went high-impedance, the DIN input of a subsequent daisy-chained device would be high-impedance also. The difference between the behaviors is shown in Figures 1 and 2.

Figure 1. Motorola SPI interface timing (CPHA=1, CPOL=0).
Figure 1. Motorola SPI interface timing (CPHA=1, CPOL=0).

Figure 2. Maxim SPI-compatible interface timing.
Figure 2. Maxim SPI-compatible interface timing.

If the application demands that a mix of 3-state and non 3-state devices are mixed on the same SPI bus, the non 3-state devices can be converted to 3-state by adding an analog switch or a 3-state buffer between the DOUT pin and the SPI MISO pin (Figure 3). The analog switch or a 3-state buffer is gated on when CS goes low, selecting the device and enabling the DOUT at the same time.

Suitable single analog switches are the pin compatible MAX4595 and MAX4502 in small SC-70 and SOT-23 packages (Figure 4). Alternatively, one third of a MAX4053 or 74HC4053 triple SPDT switch could be used. Suitable single 3-state buffers are the pin compatible Fairchild TinyLogic NC7SZ125 and TI SN74AHC1G125. The standard 74HC125 contains 4 such 3-state buffers in a single package.

Figure 3. Using an analog switch or 3-state buffer to create a 3-state DOUT.
Figure 3. Using an analog switch or 3-state buffer to create a 3-state DOUT.

Figure 4. MAX4595 and MAX4502 SPST analog switch pinout.
Figure 4. MAX4595 and MAX4502 SPST analog switch pinout.

Figure 5. NC7SZ125 and SN74AHC1G125 pinout.
Figure 5. NC7SZ125 and SN74AHC1G125 pinout.

Related Parts
MAX6850 4-Wire Interfaced, 7-, 14-, and 16-Segment Alphanumeric Vacuum-Fluorescent Display Controller  
MAX6852 4-Wire Interfaced, 5 x 7 Matrix Vacuum-Fluorescent Display Controller  
MAX6950 Serially Interfaced, +2.7V to +5.5V, 5- and 8-Digit LED Display Drivers Free Samples  
MAX6951 Serially Interfaced, +2.7V to +5.5V, 5- and 8-Digit LED Display Drivers Free Samples  
MAX6952 4-Wire Interfaced, 2.7V to 5.5V, 4-Digit 5 x 7 Matrix LED Display Driver Free Samples  
MAX6954 4-Wire Interfaced, 2.7V to 5.5V LED Display Driver with I/O Expander and Key Scan Free Samples  
MAX6957 4-Wire-Interfaced, 2.5V to 5.5V, 20-Port and 28-Port LED Display Driver and I/O Expander Free Samples  
MAX6966 10-Port Constant-Current LED Drivers and I/O Expanders with PWM Intensity Control Free Samples  
MAX7221 Serially Interfaced, 8-Digit, LED Display Drivers Free Samples  
MAX7301 4-Wire-Interfaced, 2.5V to 5.5V, 20-Port and 28-Port I/O Expander Free Samples  
MAX7317 10-Port SPI-Interfaced I/O Expander with Overvoltage and Hot-Insertion Protection Free Samples  


Next Steps
EE-Mail Subscribe to EE-Mail and receive automatic notice of new documents in your areas of interest.
Download Download, PDF Format (61kB)  
Share
Other Channels  Email this page to an associate or friend. 


The content on this webpage is protected by copyright laws of the United States and of foreign countries. For requests to copy this content, contact us.

APP 1879: Feb 10, 2003
APPLICATION NOTE 1879, AN1879, AN 1879, APP1879, Appnote1879, Appnote 1879