babboy12345
New Member
i was just connect vdd 5v,vss ground, ra0 as input(input from frequency generator) and output at RB0,why show me ntg???
This is my program..
i was supply 1v to it adc, and i sub with 0xc8(5v / 1024 = 5m) x( 200=1v) ,if =zero then turn on RB0.
anyone pls help me on it,i really need for somw help.....pls
This is my program..
Code:
LIST P=16F877A
INCLUDE "P16F877a.inc"
__CONFIG _CP_OFF & _WDT_OFF & _XT_OSC & _PWRTE_ON
CHK1 EQU 0X21
CNT1 EQU 0CH
CNT2 EQU 0DH
count EQU 0x20
org 0x000
nop ;
banksel TRISA
movlw b'00000000';
movwf TRISB;
BCF STATUS,RP0
clrf PORTB
banksel ADCON1
movlw b'10000000
movwf ADCON1
banksel ADCON0
movlw b'10000001
movwf ADCON0
getAD movlw 007
movwf count
down decfsz count
goto down
bsf ADCON0,GO
wait btfsc ADCON0,GO
goto wait
return
delay MOVLW D'5'
MOVWF CNT2
CON1 MOVLW H'FF'
MOVWF CNT1
DECFSZ CNT1,1
GOTO $-1
DECFSZ CNT2,1
GOTO CON1
RETURN
start call getAD ; get adc result store at adresh
movlw 0xC8 ;
subwf ADRESH,1 ; adc result in adresh will minus wiv (0xc8=1v)
btfsc ADRESH,0 ;if after minus =0,turn on portb
goto start
btfsc ADRESH,1
goto start
btfsc ADRESH,2
goto start
btfsc ADRESH,3
goto start
btfsc ADRESH,4
goto start
btfsc ADRESH,5
goto start
btfsc ADRESH,6
goto start
btfsc ADRESH,7
goto start
bsf PORTB,1
call delay
END
i was supply 1v to it adc, and i sub with 0xc8(5v / 1024 = 5m) x( 200=1v) ,if =zero then turn on RB0.
anyone pls help me on it,i really need for somw help.....pls
Last edited: