⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer.asm

📁 VCP201_CODE is a FPGA source code.
💻 ASM
字号:
;==========================================================================
; File Name : timer.asm
;
; Rev:   Date:    Author:     Reason:
;****************************************************************************
;FUNCTION: THIS SUBROUTINE IS TO TOGGLE THE AUTO FIRE FUNCTION FLAG TO 
;          ENABLE THE AUTO FIRE TO BE FUNCTION DURING FIRING. WHEN THE TIMER
;          IS UP THE FLAG F_FIRE WILL BE TOGGLED AND THE TIMER RELOADED.
;ROUTINE NAME: P_FIRE
;INPUT: TMR_AUTO
;OUTPUT: WHEN TMR_AUTO = 0, F_FIRE TOGGLED, TMR_AUTO = 5.  IF THIS ROUTINE
;         IS UPDATED EVERY 1/100 SECOND, THE RESULTING RATE = 10 HZ.
;        WHEN TMR_AUTO NOT = 0, F_FIRE UNCHANGED
;****************************************************************************
;
p_fire:
	btfsc	f_set_force
	goto	pfire1
        btfsc   f_autled1       ;PROCESS ONLY IF AUTO IS SET
	goto	pfire1
        bsf     f_fire          ;F_FIRE ==> NOW FIRING
        return

pfire1:
        decfsz  tmr_auto,F      ;UPDATE AUTO COUNTER
        return                  ;EXIT IF NOT TIME'S UP
        btfss   f_fire          ;TOGGLE F_FIRE FLAG
        goto    pf_setf
        bcf     f_fire
        goto    pfend
pf_setf:
        bsf     f_fire
pfend:
        movlw   DUR_AUTO        ;RELOAD COUNTER
        movwf    tmr_auto
        return

;------------------------------------------------------------
; Name : p_timer
; Parm : 
; Retn : 
; Desc : 
;------------------------------------------------------------
p_timer:
        bcf	STATUS,RP0
	call	p_show_led

	btfss	tmrcnt,3
	return

	bcf	tmrctrl,tmr_en	;Stop timer
	bsf	tmrctrl,tmr_en	;Start again

	movf	tmr_step,F
	btfss	STATUS,Z
	decf	tmr_step,F

;	movf	tmr_beep,F
;	btfss	STATUS,Z
;	decf	tmr_beep,F

	call	p_dbc
	call	p_pgmled
	call	p_autled
	call	p_fire
	
	bsf	STATUS,RP0
        incf    m_reset,F

	btfss	STATUS,Z
        goto    p_time_not_reset
        bcf	STATUS,RP0
	bsf	f_time_reset
        
p_time_not_reset:
	bcf	STATUS,RP0

end_p_timer:
	bsf	tmrctrl,tmr_en	;Start again

	return

 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -