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

📄 int.asm

📁 基本完成迷控制算法
💻 ASM
📖 第 1 页 / 共 2 页
字号:
        call    @@Intface800ms
        endif

        ifdef   @Sys900msIRQ
        b0bts0  @Sys900msIRQ
        call    @@Intface900ms
        endif

        ifdef   @Sys1sIRQ
        b0bts0  @Sys1sIRQ
        call    @@Intface1s
        endif

        ifdef   @Sys5sIRQ
        b0bts0  @Sys5sIRQ
        call    @@Intface5s
        endif

        ifdef   @Sys10sIRQ
        b0bts0  @Sys10sIRQ
        call    @@Intface10s
        endif

        ifdef   @Sys30sIRQ
        b0bts0  @Sys30sIRQ
        call    @@Intface30s
        endif

        ifdef   @Sys60sIRQ
        b0bts0  @Sys60sIRQ
        call    @@Intface60s
        endif

        ifdef   @Sys300sIRQ
        b0bts0  @Sys300sIRQ
        call    @@Intface300s
        endif
  endif
@@Intface99:
        ret

 ifdef   @Sys5msIRQ
;************************************************
;*          Interrupt 5ms Interface             *
;************************************************
@@Intface5ms:      
        call    @@SysTimer    
        call	@@deckeychat    
//	.................
//	.................  	
@@Intface5ms99:
	b0bclr  @Sys5msIRQ  
        ret
 endif

 ifdef   @Sys10msIRQ
;************************************************
;*          Interrupt 10ms Interface            *
;************************************************
@@Intface10ms:
//	.................
//	.................
@@Intface10ms99:
        b0bclr  @Sys10msIRQ
        ret
 endif

 ifdef   @Sys50msIRQ
;************************************************
;*          Interrupt 50ms Interface            *
;************************************************
@@Intface50ms:
	bts1	have_key
	jmp	@f
	bset	RF_remotestart_f
	mov_	RF_remotedata_val+0,remote_rambuf
	
@@:
	
@@Intface50ms99:
        b0bclr  @Sys50msIRQ   
        ret
 endif

 ifdef   @Sys100msIRQ
;************************************************
;*          Interrupt 100ms Interface           *
;************************************************
@@Intface100ms:
//	.................
//	.................
@@Intface100ms99:
        b0bclr  @Sys100msIRQ
        ret
 endif

 ifdef   @Sys200msIRQ
;************************************************
;*          Interrupt 200ms Interface           *
;************************************************
@@Intface200ms:
//	.................
//	.................
@@Intface200ms99:
        b0bclr  @Sys200msIRQ
        ret
 endif

 ifdef   @Sys300msIRQ
;************************************************
;*          Interrupt 300ms Interface           *
;************************************************
@@Intface300ms:
//	.................
//	.................
@@Intface300ms99:
        b0bclr  @Sys300msIRQ
        ret
 endif

 ifdef   @Sys400msIRQ
;************************************************
;*          Interrupt 400ms Interface           *
;************************************************
@@Intface400ms:
//	.................
//	.................
@@Intface400ms99:
        b0bclr  @Sys400msIRQ
        ret
 endif

 ifdef   @Sys500msIRQ
;************************************************
;*          Interrupt 500ms Interface           *
;************************************************
@@Intface500ms:
//	.................
//	.................
@@Intface500ms99:
        b0bclr  @Sys500msIRQ
        ret
 endif

 ifdef   @Sys600msIRQQ
;************************************************
;*          Interrupt 600ms Interface           *
;************************************************
@@Intface600ms:
//	.................
//	.................
@@Intface600ms99:
        b0bclr  @Sys600msIRQQ
        ret
 endif

 ifdef   @Sys700msIRQ
;************************************************
;*          Interrupt 700ms Interface           *
;************************************************
@@Intface700ms:
//	.................
//	.................
@@Intface700ms99:
        b0bclr  @Sys700msIRQ
        ret
 endif

 ifdef   @Sys800msIRQ
;************************************************
;*          Interrupt 800ms Interface           *
;************************************************
@@Intface800ms:
//	.................
//	.................
@@Intface800ms99:
        b0bclr  @Sys800msIRQ
        ret
 endif

 ifdef   @Sys900msIRQ
;************************************************
;*          Interrupt 900ms Interface           *
;************************************************
@@Intface900ms:
//	.................
//	.................
@@Intface900ms99:
        b0bclr  @Sys900msIRQ
        ret
 endif

 ifdef   @Sys1sIRQ
;************************************************
;*          Interrupt 1s Interface              *
;************************************************
@@Intface1s:
//	.................
//	.................
@@Intface1s99:
        b0bclr  @Sys1sIRQ
        ret
 endif

 ifdef   @Sys5sIRQ
;************************************************
;*          Interrupt 5s Interface              *
;************************************************
@@Intface5s:
//	.................
//	.................
@@Intface5s99:
        b0bclr  @Sys5sIRQ
        ret
 endif

 ifdef   @Sys10sIRQ
;************************************************
;*          Interrupt 10s Interface             *
;************************************************
@@Intface10s:
//	.................
//	.................
@@Intface10s99:
        b0bclr  @Sys10sIRQ
        ret
 endif

 ifdef   @Sys30sIRQ
;************************************************
;*          Interrupt 30s Interface             *
;************************************************
@@Intface30s:
//	.................
//	.................
@@Intface30s99:
        b0bclr  @Sys30sIRQ
        ret
 endif

 ifdef   @Sys60sIRQ
;************************************************
;*          Interrupt 60s Interface             *
;************************************************
@@Intface60s:
//	.................
//	.................
@@Intface60s99:
        b0bclr  @Sys60sIRQ
        ret
 endif

 ifdef   @Sys300sIRQ
;************************************************
;*          Interrupt 300s Interface            *
;************************************************
@@Intface300s:
//	.................
//	.................
@@Intface300s99:
        b0bclr  @Sys300sIRQ
        ret
 endif

;************************************************
;*           System Timer Routine               *
;************************************************
@@SysTimer:
;	b0bts1	@Sys5msIRQ
;	jmp	@@SysTimer99
	
 ifdef   @Sys10msC
        decms   @Sys10msC		;count down steps to zero
        jmp     @f
        mov_    @Sys10msC,@Sys10msStep	;reset the steps of 10msC
        b0bset  @Sys10msIRQ		;set @Sys10msIRQ=1
        @@:
 endif

 ifdef   @Sys50msC
        decms   @Sys50msC		;count down steps to zero
        jmp     @f
        mov_	@Sys50msC,@Sys50msStep	;reset the steps of 10msC
        b0bset  @Sys50msIRQ 		;set @Sys50msIRQ=1
        @@:
 endif

 ifdef   @Sys100msC
        decms   @Sys100msC 		;count down steps to zero
        jmp     @f
        mov_    @Sys100msC,@Sys100msStep;reset the steps of 100msC
        b0bset  @Sys100msIRQ 		;set @Sys100msIRQ=1
        @@:
 endif

 ifdef   @Sys200msC
        decms   @Sys200msC 			;count down steps to zero
        jmp     @f
        mov_	@Sys200msC,@Sys200msStep 	;reset the steps of 200msC
        b0bset  @Sys200msIRQ  			;set @Sys200msIRQ=1
        @@:
 endif

 ifdef   @Sys300msC
        decms   @Sys300msC			;count down steps to zero
        jmp     @f
        mov_    @Sys300msC,@Sys300msStep	;reset the steps of 300msC
        b0bset  @Sys300msIRQ 			;set @Sys300msIRQ=1
        @@:
 endif

 ifdef   @Sys400msC
        decms   @Sys400msC 			;count down steps to zero
        jmp     @f
        mov_	@Sys400msC,@Sys400msStep	;reset the steps of 400msC
        b0bset  @Sys400msIRQ  			;set @Sys400msIRQ=1
        @@:
 endif

 ifdef   @Sys500msC
        decms   @Sys500msC   			;count down steps to zero
        jmp     @f
        mov_	@Sys500msC,@Sys500msStep	;reset the steps of 500msC
        b0bset  @Sys500msIRQ 			;set @Sys500msIRQ=1
        @@:
 endif

 ifdef   @Sys600msC
        decms   @Sys600msC  			;count down steps to zero
        jmp     @f
        mov_	@Sys600msC,@Sys600msStep	;reset the steps of 600msC
        b0bset  @Sys600msIRQQ 			;set @Sys600msIRQQ=1
        @@:
 endif

 ifdef   @Sys700msC
        decms   @Sys700msC			;count down steps to zero
        jmp     @f
        mov_	@Sys700msC,@Sys700msStep	;reset the steps of 700msC
        b0bset  @Sys700msIRQ  			;set @Sys700msIRQ=1
        @@:
 endif

 ifdef   @Sys800msC
        decms   @Sys800msC 			;count down steps to zero
        jmp     @f
        mov_	@Sys800msC,@Sys800msStep	;reset the steps of 800msC
        b0bset  @Sys800msIRQ			;set @Sys800msIRQ=1
        @@:
 endif

 ifdef   @Sys900msC
        decms   @Sys900msC  			;count down steps to zero
        jmp     @f
        mov_	@Sys900msC,@Sys900msStep	;reset the steps of 900msC
        b0bset  @Sys900msIRQ 			;set @Sys900msIRQ=1
        @@:
 endif

 ifdef   @Sys1sC
        decms   @Sys1sC   			;count down steps to zero
        jmp     @f
        mov_	@Sys1sC,@Sys1sStep 		;reset the steps of 1sC
        b0bset  @Sys1sIRQ  			;set @Sys1sIRQ=1
        @@:
 endif

 ifdef   @Sys5sC
        decms   @Sys5sC+0 			;count down steps to zero
        jmp     @f
        decms   @Sys5sC+1
        jmp     @f
        mov_    @Sys5sC+0,@Sys5sStepL  		;reset the steps of 5sC
        mov_	@Sys5sC+1,@Sys5sStepH    	;reset the steps of 5sC   
        b0bset  @Sys5sIRQ        		;set @Sys5sIRQ=1
        @@:
 endif

 ifdef   @Sys10sC		
        decms   @Sys10sC         		;count down steps to zero
        jmp     @f
        decms   @Sys10sC+1
        jmp     @f
        mov_	@Sys10sC+0,@Sys10sStepL   	;reset the steps of 10sC
        mov_	@Sys10sC+1,@Sys10sStepH   	;reset the steps of 10sC
        b0bset  @Sys10sIRQ       		;set @Sys10sIRQ=1
        @@:
 endif

 ifdef   @Sys30sC
        decms   @Sys30sC         		;count down steps to zero
        jmp     @f
        decms   @Sys30sC+1       
        jmp     @f
        mov_	@Sys30sC+0,@Sys30sStepL   	;reset the steps of 30sC
        mov_	@Sys30sC+1,@Sys30sStepH   	;reset the steps of 30sC
        b0bset  @Sys30sIRQ       		;set @Sys30sIRQ=1
        @@:
 endif

 ifdef   @Sys60sC
        decms   @Sys60sC+0			;count down steps to zero
        jmp     @f
        decms   @Sys60sC+1 	
        jmp     @f
        mov_	@Sys60sC+0,@Sys60sStepL 	;reset the steps of 1mC
        mov_    @Sys60sC+1,@Sys60sStepH  	;reset the steps of 1mC
        b0bset  @Sys60sIRQ     			;set @Sys60sIRQ=1
        @@:
 endif

 ifdef   @Sys300sC
        decms   @Sys300sC+0        		;count down steps to zero
        jmp     @f
        decms   @Sys300sC+1  	
        jmp     @f
        mov_	@Sys300sC,@Sys300sStepL		;reset the steps of 5mC
        mov_    @Sys300sC+1,@Sys300sStepH 	;reset the steps of 5mC
        b0bset  @Sys300sIRQ     		;set @Sys300sIRQ=1
        @@:
 endif
@@SysTimer99:
    	ret

⌨️ 快捷键说明

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