MICRO-ELECTRONICS MLX90308CCCLW

MLX90308CCC
Programmable Sensor Interface
Features and Benefits
Microprocessor-controlled signal conditioning for bridge-type sensors
Suited for low-cost sensors: reduction of non-linearity by programmable coefficients
External or internal temperature sensor for compensating temperature errors
Versatile output signal ranges: 4, 5, 10, or 11VDC; 4 to 20 mA loop
Mass calibration easy with 2400 or 9600 baud UART
Power supply from 6 to 35VDC
Applications
Pressure transducers
Accelerometers
Temperature sensor assemblies
Linear position sensors
Ordering Information
art No.
Temperature Suffix
MLX90308CCC L
MLX90308CCC L
Package
LW
UD*
Option
Temperature Range
-40C to 140C
-40C to 140C
*UD denotes unpackaged die
Description
The MLX90308CCC is a dedicated microcontroller which performs signal conditioning for sensors wired in
bridge or differential configurations. Sensors that can be used include thermistors, strain gauges, load cells,
pressure sensors, accelerometers, etc. The signal conditioning includes gain adjustment, offset control, high
order temperature and linearity compensation. Compensation values are stored in EEPROM and are reprogrammable. Programming is accomplished by using a PC, with an interface circuit (level shifting and glue
logic), and provided software.
The application circuits can provide an
output of an absolute voltage, relative
voltage, or current. The output can be
range limited with defined outputs when
the signal is beyond the programmed
limits. Other features include alarm
outputs and level steering. The robust
electrical
design
allows
the
MLX90308CCC to be used where most
signal conditioning and sensor interface
circuits cannot be used. Voltage
regulation control is provided for absolute
voltage and current modes (external FET
required).
The standard package is a plastic
SO16W. The device is static-sensitive and
requires ESD precautions.
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 1
Page
22/Aug/98
Rev 2.2
Page 1
23/Oct/01
MLX90308CCC Programmable Sensor Interface
Page 2
GND
TMP
VBN
VBP
VDD
VDD1
INV
OFC
x2
Rev 2.2
Internal
Temp Sensor
FLT
1.24kOhm
23/Oct/01
0.48V/V
0.97V/V
DAC
Microprocessor
ADC
Digital
Analog
TSTB
Temperature signal. Used by
microproscessor to perform
0V
temperature linearity corrections.
ADC
3.5V
Fine Gain DAC
GAIN
2-bit
CSGN
Figure 1. Functional Block Diagram
Temp Amp Gain
GNTP [1:0]
Coarse Offset
Hardware Gain = 20
x 10
OPA
DAC_Offset
External
Temp Sensor
0V
3.5V
Supply Regulator
FET
Voltage Mode
GAIN
1-bit
CSGN
GAIN
Current Mode
COMS
IO1
IO2
VMO
CMN
CMO
MLX90308CCC
Programmable Sensor Interface
MLX90308CCC
Programmable Sensor Interface
Table 1. MLX90308 Electrical Specifications
DC operating parameters: TA = -40 to 140oC, VDD1 = 6 to 35VDC (unless otherwise specified).
Parameter
Symbol
Test Conditions
Input voltage range
VIN
VDD1 (Regulator connected)
Supply current
IDD
@ TA = 100ºC Current Mode
Supply current
IDD
@ TA = 100ºC Voltage Mode
Regulated supply voltage
VREG
Min
Typ
Max
Units
Regulator & Consumption
Regulated voltage
temperature coefficient
Supply rejection ratio
6
35
2.1
4.5
4.75
mA
5.0
mA
5.2
V
-600
PSRR
VDD1 > 6V
90
V
uV / ºC
dB
Instrumentation Amplifier
Differential input range
VBP-VBN
IINV = 0
-11.0
32.0
mV/V(Vdd)
Differential input range
VBP-VBN
IINV = 1
-32.0
11.0
mV/V(Vdd)
Common mode input range
1/2(VBP+VBN)
38.0
65.0
%VDD
Pin leakage current
Pins VBP & VBN to GND, VDD =
8.0
nA
Common mode rejection
CMRR
60
Hardware gain
Coarse offset control Range
Fixed offset control range
dB
18
22
CSOF[1:0] = 00
-15.3
-13.9
mV/V
CSOF[1:0] = 01
-5.1
-3.8
mV/V
CSOF[1:0] = 10
3.8
5.1
mV/V
CSOF[1:0] = 11
13.9
15.3
mV/V
High
6.0
8.0
mV/V
Low
-7.0
-5.0
mV/V
IA chopper frequency
300
V/V
kHz
Gain Stage
Course gain
CSGN = 000
3.0
3.3
V/V
(Fixed Gain = 1023)
CSGN = 001
4.9
5.4
V/V
CSGN = 010
8.0
8.8
V/V
CSGN = 011
12.8
14.1
V/V
CSGN = 100*
7.9
8.7
V/V
CSGN = 101*
12.7
14.0
V/V
* CSGN = 100 to 111: voltage mode
only, not applicable to current mode.
Output > 6.5V; MSB = 1
Output < 6.5V; MSB = 0
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 3
Page
22/Aug/98
Rev 2.2
Page 3
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 1. MLX90308 Electrical Specifications (continued)
DC operating parameters: TA = -40 to 140oC, VDD1 = 6 to 35VDC (unless otherwise specified).
Parameter
Coarse gain
Test Conditions
CSGN = 110*
Min
20.4
CSGN = 111*
Typ
Max
23.0
Units
V/V
33.1
36.6
V/V
Fixed gain control range
0.480
0.970
V/V
Digital Mode & Current Mode Coarse Gain Stage
Course Gain
CSGN = 00
1.05
1.17
V/V
CSGN = 01
1.71
1.89
V/V
CSGN = 10
2.77
3.06
V/V
CSGN = 11
4.48
4.95
V/V
CSGN[2:2] = 0
4.5
6.5
V
Gain
2.74
3.04
V/V
CSGN[2:2] = 1
6.5
11
V
Gain
7.24
7.86
V/V
-0.2
V
Voltage Mode Output Stage ( See Voltage Mode)
Output voltage span
Minimum output voltage
Output source current
2.0
mA
20
uA
Output sink current
@ 0V output voltage
Output resistance
Over complete output range
Digital mode output span
CSGN[2:2] = 0
6.5
V
CSGN[2:2] = 1
11.0
V
Digital mode step size
25
Ohms
VDD = 5V, CSGN[2:2]=0
6.5
mV
VDD = 5V, CSGN[2:2]=1
11.0
mV
10
nF
Capacitive load VMO pin
Current Mode Output Stage
Fixed gain
RSENSE = 24 ohm
Output current CMO pin
Current mode
8.4
Current sense resistor
9.3
mA/V
27
mA
24
Ohms
Digital mode current output span
VDD = 5V
23
Digital mode current step Size
VDD = 5V,RSENSE=24Ù
Signal Path ( General)
Overall gain
Voltage mode
28
600
V/V
Current mode = 24Ù
81
750
mA/V
-0.25
0.25
%
Overall Gain < 250V/V
-0.5
0.5
%
Overall Gain > 250V/V
-1.3
+1.3
%
Overall non-linearity
Ratiometry Error (4.75V – 5.25V)
MLX90308CCC Programmable Sensor Interface
Page 4
mA
30
Rev 2.2
uA
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 1. MLX90308 Electrical Specifications (continued)
DC operating parameters: TA = -40 to 140oC, VDD1 = 6 to 35VDC (unless otherwise specified).
Parameter
Bandwidth (-3dB)
Test Conditions
39 nF connected from FLT to GND
Min
2.8
Noise, VDD = 5V, CFLT=39nF, CL=10nF, RL =5KÙ, Analog Mode
Typ
3.5
Max
4.2
Units
KHz
5.0
mVRMS
390
uV/ºC
Temperature Sensor & - Amplifier
Temperature sensor sensitivity
Temperature sensor output voltage
70
380
mV
Temperature Sensor & Amplifier (continued).
Input voltage range TMP pin
GNTP[1,0] = 00
207
517
mV
@ VDD = 5.0V
GNTP[1,0] = 01
145
367
mV
GNTP[1,0] = 10
101
263
mV
GNTP[1,0] = 11
71
186
mV
DAC
Resolution
10
Monotonicity
Bit
Guaranteed By Design
Ratiometric output range (DAC output)
1
75
Offset Error
10
% VDD
LSB
Differential non-linearly
1
LSB
Integral non-linearity
2
LSB
ADC
Resolution
10
Monotonicity
Bit
Guaranteed by design
Ratiometric input range
1
75
Offset error
10
% VDD
LSB
Differential non-linearly
1
LSB
Integral non-linearity
2
LSB
250
kHz
88.7
kHz
On-Chip RC Oscillator and Clock
Untrimmed RC oscillator
frequency
Trimmed RC oscillator frequency
(Measured at TMP pin with TSTB pin pulled low after power up)
Frequency temperature coefficiency
Clock Stability with temperature compensation over full temperature range
Ratio of f (microcontroller main clock
and (RC oscillator)
40
86.9
87.8
26
-3
+3
TURBO = 0
7
TURBO = 1
28
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 5
Page
Hz/ºC
22/Aug/98
Rev 2.2
%
Page 5
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 1. MLX90308 Electrical Specifications (continued)
DC operating parameters: TA = -40 to 140oC, VDD1 = 6 to 35VDC (unless otherwise specified).
Parameter
Input & Output Pins (I01 & I02)
Test Conditions
Digital input levels
Low
High
Output Levels
Min
Typ
Max
0.5
Units
V
VDD-0.5
@ output current = 5mA low
VDD-0.4
@ Output current = 5mA high
0.4
V
VDD
TSTB Pin
Input levels
Low
0.5
V
High
VDD-0.5
Pull-up Resistor
66
kOhms
FLT Pin
Output resistance
Output voltage range
1.24
kOhms
VDD = 5V
0.05
3.6
V
VDD = 5V
0.05
3.75
V
20
pf
OFC Pin
Output voltage range
Load capacitor
UART & COMS Pin
UART baud rate
COMS pin input levels
TURBO = 0
2400
baud
TURBO = 1
9600
baud
Low
0.3*VDD
V
High
COMS Pin Output Resistance
0.7*VDD V
Low
100
Ohms
High
100
kOhms
MLX90308CCC Programmable Sensor Interface
Page 6
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Unique Features
Customization
Table 2. Absolute Maximum Ratings
Melexis can customize the MLX90308 in both
hardware and firmware for unique requirements.
The hardware design provides 64 bytes of RAM, 3
kbytes of ROM, and 48 bytes of EEPROM for use
by the firmware.
Supply voltage (ratiometric) VDD Max
6V
Supply voltage (ratiometric) VDD Min
4.5V
Supply voltage (operating), VDD1 Max
35V
Reverse voltage protection
-0.7V
The output of the sensor bridge is amplified via
offset and gain amplifiers and then converted to the
correct output signal form in one of the output
stages.
Supply current, Current Mode, IDD
3.5mA
Supply current, Voltage Mode, IDD
4.5mA
The sensitivity and offset of the analog signal chain
are defined by numbers passed to the DAC
interfaces from the microcontroller core (GN[9:0]
and OF[9:0]). The wide range of bridge offset and
gain is accommodated by means of a 2-bit coarse
adjustment DAC in the offset adjustment (CSOF
[1:0]), and a similar one in the gain adjustment
(CSGN[2:0]). The signal path can be directed
through the processor for digital processing. Two I/
O pins are available for analog inputs or digital
outputs. These pins can be used for alarms on
various points on the analog signal path and built-in
or external temperature values.
Output current (short to VDD), ISCVMO
100mA
Output current (short to VSS), ISCVMO
8mA
Output voltage, VVMO
+11V
Power dissipation, PD
71mW
Special Information
Output current, IVMO
8mA
-40 to +140°
Operating temperature range, TA
-55 to +150°C
Storage temperature range, TS
Maximum junction temperature, TJ
150°C
Programming and Setup
The MLX90308 needs to have the
compensation coefficients programmed for a
particular bridge sensor to create the sensor
system. Programming the EEPROM involves
some minimal communications interface
circuitry, Melexis’ setup software, and a PC.
The communications interface circuitry is
available in a development board. This circuitry
communicates with the PC via a standard RS232 serial communications port.
Cross Reference
There are no known devices which the MLX
90308CCC can replace.
ESD Precautions
Observe standard ESD control procedures for
CMOS semiconductors.
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 7
Page
22/Aug/98
Rev 2.2
Page 7
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 3. Pin Description
Pin
1,2
Signal
Name
I/O1, 2
Description
3
TSTB
4
FLT
5
OFC
6,7
VBN,VBP
8
TMP
9
VDD
10
FET
11
VDD1
12
VMO
13
CMO
14
CMN
Current mode output. Compensated sensor output for current mode
operation.
Current mode negative rail. Current mode return path.
15
GND
Power supply return.
16
COMS
Serial communications pin. Bi-directional serial communication signal for
reading and writing to the EEPROM.
Bi-directional I/O. Can also be used as input to A/D converter. I/O can be
controlled by serial communications or by firmware as alarm inputs or level
out. (unconnected when not used)
Test pin for Melexis production testing. (in normal application connected to
VDD)
Filter pin; allows for connection of a capacitor to the internal analog path.
Offset control output. Provides access to the internal programmed offset
control voltage for use with external circuitry. (unconnected when not used)
Bridge inputs, negative and positive.
Temperature sensor input. An external temperature sensor can be used in
conjunction with the internal one. The external sensor can provide a
temperature reading at the location of the bridge sensor.
Regulated supply voltage. Used for internal analog circuitry to ensure
accurate and stable signal manipulation.
Regulator FET gate control. For generating a stable supply for the bridge
sensor and internal analog circuitry (generates regulated voltage for VDD).
Unregulated supply voltage. Used for digital circuitry and to generate FET
output.
Voltage mode output. Compensated sensor output voltage.
1
IO1
COMS
16
2
IO2
GND
15
3
TSTB
CMN
14
4
FLT
CMO
13
5
OFC
VMO
12
6
VBN
VDD1
11
7
VBP
FET
10
8
TMP
VDD
9
Figure 2. Pinout (SO16W (LW) Package)
MLX90308CCC Programmable Sensor Interface
Page 8
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Analog Features
Power-On Reset
Supply Regulator
A bandgap-stabilized supply-regulator is on-chip
while the pass-transistor is external. The bridge-type
sensor is typically powered by the regulated supply
(typically 4.75V). For ratiometric operation, the
supply-regulator can be disabled by connecting
together the unregulated and regulated supply pins.
Oscillator
The MLX90308 contains a programmable on-chip
RC oscillator. No external components are needed
to set the frequency (87.8 kHz +/-1%). The MCUclock is generated by a PLL (phase locked loop
tuned for 614 kHz or 2.46 Mhz) which locks on the
basic oscillator.
The frequency of the internal clock is stabilized over
the full temperature range, which is divided into
three regions, each region having a separate digital
clock setting. All of the clock frequency
programming is done by Melexis during final test of
the component. The device uses the internal
temperature sensor to determine which temperature
range setting to use.
The Power-On Reset (POR) initializes the state of the
digital part after power up. The reset circuitry is
completely internal. The chip is completely reset and
fully operational 3.5 ms from the time the supply
crosses 3.5 volts. The POR circuitry will issue another
POR if the supply voltage goes below this threshold
for 1.0 us.
Test Mode
For 100% testability, a "TEST" pin is provided. If the
pin is pulled low, then the monitor program is entered
and the chip changes its functionality. In all other
applications, this pin should be pulled high or left
floating (internal pull-up).
Temperature Sense
The temperature measurement, TPO, is generated
from the external or internal temperature sensor. This
is converted to a 10-bit number for use in calculating
the signal compensation factors. A 2-bit coarse
adjustment GNTP[1:0] is used for the temperature
signal gain & offset adjustment.
A/D and D/A
Conversions using only one DAC
For saving chip area, the "Offset DAC" is
multiplexed in various ways. Both "fine offset" and
"digital mode" signals are stored on a capacitor. An
ADC-loop is available by using a comparator and
SAR.
D/A
Before changing to another capacitor, the DAC
output should be settled to the new value. For
example, MODSEL moves the analog multiplexer to
the so-called "open state 0." At the same time, the
10 bit mux selects OF[9:0] for the offset-DAC. After
the DAC settling time, the analog multiplexer is
moved to its final state and the DAC-output is stored
on a capacitor.
A/D
The S/W-Signal MODSEL connects the SAR-output
to the DAC and the DAC-output to the comparator.
The SARegister is initialized by a rising edge of STC
(S/W signal). At the end of the A/D conversion, the
EOC flag is set to 1 and the controller can read the
ADC values.
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 9
Page
22/Aug/98
Rev 2.2
Page 9
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Digital Features
Microprocessor, LX11 Core, Interrupt
Controller, Memories
The LX11 microcontroller core is described in its
own datasheet. As an overview, this implementation
of the LX11 RISC core has following resources:
Two accumulators, one index and two interrupt
accumulators.
15 - 8 bit I/O ports to internal resources.
64 byte RAM.
4 kbytes ROM : 3 kbytes is available for the
customer's application firmware. 1k is
reserved for test.
48 x 8 bit EEPROM.
Four interrupt sources, two UART interrupts
and two timers.
UART
The serial link is a potentially full-duplex UART. It is
receive-buffered, in that it can receive a second byte
before a previously received byte has been read
from the receiving register. However, if the first byte
is not read by the time the reception of the second
byte is completed, the first byte will be lost. The
UART's baud rate depends on the RC-oscillator's
frequency and the "TURBO"-bit (see output port).
Transmitted and received data has the following
structure: start bit = 0, 8 bits of data, stop bit = 1.
Sending Data
Writing a byte to port 1 automatically starts a
transmission sequence. The TX Interrupt is set when
the STOP-bit of the byte is latched on the serial line.
Receiving Data
Timer
The clock of the timers TMI and TPI is taken directly
from the main oscillator. The timers are never
reloaded, so the next interrupt will take place 2x
oscillator pulses after the first interrupt.
Watch Dog
An internal watch dog will reset the whole circuit in
case of a software crash. If the watch dog counter is
not reset at least once every 26 milliseconds (@
2.46 MHz main clock), the microcontroller and all
the peripherals will be reset.
Firmware
The MLX90308 firmware performs the signal
conditioning by either of two means: analog or
digital. The analog signal conditioning allows
separate offset and gain temperature coefficients for
up to four temperature ranges. Digital mode allows
for all of the analog capabilities plus up to five
different gain values based on the input signal level.
Also available in both modes is the capability of
range
limiting
and
level
steering.
Temperature Processing
In both analog and digital modes, the temperature
reading controls the temperature compensation.
This temperature reading is filtered as designated
by the user. The filter adjusts the temperature
reading by factoring in a portion of the previous
value. This helps to minimize the effect of noise
when using an external temperature sensor. The
filter equation is:
If measured_temp > Temp_f(n) then
Temp_f(n+1) = Temp_f(n) + [measured_temp Temp_f(n)] / [2 n_factor].
Reception is initialized by a 1 to 0 transition on the
serial line (i.e., a START-bit). The baud rate period
(i.e., the duration of one bit) is divided into 16
phases. The first six and last seven phases of a bit
are not used. The decision on the bit-value is then
the result of a majority vote of phase 7, 8 and 9 (i.e.,
the center of the bit).
If measured_temp < Temp_f(n), then
Temp_f(n+1) = Temp_f(n) - [measured_temp Temp_f(n)] [2 n_factor].
Spike synchronization is avoided by de-bouncing on
the incoming data and a verification of the STARTbit value. The RX Interrupt is set when the stop bit is
latched in the UART.
Measured_temp = Value from temperature A to D.
Temp_f(n+1) =
new filtered temperature value.
Temp_f(n) = previous filtered temperature value.
N_factor = Filter value set by the user (four
LSB’s of byte 25 of EEPROM), range 0-6.
The filtered temperature value, Temp_f, is stored in
RAM bytes 58 and 59. The data is a 10 bit value,
left justified in a 16 bit field.
MLX90308CCC Programmable Sensor Interface
Page 10
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
OFFSET
Different Modes
DAC_OFFSET (new value) ~ OF[9:0]+[OFTCi* dT]
Analog Mode
The parameters OF and GN represent, respectively,
offset correction and span control, while OFTCi and
GNTCi represent their temperature coefficients
(thermal zero shift and thermal span shift). After
reset, the firmware continuously calculates the
offset and gain DAC settings as follows: The
EEPROM holds parameters GN, OF, OFTCi and
GNTCi, where “i” is the gap number and can be 1 < i
< 4. The transfer function is described below.
Calculation of the offset for a given temperature
segment is performed the same way as for the gain.
(7 − −6) *
OF [9 : 0]
− 6 = DAC _ OFFSET
1023
[mV/V]
Digital Mode
Vout = FG * DAC_GAIN * CSGN[2:0] *
{Vin+DAC_OFFSET+CSOF}
Iout =
OF[9:0] = Fixed Gain, bytes 4 and 17 in EEPROM.
OFTCi = Offset for a given temperature
segment I. OFTCiL and OFTCiH in
EEPROM table.
dT = Temp. change within the appropriate gap.
The MLX90308 firmware provides the capability of
digitally processing the sensor signal in addition to
the analog processing. This capability allows for
signal correction.
FG * DAC_GAIN * CSGN[1:0] *
{Vin+DAC_OFFSET+CSOF} * 8.85mA/V
FG = Hardware Gain (~20V/V). Part of the hardware
design, and not changeable.
CSGN = Course Gain, part of byte 2 in EEPROM.
CSOF = Coarse Offset, part of byte 2 in
EEPROM.
GAIN
Signal Correction
While in digital mode the firmware can perform
signal correction. This is an adjustment to the
output level based on the input signal level.
Adjustment coefficients can be set for five different
signal ranges. The output is obtained by the
following formula:
DAC_GAIN (new value) ~ GN[9:0] + [GNTCi * dT]
Output = (Signal – Pi) * Pci + Poff where
Signal = input signal measurement;
Poff = Pressure ordinate
Pi = Pressure signal point (I = 2,3,4,5)
Pci = programmed coefficient.
GN[9:0] = Fixed Gain, bytes 3 and 17 in EEPROM.
GNTCi = Gain TC for a given temperature
segment I. GNTCiL and GNTCiH in
EEPROM table.
dT = Temp. change within the appropriate gap.
The PCi coefficients are coded on 12 bits: one bit for
the sign, one for the unity, and the rest for the
decimals. The Pi are coded on 10 bits (0-3FFh) in
high-low order.
How to calculate gain in the first temp. gap?:
DAC_GAIN = GN[9:0] - GNTC1 * (T1 – Temp_f1)
PNB_TNB: contains the number of signal points,
coded on the four MSB’s. The four LSB’s are
reserved for the number of temperature points. See
Table 4 and Table 5.
How to calculate gain in the other temp. gaps?:
2nd gap: DAC_GAIN = GN[9:0] + GNTC2 *
(Temp_f2 – T1)
3th gap: DAC_GAIN = DAC_GAIN2 + GNTC3 *
(Temp_f3 – T2)
4th gap: DAC_GAIN = DAC_GAIN3 + GNTC4 *
(Temp_f4 – T3)
Where:
Temp_f = Filtered temp. (previously described).
If GNTC1 > 2047
If GNTC2,3,4 > 2047
(0.97 − 0.48) *
Compensation Trade-Offs
=> DAC_GAIN ↑
=> DAC_GAIN ↓
GN[9 : 0]
[V/V]
+ 0.48 = DAC _ GAIN
1023
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
A compromise must be made between temperature
compensation and pressure correction. The
EEPROM space where the signal coefficients are
stored is shared with the temperature coefficients,
with the result that an EEPROM byte can be used
either for a temperature coefficient or for a signal
coefficient, but not both. Table 6 presents the
possibilities among the maximum number of
temperature gaps and the maximum number of
signal gaps.
Rev
Y.X 11
Page
22/Aug/98
Rev 2.2
Page 11
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 4. PNB_TNB Bit Definition;
Table 6. Temperature
Maximum number of
temperature gaps
Fixed Gain and
fixed Offset
Maximum number of
signal gaps
10 (A hex)
2 Gaps
3 Gaps
4
8
3 Gaps
2 Gaps
5
6
4 Gaps
Fixed signal
# of Pressure Gaps
Fixed
4MSB of PNB_TNB Value
15 (F hex)
1
14 (E hex)
2
12 (C hex)
3
5 Gaps
Table 5. PNB_TNB Bit Definition;
Temperature Gaps
# of Temperature Gaps
4 LSB of PNB_TNB
Fixed (1)
0
2 Gaps
5
3 Gaps
8
4 Gaps
11 (B hex)
Figure 3. Temperature
Linearity Correction
OF & GN
Figure 4. Signal
Linearity Correction
Output
MLX90308
MLX90308
OFTC4
PC5
OFTC3
PC4
OFTC2
GNTC4
PC3
GNTC3
OF0
Output (units)
Parameter
OFTC1
GNTC2
GN0
PC2
PC1
i4
GNTC1
i3
i2
i1
1 Gap
0
T1
T2
T3
3FFh
0
P2
P3
P4
P5
Baseline Calibration
MLX90308CCC Programmable Sensor Interface
Page 12
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Alarm Option
IO1 & IO2
This option allows controlling the low and high limits
of the output (See Figure 5.). The output level is set
when the output tries to exceed the programmed
limits. Five bytes are reserved for this option. The
first byte is the low trigger limit and the second the
low output. The third and fourth bytes are used for
the high limit and the output. The fifth byte is the
alarm control, used to select the alarm input. The
different levels are programmed as eight bit
numbers. These correspond to the 8 upper bits of
the 10 bit signal measurement. When the alarm
mode is not used, all of the data is 0. The control
code is coded as shown in Table 7. The six possible
signals are listed below and are encoded on the 4
MSB’s of byte 31 of the EEPROM.
IO1 and IO2 are used in the alarm and level
steering modes. For custom firmware, they can be
used for a digital input, an analog input, or a digital
Figure 6.
Alarm & Steering
Source Points
OFC
FLT
Power Supply
Regulation
IAO
VBP
Table 7. Alarm Source Bit Definition
Selected input
MUX Value
TPO
IAO
GNO
VMO
IO1
IO2
0010
0110
0000
0011
0100
0101
GNO
Offset
Gain
VMO
VM
VBN
TPO
CMO
CM
CMN
TMP
Temp
Sense
& Amp
ADC
&
DAC
IO1
IO2
Bidirectional
I/O
Microcontroller
Core, Memory,
EEPROM
Reset,Test,&
Oscillator
TSTB
UART
COMS
Figure 5.
Alarm Function
OUTPUT
VDD1 FET VDD GND
MLX90308
Figure 7. Level Steering
Function
High
Output
IO1, IO2
MLX90308
Parameter
Output
1 -1
1-0
Low
Output
0-1
Low
Trigger
0-0
(I02,I01)
High
Trigger
Input Signal
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Level 1
Rev
Y.X 13
Page
Level 2
22/Aug/98
Rev 2.2
Level 3
Page 13
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Communications
Level Steering
The level steering option allows configuration of the
IO pins as outputs to indicate the relative level of a
selected signal. See Figure 7. The levels at which
the two outputs change state are programmed by
the user. The programmed levels are set as eight bit
numbers and compared to the upper eight bits of
the digitized signal. This function utilizes the same
resources as the alarm function. The two functions
(level steering and alarm) can not be used
simultaneously. Four bytes in the EEPROM
command this option. The first byte is used to select
the input, while the last three comprise the transition
levels. The control byte for the level steering is the
same as for the alarm. The four MSB’s hold the
code for the selected input. The control byte has
several possibilities as designated by the MUX
settings (See Table 8)
The MLX90308 firmware transfers a complete byte
of data into and from the memory based on a
simple command structure. The commands allow
data to be read and written to and from the
EEPROM and read from the RAM. RAM data that
can be read includes the current digitized
temperature and digitized GNO. The commands are
described below. Melexis provides setup software
for programming the MLX90308.
Table 8. Level Steering Bit Definitions
Selected input
TPO
IAO
GNO
VMO
Table 9. Mode Byte Bit Definition
Bit
Function
MUX Value
0010
0110
0000
0011
Remarks
7
1= EEPROM Checksum test active
0= EEPROM Checksum test inactive
EEPROM Checksum test. Checksum test failure will
force the output to the value programmed in bytes 40
and 41 of the EEPROM (See Table 10).
6
0 = Analog Mode
1 = Digital Mode
Digital mode must be activated when VMO and CMO
both active.
5
0 = Alarm function inactive
1 = Alarm function active
Alarm functions are like “limiting functions”:
If defined ADC INPUT is below low alarm trigger,
then DIGMOD becomes active with alarm low
output).
If defined ADC INPUT is above high alarm trigger,
then DIGMOD becomes active with alarm high
output.
Note: Deactivated if the level steering mode is active
4
0 = IO1/IO2 are not active outputs
1 = level steering: IO1/IO2 are active
outputs
Depending on the sampled input, IO1/IO2 will be a
two bit digital output. If IO1/IO2 are not active
outputs, then they will be analog inputs.
3
0 = Turbo inactive
1 = Turbo active
2
0 = VMO inactive
1 = VMO active
1
0 = Internal temperature sensor active
1 = External temperature sensor
active
0
0 = CMO inactive
1 = CMO active
MLX90308CCC Programmable Sensor Interface
CMO has fixed digital value (EEPROM byte - see
below) if both VMO and CMO are active. To activate
this value, the digital mode must be activated.
Page 14
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
separate byte and shared with the four MSB’s of
another 12-bit variable.
UART Commands
The commands can be divided into three parts: (1)
downloading of data from the ASIC, (2) uploading of
data to the ASIC and (3) the reset command.
All the commands have the same identification bits.
The two MSB’s of the sent byte indicate the
command while the last six MSB’s designate the
desired address. The commands are coded as
followed:
11 to read a RAM byte.
10 to read an EEPROM byte.
01 to write in the EEPROM.
00 to write in the RAM.
The addresses can include 0-63 for the RAM, 0-47
for the EEPROM, and 63 for the EEPROM, RESET
Command (read).
Downloading Command
With one byte, data can be downloaded from the
ASIC. The ASIC will automatically send the value of
the desired byte.
Clock Temperature Stabilization
To provide a stable clock frequency from the
internal clock over the entire operating temperature
range, three separate clock adjust values are used.
Shifts in operating frequency over temperature do
not effect the performance but do, however, cause
the communications baud rate to change.
The firmware monitors the internal temperature
sensor to determine which of three temperature
ranges the device currently is in. Each temperature
range has a factory set clock adjust value, ClkTC1,
ClkTC2, and ClkTC3. The temperature ranges are
also factory set. The Ctemp1 and Ctemp2 values
differentiate the three ranges. In order for the
temperature A to D value to be scaled consistently
with what was used during factory programming, the
CLKgntp (temperature amplifier gain) valued is
stored. The Cadj value stored in byte 1 of the
EEPROM is used to control the internal clock
frequency while the chip boots.
Uploading Command
Writing to the RAM or EEPROM involves a simple
handshaking protocol in which each byte
transmitted is acknowledged by the firmware. The
first byte transmitted to the firmware includes both
command and address. The firmware acknowledges
receipt of the command and address byte by
echoing the same information back to the
transmitter. This “echo” also indicates that the
firmware is ready to receive the byte of data to be
stored in RAM or EEPROM. Next, the byte of value
to be stored is transmitted and, if successfully
received and stored by the firmware, is
acknowledged by a “data received signal,” which is
two bytes of value BCh. If the “data received signal”
is not observed, it may be assumed that no value
has been stored in RAM or EEPROM.
Reset Command
Reading the address 63 of the EEPROM resets the
ASIC and generates a received receipt indication.
Immediately before reset, the ASIC sends a value of
BCh to the UART, indicating that the reset has been
received.
EEPROM Data
All user-settable variables are stored in the
EEPROM within the MLX90308CCC. The EEPROM
is always re-programmable. Changes to data in the
EEPROM do not take effect until the device is reset
via a soft reset or power cycle. 12 bit variables are
stored on 1.5 bytes. The 4 MSB’s are stored in a
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Unused Bytes
There are eight unused bytes in the EEPROM
address map. These bytes can be used by the user
to store information such as a serial number,
assembly date code, production line, etc. Melexis
doesn’t guarantee that these bytes will be available
to the user in future revisions of the firmware.
EEPROM Checksum
A checksum test is used to ensure the contents of
the EEPROM. The eight bit sum of all of the
EEPROM addresses should have a remainder of
0FFh when the checksum test is enabled (mode
byte). Byte 47 is used to make the sum remainder
totals 0FFh. If the checksum test fails, the output
will be driven to a user defined value, Faultval.
When the checksum test is enabled, the checksum
is verified at initialization of RAM after a reset.
RAM Data
All the coefficients (pressure, temperature) are
compacted in a manner similar to that used for the
EEPROM. They are stored on 12 bits (instead of
keeping 16 bits for each coefficient). All the
measurements are stored on 16 bits. The user must
have access to the RAM and the EEPROM, while
interrupt reading of the serial port. Therefore, bytes
must be kept available for the return address, the Aaccu and the B-accu, when an interrupt occurs. The
RAM keeps the same structure in the both modes.
Rev
Y.X 15
Page
22/Aug/98
Rev 2.2
Page 15
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 10. Examples of Fixed Point
Signed Numbers
Data Range
Various data are arranged as follows:
Decimal
Hexadecimal
Equivalent
Fixed Point Signed
Number Equivalent
Temperature points: 10 bits, 0-03FF in highlow order.
0
0000h
+0.00
1023
3FFh
+0.9990234
Pressure points: 10 bits, 0-03FF in high-low
order.
1024
400h
+1.000
2047
7FFh
+1.9990234
OF1: 10 bits, 0-03FF in high-low order.
2048
800h
-0.000
GNTCi: signed 12 bits (with MSB for the sign),
[-1.9990234, +1.9990234].
3071
0BFFh
-0.9990234
3072
0C00h
-1.000
4095
0FFFh
-1.9990234
GN1: 10 bits, 0-03FF in high-low order.
OFTCi: signed 12 bits (with MSB for the sign),
[-1.9990234, +1.9990234].
Pci: signed 12 bits (with MSB for the sign),
[-1.9990234, +1.9990234]
DIGMO: 10 bits, 0-03FF in high-low order
(See Table 13 for examples of fixed point
Table 11. EEPROM Byte Definitions
Byte
Designation
Note
0
MODE byte
Contents described in Table 9.
1
Cadj
Controls system clock during boot.
2
Coarse Control
Contents described in Table 12.
3
GN1L
The eight LSB's of the Fixed Gain, GN[7:0].
4
OF1L
The eight LSB's of Fixed Offset OF[7:0].
5
GNTC1L
The eight LSB's of the first gain TC GNTC1[7:0].
6
OFTC1L
The eight LSB's of the first offset TC OFTC1[7:0].
7
TR1L
PC5L
The eight LSB's of the first temperature point, T1[7:0].
The eight LSB's of Pressure Coefficient 5 PC5[7:0].
8
GNTC2L
P5L
The eight LSB's of the second gain TC GNTC2[7:0].
The eight LSB's of Pressure Point 5 P5[7:0].
9
OFTC2L
PC4L
The eight LSB's of the second offset TC OFTC2[7:0].
The eight LSB's of Pressure Coefficient 4 PC4[7:0].
10
TR2L
P4L
The eight LSB's of the second temperature point T2[7:0].
The eight LSB's of Pressure Point 4 (or Signature) P4[7:0].
11
GNTC3L
PC3L
The eight LSB's of the third gain TC GNTC3[7:0].
The eight LSB's of Pressure Coefficient 3 (or Signature) PC3
[8:0].
MLX90308CCC Programmable Sensor Interface
Page 16
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 11. EEPROM Byte Definitions (continued)
Byte
Designation
Note
12
OFTC3L or
The eight LSB's of the third offset TC OFTC3[7:0].
P3L
The eight LSB's of Pressure Point 2 (or Signature) P2[7:0].
13
TR3L or
PC2L
The eight LSB's of the third temperature point T3[7:0].
The eight LSB's of Pressure Coefficient 2 PC2[7:0].
14
GNTC4L or
P2L
The eight LSB's of the fourth gain TC GNTC4[7:0].
The eight LSB's of Pressure Point 2 P2[7:0].
15
OFTC4L or
PC1L
The eight LSB's of the fourth offset TC OFTC4.
The eight LSB's of Pressure Coefficient 1 PC1
16
PoffL
The eight LSB's of Pressure (output signal) Ordinate Poff[7:0].
Upper
Four
Bits
Lower
Four
Bits
Upper four bits.
Lower four bits
17
GN1[9:8]
OF1[9:8]
Two MSB's of fixed gain
GN[9:8].
Two MSB's of fixed offset
OF[9:8]
18
GNTC1[11:8]
OFTC1[11:8]
Four MSB's of first gain TC
GNTC1[11:8].
Four MSB's of the first offset
TC OFTC1[11:8].
19
TR1[9:8]
GNTC2[11:8]
PC5[11:8]
P5[9:8]
Two MSB's, first temperature
point T1[9:8] or
Four MSB's, Pressure
Coefficient 5 PC5[11:8].
Four MSB's, second gain
TC GNTC2[11:8] or
TC GNTC2[11:8] or
Two MSB's Pressure Point 5
P5[9:8].
OFTC2[11:8]
TR2[9:8]
PC4[11:8]
P4[9:8]
Four MSB's second offset
TC OFTC2[11:8] or
Four MSB's Pressure
Coefficient 4 PC4[11:8].
Two MSB's second
temperature point T2[9:8] or
Two MSB's Pressure Point 4
P4[9:8].
GNTC3[11:8]
OFTC3[11:8]
PC3[11:8]
P3[9:8]
Four MSB's third gain TC
GNTC3[11:8] or
Four MSB's Pressure
Coefficient 3 PC3[11:8]).
Four MSB's third offset
TC OFTC3[11:8] or
Two MSB's Pressure Point 3
P3[9:8].
TR3[9:8]
GNTC4[11:8] Two MSB's third
temperature point t3[9:8] or
Four MSB's Pressure
P2[9:8]
Coefficient 2 PC2[11:8].
Four MSB's fourth gain TC
GNTC4[11:8] or
Two MSB's Pressure
Point 2 P2[9:8].
Poff[9:8]
Two MSB's Pressure
20
21
22
PC2[9:8]
23
OFTC4[11:8]
PC1[11:8]
Four MSB's fourth offset TC
ordinate
OFTC4[11:8] or
Four MSB's Pressure
Coefficient 1 PC1[11:8].
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 17
Page
Poff[9:8].
22/Aug/98
Rev 2.2
Page 17
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 11. EEPROM Byte Definitions (continued)
Byte
Designation
Note
24
PNB_TNB
Number of temperature and pressure gaps. See Tables 4, 5,
and 6, and Figures 3 and 4.
25
n_factor
Temperature filter coefficient, four LSB's. Four MSB's must
all be zero.
26
Not used
This byte is not used.
27
ALARM low trigger
Level1 IO2/IO1
Value below which ALARM will go on.
Value of first level ([IO2, IO1]= 00-01). See Figures 5 & 7.
28
ALARM low output
Level2 IO2/IO1
Value of DIGMO during “ALARM low” condition.
Value of second level ([IO2,IO1] = 01-10). See Figures 5
and 7
29
ALARM high trigger
Level3 IO2/IO1
Value above which ALARM will go on.
Value of third level ([IO2,IO1]=10-11). See Figures 5 and 7.
30
ALARM high out level
Value of DIGMO during “ALARM high” condition. See
Figures 5 and 7.
31
ALARM control byte
Three bits needed for choice of input for ALARM detection
(TPO, IAO, GNO, VMO, IO1 or IO2).
IO1/IO2 control byte
Two bits needed for choice of input for LEVEL-steering
(TPO, IAO, GNO or VMO).
Four LSB's are unused
The above bits are multiplexed according to the mode. If
both CMO and VMO are active, then alarm is not active.
32
ClkTC1
Value of Cadj at low temperature (Don’t change; factory set).
33
ClkTC2
Value of Cadj at mid temperature (Don’t change; factory
set).
34
ClkTC3
Value of Cadj at high temperature Don’t change; factory set).
35
Ctemp1
First Cadj temperature point, eight MSB’s of the 10 bit
internal temperature value (set at factory; do not change).
36
Ctemp2
Second Cadj temperature point, eight MSB’s of the 10 bit
internal temperature value (set at factory; do not change).
37-38
Not used
These bytes are not used by the firmware and are available
to the user.
39
CLKgntp
Setting for temperature amplifier for clock temperature
adjustment temperature reading (set at factory; do not
change).
40-41
Faultval
Value sent to output if checksum test fails is a 10 bit value.
42-46
Not Used
These bytes are not used by the firmware and are available
to the user.
47
Checksum
EEPROM checksum; value needed to make all bytes add to
0FFh. Must be set by user if checksum test is active.
MLX90308CCC Programmable Sensor Interface
Page 18
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 12. Bit Definitions;
Coarse Control , Byte 2
Notes For Table 11
1. Not all the temperature and pressure coefficients
must be used. When a coefficient is unused, the
eight LSB’s and the four MSB’s are replaced by 0.
Bit Symbol Function
7
2. The level steering and the alarm mode cannot be
active simultaneously because the levels bytes are
shared with the two modes.
IINV
Invert signal sign.
6
GNTP1 Gain & offset of temperature
amplifier.
3. If the alarm mode and the level steering are both
active, the level steering mode is dominant. The
firmware will run with the level steering mode, by
default.
5
GNTP0 GNTP = 0 to 3.
4
CSOF 1 Coarse offset of signal amplifier.
3
CSOF 0 CSOF = 0 to 3.
4. If the DIGMO mode (VMO and CMO both active)
is active, the alarm will be automatically disabled by
the firmware.
2
CSGN2 Coarse gain of signal amplifier.
CSGN = 0 to 7. If CSGN > 3,
CSGN1 output range = 0 to 10V. If
CSGN0 CSGN <= 3, output range = 0 to
5V.
5. At PNB_TNB address, the four MSB's correspond
to the address of the last pressure point and the four
LSB’s to the address of the last temperature point.
1
0
6. In the alarm_control variable, the selected
input is stored on the three MSB’s.
7. Pi and OFi are 10 bit values, right justified in 12
bits fields.
Table 13. RAM Byte Definitions
Byte
Functions
Remarks
0
MODE byte
See Table 9.
1
GN1L
Fixed gain number (8LSB).
2
OF1L
Fixed offset number (8LSB).
3
GNTC1L
First gain TC (8LSB).
4
OFTC1L
First offset TC (8LSB).
5
TR1L
PC5L
First temperature point.
Pressure Coefficient 5 (8LSB).
6
GNTC2L
P5L
Second gain TC.
Pressure point 5 (8LSB).
7
OFTC2L
PC4L
Second offset TC.
Pressure coefficient 4 (8LSB).
8
TR2L
P4L
Second temperature point.
Pressure Point 4 (or Signature) (8LSB).
9
GNTC3L
PC3L
Third gain TC.
Pressure Coefficient 3 (or Signature) (8LSB).
10
OFTC3L
P3L
Third offset TC.
Pressure Point 2 (or Signature) (8LSB).
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 19
Page
22/Aug/98
Rev 2.2
Page 19
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 13. RAM Byte Definitions (continued)
Byte
Functions
Remarks
11
TR3L
Third temperature point.
12
PC2L
GNTC4L
Pressure Coefficient 2 (8LSB).
Fourth gain TC.
P2L
Pressure Point 1 (8LSB).
13
OFTC4L
Fourth offset TC.
14
PC1L
DIGMOP1L
Pressure Coefficient 1 (8LSB).
Fixed pressure (8LSB).
15
GN1[9:8]
OF1[9:8]
Two MSB's of fixed gain
GN[9:8].
Two MSB's of fixed offset
OF[9:8].
16
GNTC1
[11:8]
OFTC1
[11:8]
Four MSB's of first gain TC
GNTC1[11:8].
Four MSB's of the first
offset TC OFTC1[11:8]
17
TR1[9:8]
GNTC2
[11:8]
Two MSB's, first temperature
point T1[9:8] or
Four MSB's, second gain
TC GNTC2[11:8] or
PC5[11:8]
P5[9:8]
OFTC2[11:8]
[9:8]
TR2
Four MSB's Pressure
Coefficient 5 PC5[11:8].
Four MSB's, second offset TC
OFTC2[11:8] or
Two MSB's, Pressure
Point 5 P5[9:8]
Two MSB's, second temp.
point T2[9:8] or
PC4[11:8]
P4[9:8]
Four MSB's, Pressure
Coefficient 4 PC4[11:8].
Four MSB's, Third Gain TC
GNTC3[11:8] or
Two MSB's, Pressure
Point 4 P4[9:8].
Four MSB's Third Offset
TC OFTC3[11:8] or
18
19
20
21
GNTC3[11:8]
[11:8]
OFTC3
PC3[11:8]
TR3[9:8]
[11:8]
P3[9:8]
GNTC4
Four MSB's, Pressure
Coefficient 3 PC3[11:8]).
Two MSB's, third temperature
point t3[9:8] or
Two MSB's Pressure
Point 3 P3[9:8]
Four MSB's, Fourth Gain
TC GNTC4[11:8] or
PC2[9:8]
OFTC4[11:8]
P2[9:8]
P1[9:8]
Four MSB's, Pressure
Coefficient 2 PC2[11:8].
Four MSB's Fourth Offset TC
OFTC4[11:8] or
Two MSB's, Pressure
Point 2 P2[9:8].
Two MSB's Pressure
Point 1 P1[9:8].
22
PNB_TNB
Four MSB's Pressure
Coefficient 1 PC1[11:8].
Same as EEPROM.
23
N_Factor
Temperature filter coefficient — 4 LSB’s, 4 MSB = 0
24
Not Used
PC1[11:8]
25-26
GN
Offset Ordinate of the current gap.
27-28
OF
Gain Ordinate of the current gap.
Taddress
4 bits for the max. temperature address of the current gap; 4
bits for the min. temperature address of the current gap.
29
MLX90308CCC Programmable Sensor Interface
Page 20
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Table 13. RAM Byte Definitions (continued)
Byte
Functions
Remarks
30
ALARM control byte
IO1/IO2 control byte
31
ALARM low trigger level
Three bits needed for choice of input for ALARM detection
(TPO, IAO, GNO, VMO, IO1 or IO2). Two bits needed for
choice of input for LEVEL-steering (TPO, IAO, GNO or
VMO). These bits are multiplexed according the mode.
Note: if both CMO and VMO are active, then alarm is not
active.
Value below which ALARM will go on.
32
IO1/IO2 level 1
ALARM low output level
Value of first level ([IO2,IO1]=00-01).
Value of DIGMO during “ALARM low” condition.
IO1/IO2 level 2
Value of second level ([IO2,IO1]=01-10).
ALARM high trigger
level
Value above which ALARM will go on.
33
Value of third level ([IO2,IO1] = 10-11).
35-36
IO1/IO2 level 3
ALARM high output
level
A_16
37-38
B_16
16 bits B Register.
39-42
RESULT_32
32 bits result (for 16 bit multiplication).
43-44
Tempo1
Measured temperature, internal or external, and temporary
variable 1.
45
Tempo2
Temporary variable 2.
46-47
Signal_In
Digitized signal value, analog and digital mode
48
Coms_backup
Address saved when command is send.
49
P3_copy
Port 3 setting copy.
50
Adsav1
Address saved at interrupt.
51-52
Aaccsav
A-Accumulators saved at interrupt.
53
Baccsav
B-Accumulators saved at interrupt.
54-55
DAC_gain
DAC gain (GN).
56-57
DAC_offset
DAC offset (OF).
58-59
Temp_f
60-61
Signal_Out
Filtered temperature. This is a 10 bit number that is left justified in a 16 bit field.
Digitized linearity corrected signal value. Digital mode only.
62-63
Adsav2
Address saved when call.
34
Value of DIGMO during “ALARM high” condition.
16 bits A Register.
Note: Because of space considerations, the measured temperature can’t be kept in the RAM at all times. If
the measured temperature is to be available, the temperature filter variable, N_Factor, must be set to 6.
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 21
Page
22/Aug/98
Rev 2.2
Page 21
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Prototyping
Melexis offers an MLX90308 evaluation kit which
contains an evaluation circuit board, serial interface
cable, and software diskette. The circuit board
provides the necessary circuitry for all three
applications circuits shown on the next page. Also
included in the circuit board is level shifting and glue
logic necessary for RS-232 communications.
The board has a socket with a single MLX90308
installed, and direct access to the pins of the IC.
The user can easily attach bridge sensor to the
board for in-system evaluation. The serial interface
cable connects the evaluation board directly to a
PC’s serial port for in-system calibration.
The software runs in the familiar Windows platform
and allows for programming and evaluation of all
compensation parameters within the EEPROM.
Figure 8. MLX90308 Evaluation Kit with MLX Software
MLX90308CCC Programmable Sensor Interface
Page 22
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Typical 90308 Applications
Figure 9a. Absolute Voltage Mode
Supply
5K
VDD
100 nF
Automotive
apps
FET VDD1
COMS
100 nF
VBP
Output
VMO
VBN
FLT
39 nF 100 nF 10 nF
10K
GND
Ground
Figure 9b. Ratiometric Voltage Mode
Supply
5K
VDD
VDD1
COMS
100 nF
VBP
Output
VMO
VBN
FLT
39 nF
10 nF
10K
TMP
GND
Ground
Figure 9c. Current Mode
Supply
5K
VDD
FET VDD1
100 nF
COMS
100 nF
CMO
100 nF
VBP
75 Ohms
VBN
FLT
TMP
GND CMN
Depends on
stability of the
current loop
39 nF
24 Ohms
Ground
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
Rev
Y.X 23
Page
22/Aug/98
Rev 2.2
Page 23
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Figure 10. Application Example
Figure 10a. Programmable Oil Pressure Gauge
Communications
Signal Out
GND
V+
Programmable Oil Pressure Gauge
This application example illustrates a fundamental
application of the MLX90308 and a bridge type
pressure sensor element. In this application, the
MLX90308 uses an external FET as a pass transistor to
regulate the voltage to the sensor and the analog portion
of the IC. This is known as Absolute Voltage Mode, where
voltage to the sensor and analog circuit is regulated independent
of the supply voltage. The MLX90308 can be operated in Ratiometric
Voltage Mode, in which the output (VMO) is tied to an A/D converter
sharing the same supply and ground reference. A third wiring option is
Current Mode, which allows the user a 4 to 20 milliampere current range to use as a
2-wire analog sensor.
Figure 10b. Programmable Oil Pressure Gauge Electrical Connections
IO1
COMS
16
2
IO2
GND
15
3
TSTB
CMN
14
4
FLT
CMO
13
5
OFC
VMO
12
6
VBN
VDD1
11
7
VBP
FET
10
8
TMP
MLX90308CCC Programmable Sensor Interface
MLX90308CCC
Pressure
Sensor
1
Communication
s
GND
Oil
Pressure
(psi)
Signal Out
V
+
D
VDD
Page 24
G
External FET
for Regulation
S
9
Rev 2.2
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Figure 11. Error Compensation
Table 14. Glossary of Terms
A/D
ADC
ASCII
Figure 11a. Raw Sensor Output
(measured between VPB and VBN)
Voltage (in mV)
170
140 oC
25 oC
-40 oC
0
0%
100%
Pressure
Figure 11b. Conditioned Sensor
Output
Voltage (VDC)
4
140 oC
25oC
-40oC
1
0%
Pressure
100%
Figures 11a and 11b above illustrate the
performance of an unconditioned sensor output and
a conditioned sensor output versus stimulus
(pressure) and temperature. It can be seen that
Figure 11a has a range of only 170 mV (maximum
range with a 5V supply) and has a non-linear
response over a 0-100 psi range. The sensitivity of
the unconditioned output will also drift over
temperature, as illustrated by the three slopes. The
MLX90308 corrects these errors and amplifies the
output to a more usable voltage range as shown in
Figure 11b.
MLX902xx Name ofProgrammable
Sensor
MLX90308CCC
Sensor Interface
ASIC
CM
CMN
CMO
COMS
CR
CSGN
CSOF
CV
DAC
DACFnew
DACFold
DARDIS
dB
DOGMO
EEPROM
EOC
ESD
ETMI
ETPI
FET
FG
FLT
GNO
GNOF
GNTP
HS
I/O
IFIX
IINV
ILIM
kHz
LSB
mA
MODSEL
ms
MSB
MUX
mV
nF
OFC
PC
pF
PLL
POR
RAM
RISC
ROM
RS-232
RX
SAR
STC
Tdiff
Text
TMI
TMP
TPI
Tref
TSTB
TX
UART
VBN
VBP
VDD
VM
VMGN
VMO
WCB
Rev
Y.X 25
Page
analog to digital conversion
analog to digital converter
American Standard Code for Information
Interchange
application specific integrated circuit
current mode
current mode negative (supply connection)
current mode output
communication, serial
carriage return
coarse gain
coarse offset
current / voltage mode select bit
digital to analog converter
filtered DAC value, new
filtered DAC value, old
DAC resistor disable
decibel
digital mode
electrically erasable programmable read only
memory
end of conversion flag bit
electrostatic discharge
timer interrupt enable
enable temperature interrupt
field effect transistor
fixed gain
filter pin
gain and offset adjusted digitized signal
gain, offset
temperature gain / offset coarse adjustment
hardware / software limit
input / output
fixed current output value
input signal invert command bit
current limit
kilohertz, 1000 Hz
least significant bit
milliamperes, 0.001 amps
mode select
millisecond, 0.001 second
most significant bit
multiplexer
millivolts, 0.001 Volts
nanofarads, 1 X 10-9 farads
offset control
personal computer, IBM clone
picofarad, 1 X 10-12 farads
phase locked loop
power on reset
random access memory
reduced instruction set computer
read only memory
industry std. serial communications protocol
receive
successive approximation register
start A/D conversion
temperature difference
temperature, external
timer Interrupt
temperature signal
temperature interrupt
temperature reference
test mode pin
transmit
universal asynchronous receiver / transmitter
bridge, positive, input
bridge, negative, input
supply voltage
voltage mode
voltage mode gain
voltage mode output
warn / cold boot
22/Aug/98
Rev 2.2
Page 25
23/Oct/01
MLX90308CCC
Programmable Sensor Interface
Figure 12. MLX90308CCC Physical Characteristics, LW Package
10.65
10.00
7.60
7.40
0.32
0.23
1.27
0.40
0.51
0.33
1.27
0o to
8o
Notes:
1. All dimensions in millimeters.
2. Body dimensions do not include mold flash or
protrusion, which are not to exceed 0.15mm.
10.50
10.10
2.65
2.35
0.010
min.
For the latest version of this document, go to our website at:
www.melexis.com
Or for additional information contact Melexis Direct:
Europe and Japan:
All other locations:
Phone: +32 13 61 16 31
E-mail: [email protected]
Phone: +1 603 223 2362
E-mail: [email protected]
QS9000, VDA6.1 and ISO14001 Certified
MLX90308CCC Programmable Sensor Interface
Page 26
Rev 2.2
23/Oct/01