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
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 channelCode: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
Code: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





Bookmarks