Hello everyone, I'm trying to read the value of a 50K Slider/potentiometer. I'm using ADCIN command on a Pic16F877A at 20Mhz. But the reading is not steady(jumping from one value to another). How can I have a smooth reading from 0 - 255? I read that it is better to use 10K potentiometer, but I have none for now...hope someone can help me out.
Code:
Code:' Define ADCIN parameters Define 20 OSC Define ADC_BITS 8 ' Set number of bits in result Define ADC_CLOCK 3 ' Set clock source (3=rc) Define ADC_SAMPLEUS 50 ' Set sampling time in uS adval Var Byte ' Create adval to store result TRISA = %11111111 ' Set PORTA to all input ADCON1 = %00000011 ' Set PORTA.0,1,2,5 = A/D, PortA.3 = +Vref mainloop: ADCIN 1, adval ' Read channel 1 to adval Serout2 PORTC.6,84, ["Value: ", DEC adval, 13, 10] ' Display value to serial Pause 100 ' Wait .1 second Goto mainloop ' Do it forever End




Bookmarks