Hello, i need help with interfacing these temperature sensors with serial port of the computer through PIC16f877. This is my first time using PIC.
I have found the example of lm34 at this website http://www.rentron.com/PicBasic/LM34.htm. I have tried to do exactly like that, however the serial connection doesn't receive anything. I'm not sure whether the PIC or the crystal is still functioning properly.
I dont have the MAX233, so i chosed to do direct connection instead. The code was modified as said on that website.
DEFINE loader_used 1 ' Boot loader is being used
DEFINE debug_mode 1 ' Debug sending True serial data
DEFINE debug_reg portc ' Debug Port = PortC
DEFINE debug_bit 6 ' Debug.bit = PortC.6
DEFINE debug_baud 9600 ' Default baud rate = 9600
DEFINE osc 4 ' We're using a 4 MHz oscillator
DEFINE ADC_BITS 8 ' Set A/D for 8-bit operation
DEFINE ADC_CLOCK 1 ' Set A/D clock Fosc/8
DEFINE ADC_SAMPLEUS 50 ' Set A/D sampling time @ 50 uS
samples VAR WORD ' Multiple A/D sample accumulator
sample VAR BYTE ' Holds number of samples to take
temp VAR BYTE ' Temperature storage
samples = 0 ' Clear samples accumulator on power-up
TRISA = %11111111 ' Set PORTA to all input
ADCON1 = %00000011 ' Set PORTA.0,1,2,5 = A/D, PortA.3 = +Vref
PAUSE 500 ' Wait .5 second
loop:
FOR sample = 1 TO 20 ' Take 20 samples
ADCIN 0, temp ' Read channel 0 into temp variable
samples = samples + temp ' Accumulate 20 samples
PAUSE 250 ' Wait approximately 1/4 seconds per loop
NEXT sample
temp = samples/20
DEBUG "Temperature is: ",DEC temp," Deg F",10,13
samples = 0 ' Clear old sample accumulator
GOTO loop ' Do it forever
END
P.S i have attached a picture of how i have connected the 4MHZ crystal oscillator.
Is there anything else that im missing or what i did wrong? How should i modified the code to implement with AD590 sensor? Sorry for asking too many question.
Thank you for your help!
Peter
Bookmarks