
TMP05/TMP06
CONTINUOUSLY CONVERTING APPLICATION
This section provides an example of how to connect one
TMP05 in continuously converting mode to a microchip
PIC16F876 microcontroller. Figure 37 shows how to interface to
the PIC16F876.
Rev. 0 | Page 23 of 28
0
3.3V
GND
FUNC
CONV/IN
OUT
TMP05
PIC16F876
V
DD
0.1
μ
F
PA.0
FIRST TEMP
MEASUREMENT
T
0
TIME
SECOND TEMP
MEASUREMENT
TMP05 Program Code Example 2 shows how to communicate
from the microchip device to the TMP05. This code can also be
used with other PICs by simply changing the include file for the
part.
Figure 37. Typical Daisy-Chain Application Circuit
TMP05 Program Code Example 2
//=============================================================================================
//
// Description : This program reads the temperature from a TMP05 part set up in continuously
// converting mode.
// This code was written for a PIC16F876, but can be easily configured to function with other
// PICs by simply changing the include file for the part.
//
//
Fosc = 4MHz
//
Compiled under CCS C compiler IDE version 3.4
//
PWM output from TMP05 connected to PortA.0 of PIC16F876
//
//============================================================================================
#include <16F876.h>
// Insert header file for the particular PIC being used
#device adc=8
#use delay(clock=4000000)
#fuses NOWDT,XT, PUT, NOPROTECT, BROWNOUT, LVP
//_______________________________Wait for high function_____________________________________
void wait_for_high() {
while(input(PIN_A0)) ; /* while high, wait for low */
while(!input(PIN_A0)); /* wait for high */
}
//______________________________Wait for low function_______________________________________
void wait_for_low() {
while(input(PIN_A0)); /* wait for high */
}
//_______________________________Main begins here____________________________________________
void main(){
long int high_time,low_time,temp;
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_spi(FALSE);
setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_2);
//Sets up timer to overflow after 131.07ms