Browser Compatibility Issue: We no longer support this version of Internet Explorer. For optimal site performance we recommend you update your browser to the latest version.Update Microsoft Internet Explorer

In the circuit, the ADuC7060/ ADuC7061 are connected to a thermocouple and a 100 Ω platinum resistance temperature detector (RTD). The RTD is used for cold junction compensation. As an extra option, the ADT7311 digital temperature sensor can be used to measure the cold junction temperature instead of the RTD.

In the source code, an ADC sampling rate of 4 Hz was chosen. When the ADC input programmable gain amplifier (PGA) is configured for a gain of 32, the noise-free code resolution of the ADuC7060/ ADuC7061 is greater than 18 bits.

The single edge nibble transmission (SENT) interface to the host is implemented by using a timer to control a digital output pin. This digital output pin is then level shifted externally to 5 V using an external NPN transistor. An EMC filter is provided on the SENT output circuit as recommended in Section 6.3.1 of the SENT protocol (SAE J2716 Standard). The data is measured as falling edge to falling edge, and the duration of each pulse is related to the number of system clock ticks. The system clock rate is determined by measuring the SYNC pulse. The SYNC pulse is transmitted at the start of every packet. More details are provided in the SENT Interface section.

Circuit Description

A primary, 24-bit Σ-Δ ADC with a PGA. The PGA is set for a gain of 32 in the software for this application. The primary ADC was switched continuously between sampling the thermocouple and the RTD voltages.

If an RTD is used for measuring the cold junction temperature, programmable excitation current sources force a controlled current through the RTD. The dual current sources are configurable in 200 μA steps from 0 μA to 2 mA. For this example, a 200 μA setting was used to minimize the error introduced by the RTD self-heating.

If the ADT7311 is used for measuring the cold junction temperature, the SPI interface is used in master mode to connect the ADT7311 slave device.

An internal 1.2 V reference for the ADC in the ADuC7060/ ADuC7061. For measuring the thermocouple voltage, the internal voltage reference was used due to its precision.

An external voltage reference for the ADC in the ADuC7060/ ADuC7061. For measuring the RTD resistance, a ratiometric setup was used where an external reference resistor (RREF) was connected across the external VREF+ and VREF− pins.

The AD8628 single supply op amp was used to buffer the high impedance reference voltage across RREF to the ADC.

A DAC that was used to set the thermocouple common-mode voltage to 850 mV above ground.

An ARM7TDMI® core. The powerful 16-/32-bit ARM7 core
with integrated 32 kB flash and SRAM memory runs the user code that configures and controls the ADC, processes the ADC conversions from the RTD, and controls the communications over the SPI interface.

Timer1 and a digital output pin are used to generate the SENT output signal.

An optional PESDLIN protection diode for suppression of ESD, electrical fast transients (EFT), and surge transients
up to 23 kV.

An EMC filter on the SENT output as recommended in Section 6.3.1 of the SAE J2716 standard (SENT Protocol).

Two external switches are used to force the part into its
flash boot mode. By holding S1 low and toggling S2, the
ADuC7060/ ADuC7061 enter boot mode instead of normal
user mode. In boot mode, the internal flash can be reprogrammed through the UART interface.

Both the thermocouple and the RTD generate very small signals;
therefore, a PGA is required to amplify those signals. As the auxiliary ADC on the ADuC7060/ ADuC7061 does not have a PGA, both were connected to the primary ADC, and switching between the two was done in software.

The thermocouple used in this application is a Type T (copperconstantan), which has a temperature range of −200°C to +350°C.
Its sensitivity is approximately 40 μV/°C; therefore, in bipolar mode, the ADC, with a PGA gain of 32, can cover the entire temperature range of the thermocouple.

The RTD was used for cold junction compensation. In this circuit, a platinum, 100 Ω RTD, Enercorp PCS 1.1503.1 was used. It is available in a 0805 surface-mount package. This RTD has a temperature variation of 0.385 Ω/°C.

Note that the reference resistor, RREF, should be a precision 5.6 kΩ (±0.1%).

SENT Interface

The SENT interface is a single pin, unidirectional (sensor to host), time modulated signal used mainly in automotive systems for interfacing distributed sensors to host CPUs.

The main requirements for SENT include the following:

It must have a 0 V to 5 V signal swing with EMC filtering.

The clock used for the SENT signal must be accurate to ±20%.

The SENT output circuit must be robust enough to tolerate short circuit to ground and short circuit to supply voltages.

The associated source code uses the P0.4 digital pin of the ADuC7061 as the SENT output pin. The packet format used is the single sensor packet format as detailed in A.4 section of the SAE J2716 standard (SENT Protocol) document. The source code, particularly the SENT.h and Sent.c files can be modified to support other packet formats. The overall temperature result is returned in /°C format in Data Nibble 1 to Data Nibble 3. In summary, the returned output packet is

Timer1 is used to control the SENT output pin, P0.4. When a temperature result is been calculated from the ADC results for the thermocouple and the cold junction temperature, the SENT packet structure, SENT_PACKET, is updated, and Timer1 started. The fields of the structure are clocked out on the P0.4 pin, as shown in Figure 2. The first stage of the packet is the sync sequence. The host determines the clock period from this pulse, and it determines the subsequent nibble values from this.

To get a temperature reading, measure the temperature of the thermocouple and the RTD. The RTD temperature is converted to its equivalent thermocouple voltage via a lookup table. These two voltages are added together to give the absolute value of the voltage at the thermocouple.

First, the voltage between the two wires of the thermocouple (V1) is measured. Then, the RTD voltage is measured and converted to a temperature via a lookup table. This temperature is then converted to its equivalent thermocouple voltage (V2). V1 and V2 are then added to give the overall thermocouple voltage, and this value is then converted to the final temperature measurement.

A piecewise linearization scheme is used to calculate the final temperature value. The respective temperatures for a fixed number of voltages are stored in an array, and values in between are calculated using a linear interpolation between the adjacent points. Figure 3 gives the algorithm error using the ideal thermocouple voltages. Figure 4 shows the error obtained when using the ADC0 pin on the ADuC7060/ ADuC7061 to measure the 52 thermocouple voltages over the full thermocouple operating range. The overall worst-case error is <1°C.

Figure 4. Error When Using Piecewise Linear Approximation Using 52 Calibration Points Measured by the ADC0 Pin of the ADuC7060/ADuC7061

The RTD temperature is calculated using lookup tables and is implemented for the RTD the same way as for the thermocouple. Note that the RTD has a different polynomial describing its temperatures as a function of resistance.

The source code in the design support package was generated using KEIL μVision V3.90.

An extra external regulator is required to power the ADT7311. The ADP7102 was used in this circuit, but an alternative is the ADP120.

If more GPIO pins are required on the microcontroller, the ADuC7060, which comes in a 48-lead LFCSP or a 48-lead LQFP, is another option. Note that the ADuC7060/ ADuC7061 can be programmed or debugged via a standard JTAG interface.

When using the external reference resistor as the reference source for the RTD measurement, it is recommended to buffer the input to the VREF+ pin using an op amp in unity-gain mode. This is to ensure that the input leakage current to the VREF+ pin does not distort the measurement accuracy. In Figure 9, the OP193 was used for this purpose. Figure 1 shows the AD8628 which is characterized to work in the −40°C to +150°C operating range.

For a wider temperature range, a different thermocouple can be used, such as a Type J. To minimize the cold junction compensation error, a thermistor can be placed in contact with the actual cold junction instead of on the PCB.

Instead of using the RTD and external reference resistor for measuring the cold junction temperature, an external digital temperature sensor can be used. For example, the ADT7311 can connect to the ADuC7060/ ADuC7061 via the I2C interface.

Circuit Evaluation & Test

SENT Interface Tests

The SENT interface output was evaluated using a digital oscillo-scope and a logic analyzer. The SENT interface was only tested with a SENT clock period of 100 μs, which is the maximum allowed by the SENT standard. The limiting factors in this implementation include the following:

Variation in FIQ interrupt latency for the timer. The interrupt latency of an ARM7 can be up to 45 CPU clocks. With a 10.24 MHz CPU clock, this is up to 4.4 μs. The minimum is 5× CPU clocks (0.5 μs). The worst-case latency occurs when the ARM7 core is executing a LDMIA or STMIA (load or store multiple values to/from memory). Select the Split Load and Store Multiple compiler option to minimize this, and see Figure 5 to see how to do this.

The 10.24 MHz oscillator on the ADuC7060/ ADuC7061 has a worst-case accuracy of ±3% over the −40°C to +125°C operating temperature range.

Despite these limitations, this implementation is well within the required ±20% timing accuracy of the SENT specification when a SENT clock period of 100 μs is selected.

An EMC filter has been catered for on the SENT output in Figure 1.
Chose values for this filter (R1, C1, C2) to meet the targeted transmitter output waveform, as shown in Figure 6, to reduce
EMC emissions due to the SENT output.

Only limited testing of this filter has been done; therefore, the resistor and capacitor values for the output filter were omitted,
as is shown in Figure 1 (R1, C1, and C2).

To further test and evaluate the circuit, the thermocouple measurements and the RTD measurements were evaluated separately.

Thermocouple Measurement Test

The basic test setup is shown in Figure 7. Two methods were
used to evaluate the performance of the circuit. Initially, the circuit was tested with the thermocouple attached to the board and used to measure the temperature of an ice bucket, and then
the temperature of boiling water.

Figure 7. Test Setup Used to Calibrate and Test the Circuit Over Full Thermocouple Output Voltage Range

A Wavetek 4808 multifunction calibrator was used to fully evaluate the error, as shown in Figure 3 and Figure 4. In this mode, the thermocouple was replaced with the calibrator as the voltage source, as shown in Figure 7. To evaluate the entire range
of a Type T thermocouple, the calibrator was used to set the equivalent thermocouple voltage at 52 points between −200°C
to +350°C for the negative and positive ranges of the Type T
thermocouple (see the ITS-90 Table for Type T thermocouple).

To evaluate the accuracy of the lookup algorithm, 551 voltage readings, equivalent to temperatures in the range of −200°C to +350°C spaced at +1°C, were passed onto the temperature
calculation functions. Errors were calculated for the linear method
and the piecewise linear approximation method as can be seen in Figure 3 and Figure 4.

RTD Measurement Test

To evaluate the RTD circuit and linearization source code, the RTD on the board was replaced with an accurate, adjustable resistance source. The instrument used was the 1433-Z decade resistor. RTD values from 90 Ω to 140 Ω, which represent an RTD temperature range of −25°C to +114°C, was the range of the RTD values tested.

The error results for the RTD tests are shown in Figure 8, and the setup circuit is shown in Figure 9.

Analog Devices Uses Cookies for Enhanced Online Performance

Some cookies are required for secure log-ins but others are optional for functional activities. Our data collection is used to improve our products and services. We recommend you accept our cookies to ensure you’re receiving the best performance and functionality our site can provide. For additional information you may view the cookie details. Read more about our privacy policy.

These are cookies that are required for the operation of analog.com or specific functionality offered. They either serve the sole purpose of carrying out network transmissions or are strictly necessary to provide an online service explicitly requested by you.

Analytics/Performance Cookies:

These cookies allow us to carry out web analytics or other forms of audience measuring such as recognizing and counting the number of visitors and seeing how visitors move around our website. This helps us to improve the way the website works, for example, by ensuring that users are easily finding what they are looking for.

Functionality Cookies:

These cookies are used to recognize you when you return to our website. This enables us to personalize our content for you, greet you by name and remember your preferences (for example, your choice of language or region). Loss of the information in these cookies may make our services less functional, but would not prevent the website from working.

Targeting/Profiling Cookies:

These cookies record your visit to our website and/or your use of the services, the pages you have visited and the links you have followed. We will use this information to make the website and the advertising displayed on it more relevant to your interests. We may also share this information with third parties for this purpose.

Analog Devices is a global leader in the design and manufacturing of analog, mixed signal, and DSP integrated circuits to help solve the toughest engineering challenges.

Interested in the latest news and articles about ADI products, design tools, training and events? Choose from one of our 12 newsletters that match your product area of interest, delivered monthly or quarterly to your inbox.