Upload
taswarmahbub
View
65
Download
3
Embed Size (px)
DESCRIPTION
1 second Delay using Timer0 Interrupt
Citation preview
F:\latest 877a\timer0 overflow 1sec delay\1sec_delay_intr.asm
;-----------------------------------------------------------------; PROCESSING INTERRUPT- 1SECOND DELAY BY TIMER0 OVERFLOW INTERRUPT;PROGRAMMAR- SYED TASWAR MAHBUB; MODUS OPARENDY:; LEDS ARE ON AND OFF ALTERNATELY IN EACH SECOND.; TMR0 OVERFLOW IS 255X128(PRESCALE)=6.528 MS; COUNTER INCREASES UPTO 153 TIMES AND TOTAL; STANDS= 6.528X153=1SEC(0.998784SEC ACTUALLY).;------------------------------------------------------------------
TITLE: "1SECOND DELAY BY TIMER0 OVERFLOW INTERRUPT ROUTINE"
LIST P =PIC16F877A #INCLUDE "P16F877A.INC"
__CONFIG H'3F71'
CBLOCK 0X20 CNT ENDC
ORG 0X00 GOTO INIT
ORG 0X04 GOTO ISR
;--------- MAIN PROGRAM STARTS HERE --------------------------------------
INIT BANKSEL TRISB CLRF TRISB CLRF TRISC CLRF TRISD MOVLW B'10000110' ;PRESCALE VALUE = 128 MOVWF OPTION_REG BANKSEL PORTB CLRF PORTB CLRF PORTC CLRF PORTD
START BCF INTCON,2 ;TOIF DISABLE,SO INTR FLAG CAN BE SET WITH INTR. BSF INTCON,5 ;TOIE SET BSF INTCON,7 ;GIE SET CLRF CNTLOOP GOTO LOOP ;PROGRAM COUNTER WILL REMAIN HERE TILL INTERRUPT
ISR BCF INTCON,2 ;TOIF DISABLE,SO INTR FLAG CAN BE SET WITH NEXT INTR INCF CNT,F MOVLW .153 SUBWF CNT,W ; WHEN COUNT= 153, COUNT CLEARED,PORTB COMPLEMENTED. BTFSS STATUS,2 RETFIE COMF PORTB,F COMF PORTC,F COMF PORTD,F CLRF CNT RETFIE ;RETURN FROM INTERRUPT ROUTINE. END ;----------------------------------------------------------------------------------------
1