INCLUDE"p16f676.inc" LIST p=pic16f676 MEMORY EQU 0x20 WWW1 EQU MEMORY+0x1 WWW2 EQU MEMORY+0x2 CHECK EQU MEMORY+0x3 ; ;7SEG PORT DEFINITION ON(OUT)-0 #DEFINE SA1 B'11111110' #DEFINE SA2 B'11111111' #DEFINE SB1 B'11111101' #DEFINE SB2 B'11111111' #DEFINE SC1 B'11111011' #DEFINE SC2 B'11111111' #DEFINE SD1 B'11101111' #DEFINE SD2 B'11111111' #DEFINE SE1 B'11011111' #DEFINE SE2 B'11111111' #DEFINE SF1 B'11111111' #DEFINE SF2 B'11110111' #DEFINE SG1 B'11111111' #DEFINE SG2 B'11101111' #DEFINE SDP1 B'11111111' #DEFINE SDP2 B'11011111' ; ;AD CHANNEL DEFINITION ON-1 #DEFINE ADI B'00010000' ; ORG 0 GOTO START ORG 4 ; START BSF STATUS,RP0 CALL 0x3FF MOVWF OSCCAL MOVLW SA1&SB1&SC1&SD1&SE1&SF1&SG1&SDP1 MOVWF TRISA MOVLW SA2&SB2&SC2&SD2&SE2&SF2&SG2&SDP2 MOVWF TRISC MOVLW ADI MOVWF ANSEL ;ADCON1 FREQ FOSC/16 MOVLW B'01010000' MOVWF ADCON1 BCF STATUS,RP0 ; MOVLW B'00000000' ; MOVWF INTCON MOVLW B'00000111' MOVWF CMCON ;ADCON0 AN4(RC0) RUN MOVLW B'00010001' MOVWF ADCON0 CALL WAIT41 CALL LOFF GOTO MAIN ; ; ; MAIN BTFSC ADCON0,1 GOTO SKIP MOVF ADRESH,W MOVWF CHECK CALL LIGHT BSF ADCON0,1 CALL WAIT963 GOTO MAIN SKIP CALL WAIT995 GOTO MAIN ; ; INCLUDE"asmveri.inc" ; END