You are on page 1of 2

F:\latest 877a\CCP Module\Capture Module\tmr1_capture.

asm
;
;
;
;
;
;

FIRST USE OF TMR1 IN CCP(CAPTURE)MODE-USE OF CCP1 WITH CCP1


INTERRUPT
CLOCK - 20 MHZ CRYSTAL OSCILLATOR
USED 5 KHZ PULSE IN SIMULATION THROUGH CCP1 PIN (PIN NO. 17)
--------------------------------------------------------------PROGRAMMER-- SYED TASWAR MAHBUB

; DATED-- 30-08-15
; TIMER1 AND CCP1 MODULE- CAPTURE MODE DEMO WITH CCP1 INTERRUPT
;--------------------------------------------------------------TITLE : "USE OF TIMER1 AND CCP1 MODULE IN CAPTURE MODE"
LIST

P=16F877A

#INCLUDE "P16F877A.INC"
__CONFIG

H'3F71'

;SFR SHOWN BELOW NEEDNOT TO BE SHOWN WITH MEMORY ADDRESS AS IT IS


;INCLUDED IN ABOVE MENTIONED .INC FILE BUT SHOWN HERE SO THAT NEW
;PORGRAMMER CAN SEE IN WHICH MEMORY BANKS THESE SFRS ARE LOCATED.

STATUS
PORTB
INTCON
PIR1
TMR1L
TMR1H
T1CON
CCPR1L
CCPR1H
CCP1CON
TRISB
TRISC
PIE1
ADCON1

EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU

0X03
0X06
0X0B
0X0C
0X0E
0X0F
0X10
0X15
0X16
0X17
0X86
0X87
0X8C
0X9F

;
;
;
;

IN
IN
IN
IN

BANK
BANK
BANK
BANK

1
1
1
1

SO
SO
SO
SO

BANK
BANK
BANK
BANK

CHANGE
CHANGE
CHANGE
CHANGE

IS
IS
IS
IS

REQUIRED
REQUIRED
REQUIRED
REQUIRED

;-----------------------------------------------------------------ORG
GOTO

0X00
INIT

ORG
0X04
GOTO
INTR_SVC
;------------------------------------------------------------------INIT
BANKSEL
CLRF
CLRF
MOVLW
MOVWF
BSF
BANKSEL
CLRF
CLRF
BCF
BCF
BANKSEL
BCF
BCF
BANKSEL
BCF
CLRF
MOVLW
MOVWF

TRISB
TRISB
TRISD
B'00000110'
ADCON1
TRISC,2
PORTB
PORTB
PORTD
INTCON,7
INTCON,6
PIE1
PIE1,0
PIE1,2
PIR1
PIR1,2
CCP1CON
B'00000000'
T1CON

; TURN OFF A/D, PORTA=DIGITAL I/O


;CCP1 PIN INPUT

; DISABLE GLOBAL INTR


; DISABLE PERIPHERAL INTR
; DISABLE TMR1 INTR
; DISABLE CCP1 INTR
;
;
;
;

CLEAR CCP1 INTR FLAG


CCP1 MODULE OFF,CLEAR CCP1 PRESCALER
TMR1 PRESCALER AND TMR1 SETUP
TMR1 OFF
1

F:\latest 877a\CCP Module\Capture Module\tmr1_capture.asm


CLRF
CLRF
CLRF
CLRF
MOVLW
MOVWF
BSF
BSF
BANKSEL
BSF
BANKSEL
BSF
GOTO

TMR1H
TMR1L
CCPR1H
CCPR1L
B'00000101'
CCP1CON ; CCP1 IN CAPTURE MODE, CCP1 ON
INTCON,7
INTCON,6
PIE1
PIE1,2
; ENABLE CCP1 INTR
T1CON
T1CON,0
; TIMER1 ON
$

INTR_SVC
CLRF
CLRF
BCF
MOVF
MOVWF
MOVF
MOVWF

TMR1L
TMR1H
PIR1,2
CCPR1H,W
PORTD
CCPR1L,W
PORTB

; CLEAR CCP1 INTR FLAG

RETFIE
END
;--------------------------------------------------------------

You might also like