I don't have 16F877A now. If I continue to use 16F877, what is the best method to detect IN1>IN2?
This means I don't have any interrupt, and I have to poll the go/done bit in ADCON0 while sacrificing on executing other task?
I don't have 16F877A now. If I continue to use 16F877, what is the best method to detect IN1>IN2?
This means I don't have any interrupt, and I have to poll the go/done bit in ADCON0 while sacrificing on executing other task?
The A/D module has an interrupt that fires when a conversion is complete.
You don't have to sit in a loop polling the Go/Done bit.
<br>
DT
Oh, that's great. How do I implement this using DT interrupt?
Below is what I'm currently doing, using pause 25ms before the next AD.
Code:define OSC 20 ' Define ADCIN parameters Define ADC_BITS 10 ' Set number of bits in result Define ADC_CLOCK 3 ' Set clock source (3=rc) Define ADC_SAMPLEUS 50 ' Set sampling time in uS ADCON1= %00000111 'PIC16F877 all analog input except RE1,RE2 'start AD here ADCIN 0, adval ' Read channel0 RA.0 to adval pause 25 ADCIN 1, adval2 ' Read channel1 RA.1 to adval pause 25
Bookmarks