文件名称:检测PIC 定时器 TMR1
文件大小:3KB
文件格式:ASM
更新时间:2013-06-23 03:39:06
测PIC T1
IST P=16C73 INCLUDE "P16C73.INC" CBLOCK 30H LAY1,LAY2,LAY3,RAM ENDC ORG 00H INC CLRF PORTB CLRF PORTC BSF STATUS,5 CLRF PORTC CLRF PORTB BCF STATUS,5 ;**************************TMR1初始化************************** BSF STATUS,5 MOVLW 00H MOVWF PIE1 ;关TMR1中断 BCF STATUS,5 MOVLW 00H MOVWF T1CON ;设TMR1分频为1;1内部时钟,关TMR1 BCF INTCON,7 ;关总中断 MOVLW 00H ;0DFH 和0B1H 是20HZ, MOVWF TMR1L MOVLW 00H ; MOVWF TMR1H ;设初值为FFF6,就是100KHZ BCF PIR1,0 ;清TMR1标志位 BSF INTCON,6 ;开外设中断 BSF INTCON,7 ;开总中断 BSF T1CON,0 ;启动TMR1 GOTO MAIN ;***************************************************************** MAIN MOVLW 0FFH MOVWF PORTC CALL LAY1S ; 灯亮1S MOVLW 00H MOVWF PORTC CALL LAY2S ; 灯暗2S BTFSS PIR1,TMR1IF GOTO $ ; 等到溢出 MOVLW 0FFH MOVWF PORTC CALL LAY2S ;亮2S ;************************TMR1初始化********************************* MOVLW 00H MOVWF T1CON ;设TMR1分频为1;1内部时钟,关TMR1 BCF INTCON,GIE ;关总中断 MOVLW 00H MOVWF PORTC CALL LAY2S ;暗2S MOVLW 0FEH ;0DFH 和0B1H 是20HZ, MOVWF TMR1L MOVLW 0FFH MOVWF TMR1H ;设初值为FFF6,就是100KHZ BCF PIR1,TMR1IF ;清TMR1标志位 BSF INTCON,PEIE ;开外设中断 BSF INTCON,GIE ;开总中断 BSF T1CON,TMR1ON ;启动TMR1 ;******************************************************************** AA BTFSS PIR1,TMR1IF ; 判断有没有溢出 GOTO $-1 ;ON COMF PORTC ;YES GOTO AA LAY1S MOVLW 037H MOVWF LAY3 MOVLW 0F0H MOVWF LAY1 MOVLW 018H MOVWF LAY2 DECFSZ LAY2 GOTO $-1 DECFSZ LAY1 GOTO $-5 DECFSZ LAY3 GOTO $-9 RETURN LAY2S MOVLW 069H MOVWF LAY3 MOVLW 0F0H MOVWF LAY1 MOVLW 018H MOVWF LAY2 DECFSZ LAY2 GOTO $-1 DECFSZ LAY1 GOTO $-5 DECFSZ LAY3 GOTO $-9 RETURN END