LTC1605-1/LTC1605-2
16
160512fa
For more information www.linear.com/LTC1605-1
Typical applicaTions
The circuit in Figure 16 is an example showing the
LTC1605 16-bit A/D converter and LTC1391 8-channel
MUX connected to a 68HC11 controller. The LTC1605’s
16-bit data output is read in two 8-bit bytes using Pins
6 (MSB, Bit7) through 13 (Bit8, Bit0), connected to the
HC11’s PORTC. The MUX’s 4-bit serial address data is
sent using the controller’s SPI.
The process to convert a channels input signal is shown
in sample listing A. It begins with shifting in the MUX’s
channel data while the SS signal is a logic high. The MUX
channel address is latched on the falling edge of SS and
the chosen channels input is applied at the LTC1605’s
input, Pin 1. Through the processors PORTA, a low-going
pulse is applied to the LTC1605’s R/C pin, initiating a con
-
version. The processor then monitors the BUSY
output.
When this signal becomes a logic high, signaling the end
of conversion, the processor reads the high byte of the
conversion through PORTC. The low byte is read through
PORTC when the processor changes the BYTE signal to a
logic high. The timing relationship of the control signals
and data are shown in Figure 17.
Sample Listing A
*************************************************************************
* *
* This example program selects the an LTC1391 MUX channel, initiates a *
* conversion, and retrieves conversion data. It stores the 16-bit data *
* in two consecutive memory locations. The program is designed for use *
* with the LTC1605’s /CS tied to ground (see timing diagram in *
* Figure 17). *
* *
*************************************************************************
*
*****************************************
* 68HC11 register denitions *
*****************************************
*
PORTA EQU $1000 Parallel port A
* Use Bit0 as an input for the LTC1605’s /BUSY signal
* Use Bit3 as an output driving the LTC1605’s BYTE
* input
PIOC EQU $1002 Parallel I/O control register
* “STAF,STAI,CWOM,HNDS, OIN, PLS, EGA,INVB”
PORTC EQU $1003 Port C data register
* “Bit7,Bit6,Bit5,Bit4,Bit3,Bit2,Bit1,Bit0”
DDRC EQU $1007 Port D data direction register
* “Bit7,Bit6,Bit5,Bit4,Bit3,Bit2,Bit1,Bit0”
* 1 = output, 0 = input
PORTD EQU $1008 Port D data register
* “ - , - , SS* ,CSK ;MOSI,MISO,TxD ,RxD “
DDRD EQU $1009 Port D data direction register
SPCR EQU $1028 SPI control register
* “SPIE,SPE ,DWOM,MSTR;SPOL,CPHA,SPR1,SPR0”
SPSR EQU $1029 SPI status register
* “SPIF,WCOL, - ,MODF; - , - , - , - “
SPDR EQU $102A SPI data register; Read-Buer; Write-Shifter
*
* RAM variables to hold the LTC1605’s 14 conversion result
*
DIN1 EQU $00 This memory location holds the LTC1605’s bits 15 - 08
DIN2 EQU $01 This memory location holds the LTC1605’s bits 07 - 00
MUX EQU $02 This memory location holds the MUX address data
*
LTC1605-1/LTC1605-2
17
160512fa
For more information www.linear.com/LTC1605-1
Typical applicaTions
*****************************************
* Start GETDATA Routine *
*****************************************
*
ORG $C000 Program start location
INIT1 LDAA #$03 0,0,0,0,0,0,1,1
* “STAF=0,STAI=0,CWOM=0,HNDS=0, OIN=0, PLS=0, EGA=1,INVB=1”
STAA PIOC Ensures that the PIOC register’s status is the same
* as after a reset, necessary of simple Port D manipulation
LDAA #$00 0,0,0,0,0,0,0,0
* “Bits 7 - 0 are used as inputs for the LTC1605’s data
STAA DDRC Direction of PortD’s bit are now set as inputs
LDAA #$2F -,-,1,0;1,1,1,1
* -, -, SS*-Hi, SCK-Lo, MOSI-Hi, MISO-Hi, X, X
STAA PORTD Keeps SS* a logic high when DDRD, Bit5 is set
LDAA #$38 -,-,1,1;1,0,0,0
STAA DDRD SS* , SCK, MOSI are congured as Outputs
* MISO, TxD, RxD are congured as Inputs
* DDRD’s Bit5 is a 1 so that port D’s SS* pin is a general output
LDAA #$50
STAA SPCR The SPI is congured as Master, CPHA = 0, CPOL = 0
* and the clock rate is E/2
* (This assumes an E-Clock frequency of 4MHz. For higher
* E-Clock frequencies, change the above value of $50 to a
* value that ensures the SCK frequency is 2MHz or less.)
GETDATA PSHX
PSHY
PSHA
*
*****************************************
* Setup indices *
*****************************************
*
LDX #$0 The X register is used as a pointer to the memory
* locations that hold the conversion data
LDY #$1000
*
*****************************************
* Ensure that a logic high is applied *
* to the LTC1391’s /CS and the *
* LTC1605’s R/C pins *
*****************************************
*
BSET PORTD,Y %00100000 This sets the SS* output bit to a logic
* high, ensuring that the LTC1391’s CS*
* input is a logic high while clocking
* MUX address data into the LTC1391
BSET PORTA,Y %00010000 This sets the R/C* output bit to a logic
* high, ensuring that the LTC1605’s R/C*
* input is a logic high before initiating
* a conversion
*****************************************
LTC1605-1/LTC1605-2
18
160512fa
For more information www.linear.com/LTC1605-1
Typical applicaTions
* Retrieve the MUX address from memory *
* and send it to the LTC1391 *
*****************************************
*
LDAA MUX Retrieve the MUX address from memory
ORAA #$08 Enable the selected MUX address
STAA SPDR Select the MUX channel
WAIT1 LDAA SPSR This loop waits for the SPI to complete a serial
* transfer/exchange by reading the SPI Status Register
BPL WAIT1 The SPIF (SPI transfer complete ag) bit is the SPSR’s
* MSB and is set to one at the end of an SPI transfer. The
* branch will occur while SPIF is a zero.
BCLR PORTD,Y %00100000 This forces a logic low on PORTD’s SS*,
* latching the MUXes data
*
*****************************************
* Initiate a LTC1605 conversion *
*****************************************
*
BCLR PORTA,Y %00010000 Initiate a conversion
BSET PORTA,Y %00010000 This sets the LTC1605’s R/C* to a logic
* high
*
*****************************************
* Set the LTC1605’s BYTE input low to *
* ensure that the high byte is present *
* during the rst read *
*****************************************
*
LDAA PORTA Get the contents of Port A
ANDA #%11110111 Set Bit3 low
STAA PORTA Set the LTC1605’s BYTE input low
*
*****************************************
* The next short loop ensures that the *
* LTC1605’s conversion is nished *
* before starting the data transfer *
*****************************************
*
CONVEND LDAA PORTA Retrieve the contents of port A
ANDA #%00000001 Look at Bit0
* Bit0 = Lo; the LTC1605’s conversion is not
* complete
* Bit0 = Hi; the LTC1605’s conversion is complete
BEQ CONVEND Branch to the loop’s beginning while Bit7
* remains low
*

LTC1605-1CG#PBF

Mfr. #:
Manufacturer:
Analog Devices Inc.
Description:
Analog to Digital Converters - ADC 100ksps 16-Bit ADC 0V to 4V
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union