Data Sheet TMP05/TMP06
Rev. C | Page 19 of 28
V
DD
START
PULSE
T
H
(U2)
T
L
(U2)
T
L
(U1)
T
H
(U1)
T
0
TIME
T
H
(U1)
T
L
(U1)
GND
FUNC
CONV/IN
OUT
TMP05 (U1)
GND FUNC
CONV/IN
OUT
TMP05 (U2)
ADuC812
P3.7
P3.2/INTO
TIME
START
PULSE
START
PULSE
T
0
V
DD
0.1µF
V
DD
V
DD
0.1µF
V
DD
V
DD
03340-014
Figure 33. Typical Daisy-Chain Application Circuit
TMP05/TMP06 Data Sheet
Rev. C | Page 20 of 28
DECLARE VARIABLES
INITIALIZE TIMERS
ENABLE TIMER
INTERRUPTS
SEND START
PULSE
START TIMER 0
SET-UP EDGE
TRIGGERED
(H-L) INTO
ENABLE INTO
INTERRUPT
ENABLE GLOBAL
INTERRUPTS
WAIT FOR
INTERRUPT
PROCESS
INTERRUPTS
WAIT FOR END
OF MEASUREMENT
CALCULATE
TEMPERATURE
AND SEND
FROM UART
03340-036
Figure 34. ADuC812 Main Routine Flowchart
SET-UP UART
CONVERT VARIABLES
TO FLOATS
CALCULATE
TEMPERATURE
FROM U1
TEMP U1 =
421 – (751 × (TEMP_HIGH0/
(TEMP_LOW0 – (TEMP_HIGH1)))
CALCULATE
TEMPERATURE
FROM U2
TEMP U2 =
421 – (751 × (TEMP_HIGH1/
(TEMP_LOW1 – (TEMP_HIGH2)))
SEND TEMPERATURE
RESULTS
OUT OF UART
03340-038
Figure 35. ADuC812 Temperature Calculation Routine Flowchart
Data Sheet TMP05/TMP06
Rev. C | Page 21 of 28
YE S
NO
NO
YE S
NO
NO
YES
ENTER INTERRUPT
ROUTINE
CHECK IF TIMER 1
IS RUNNING
COPY TIMER 1 VALUES
INTO A REGISTER
RESET TIMER 1
START TIMER 1
IS TEMPSEGMENT
= 1
CALCULATE
TEMP_HIGH0
RESET TIMER 0
TO ZERO
IS TEMPSEGMENT
= 2
IS TEMPSEGMENT
= 3
CALCULATE
TEMP_LOW1
CALCULATE
TEMP_HIGH2
USING TIMER 0
VALUES
INCREMENT
TEMPSEGMENT
EXIT INTERRUPT
ROUTINE
CALCULATE
TEMP_LOW0
USING TIMER 1
VALUES
CALCULATE
TEMP_HIGH1
USING TIMER 0
VALUES
RESET TIMER 0
TO ZERO
YES
03340-037
Figure 36. ADuC812 Interrupt Routine Flowchart
TMP05 Program Code Example 1
//=============================================================================================
// Description : This program reads the temperature from 2 daisy-chained TMP05 parts.
//
// This code runs on any standard 8052 part running at 11.0592MHz.
// If an alternative core frequency is used, the only change required is an
// adjustment of the baud rate timings.
//
// P3.2 = Daisy-chain output connected to INT0.
// P3.7 = Conversion control.
// Timer0 is used in gate mode to measure the high time.
// Timer1 is triggered on a high-to-low transition of INT0 and is used to measure
// the low time.
//=============================================================================================

TMP06ARTZ-500RL7

Mfr. #:
Manufacturer:
Analog Devices Inc.
Description:
Board Mount Temperature Sensors IC +/-0.5 Deg/C Accurate PWM
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union