Hi guys,
I have a strange problem with 16F1828 .
So, I want to use AN6 (PORTC.2) to read a variable from 5k potentiometer . In main program if I use only HPWM2 , all works ok.
If I add HPWM1 , on AN6 pin I have not a proportional voltage, like this pin is not analog input.
Can somebody help me, please ? The last 2 days I spent my time to solve this problem, but no succes !
Code:
#CONFIG
__CONFIG _CONFIG1, _FCMEN_OFF & _FOSC_INTOSC & _WDTE_OFF & _MCLRE_OFF & _CP_ON & _IESO_OFF & _BOREN_OFF & _PWRTE_OFF
__CONFIG _CONFIG2, _PLLEN_OFF & _STVREN_OFF & _LVP_OFF
#ENDCONFIG
DEfine OSC 4
OSCCON = %01101010 'sets the internal oscillator to 4Mhz
ADCON0 = %00000000
ADCON1 = %00000000
FVRCON = %11000010 'voltage reference set to 2.048V
CM1CON0 = 0 ' COMPARATORS OFF
CM1CON1 = 0
CM2CON0 = 0 ' COMPARATORS OFF
CM2CON1 = 0
CPSCON0 = 0 'CAPACTIVE SENSE MODULE OFF
RCSTA.7 = 0 'SERIAL PORT OFF
'APFCON0 = %10000000
'APFCON1 = %00001010
'APFCON1.3 = 1
TRISA = %00000011
TRISB = %00000000
TRISC = %00000100 ' PORTC.2 input
ANSELA = %00000011
ANSELB = %00000000
ANSELC = %00000100 ' ANALOG INPUT AN6
OPTION_REG.7 = 1 ' disable WPU
WPUA = %00000000
WPUB = %00000000
WPUC = %00000000
porta = 0
portb = 0
portc = 0
inh1 var portc.4
inh2 var portc.0
adval var byte
duty1 var byte
duty2 var byte
duty1 = 0
pause 200
'========================PROGRAM=============================
main:
adcin 6 , adval
pause 10
duty2 = adval
hpwm 2 , duty2, 2000
hpwm 1 , duty1, 2000 '- here is problem
high inh1
high inh2
goto main
end
'=============================================================
1000 x thx
Bookmarks