LIST P=16F877
INCLUDE "P16F877.INC"
__CONFIG H'3F31'
KANALNO EQU 0X70
SONUCBYTE EQU 0X71
ORG 0
CLRF PCLATH
;BSF STATUS,5
;MOVLW H'FF'
;MOVWF TRISA
;MOVLW H'00'
;MOVWF TRISB
;MOVLW H'00'
;MOVWF TRISC
;MOVLW H'00'
;MOVWF TRISD
;MOVLW H'00'
;MOVWF TRISE
;CLRF PORTA
;CLRF PORTB
;CLRF PORTC
;CLRF PORTD
;CLRF PORTE
GOTO ANA_PROGRAM
ORG 4
KESME
RETFIE
ADC_OKU
BCF STATUS,C
RLF KANALNO,F
RLF KANALNO,W
IORLW B'01000001'
BANKSEL ADCON0
MOVWF ADCON0
BSF ADCON0,2
ADC_J1
BTFSC ADCON0,2
GOTO ADC_J1
MOVF SONUCBYTE,F
BTFSS STATUS,Z
GOTO ADC_J2
BSF STATUS,RP0
MOVF ADRESL,W
RETURN
ADC_J2
BCF STATUS,RP0
MOVF ADRESH,W
RETURN
ANA_PROGRAM
MOVLW D'255'
BANKSEL TRISA
MOVWF TRISA
CLRF TRISB
BCF STATUS,RP0
CLRF PORTB
CLRF PORTE
MOVLW 0X41
MOVWF ADCON0
MOVLW 0X80
BSF STATUS,RP0
MOVWF ADCON1
ANA_J1
MOVLW 0X02
MOVWF KANALNO
CLRF SONUCBYTE
CALL ADC_OKU
BANKSEL PORTB
MOVWF PORTB
;*********
MOVWF PORTE
;********
GOTO ANA_J1
END