Quantcast
Channel: MEL PICBASIC Forum
Viewing all articles
Browse latest Browse all 4747

how to read 10 bit value of adc in pic 16f877a

$
0
0
hello everyone I have this code and tried it and its working perfectly to read 8 bit value of an0 ,it shows 0 to 255 value on lcd but i am not being able to read 10bit value of channel please help
To derieve 8 bit value my code is
device is 16f877a

CLEAR

DEFINE OSC 4
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTE
DEFINE LCD_RSBIT 0
DEFINE LCD_EREG PORTE
DEFINE LCD_EBIT 1
DEFINE LCD_LINES 2
DEFINE LCD_BITS 4
DEFINE LCD_COMMANDUS 2000
DEFINE LCD_DATAUS 50


Low porte.2
pause 500


DEFINE ADC_BTTS 8
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEUS 50


TRISA = %11111111
TRISD = %00000000
ADCON1 = %00000111 'set port a digital

A2D_VALUE0 VAR byte



LCDOUT $FE, 1
MAINLOOP:
ADCIN 0, A2D_VALUE0


LCDOUT $FE, $80, DEC A2D_VALUE0,
PAUSE 10
GOTO MAINLOOP
END
__________________________________________________ _____
For ten bit value my code is below but it still shows 8 bit value ,please guide me to generate 10 bit value of AN0 channel
CLEAR
DEFINE OSC 4
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTE
DEFINE LCD_RSBIT 0
DEFINE LCD_EREG PORTE
DEFINE LCD_EBIT 1
DEFINE LCD_LINES 2
DEFINE LCD_BITS 4
DEFINE LCD_COMMANDUS 2000
DEFINE LCD_DATAUS 50


Low porte.2
pause 500


DEFINE ADC_BTTS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEUS 50


TRISA = %11111111
TRISD = %00000000
ADCON1 = %00000111 'set port a digital

A2D_VALUE0 VAR WORD



LCDOUT $FE, 1
MAINLOOP:
ADCIN 0, A2D_VALUE0


LCDOUT $FE, $80, DEC A2D_VALUE0,
PAUSE 10
GOTO MAINLOOP
END
_______________________________________________

Viewing all articles
Browse latest Browse all 4747

Trending Articles