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

📄 noname1.asm

📁 一个转来的小车运动源程序
💻 ASM
字号:
START:        SETB P3.7   ;正向跑动
              CLR P3.6
              MOV 22H,#02H 
              MOV 23H,#00H
MAIN:         JB P3.2,IN0RET
              INC     23H    		   ;跑道计数器加1
              MOV     A,23H    		   ;数据入A
              CJNE    A,#06H,JUDGE1        ;不是第6道转JUDGE1
              LCALL   STOP    		   ;是第6道,停车
              DJNZ 22H,IN0RET
              CLR P3.6
              CLR P3.7
              SJMP $
              
JUDGE1:       CJNE    A,#03H,JUDGE2        ;不是第3道转JUDGE2
              LCALL   STOPSLOW    	   ;是第3道,变慢车
              LJMP    IN0RET               ;
JUDGE2:       CJNE    A,#04H,JUDGE3        ;不是第4道转JUDGE3
              LCALL   FAST    		   ;是第4道,变快车
              LJMP    IN0RET               ;
JUDGE3:       CJNE    A,#05H,IN0RET        ;不是第5道转INORET退出
              LCALL   STOPSLOW  	   ;是第5道,变慢车
IN0RET:       MOV A,23H                    ;跑道记数数码显示
              MOV DPTR,#TAB
              MOVC A,@A+DPTR
              MOV P0,A
              LCALL DL1MS
              SJMP MAIN
;共阴数码显示              
TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
                 

              
;************************************
;*          慢车控制子程序          *
;************************************
STOPSLOW:      
               CPL     P3.6    		   ;反向驱动(刹车)
               CPL     P3.7    		   ;反向驱动
               LCALL   DS50MS    	   ;刹车时间(可根据试车情况调整)
               LCALL   DS50MS    	   ;
               LCALL   DS50MS
               LCALL   DS50MS  	   ;
               RET    		   	   ;返回
;************************************
;*         快车控制子程序           *
;************************************
FAST:          CPL     P3.6    		   ; 关4.3V电源
               CPL     P3.7    		   ; 开7.5V电源
               RET    		           ;返回
;
;************************************
;*         停车控制程序             *
;************************************
STOP:         MOV     23H,#00H    	   ;跑道计数单元清0
              CPL     P3.6    		   ;反向驱动(刹车)
              CPL     P3.7    		   ;反向驱动(刹车)
              LCALL   DS50MS               ;刹车时间
              LCALL   DS50MS    	   ;刹车时间(可调整)
              LCALL   DS50MS  
              LCALL   DS50MS  
              SETB   P3.7    		   ;关电机电源
              SETB   P3.6
              LCALL   DS10S    		   ;停车10秒              
              
              SETB P3.6    		   ;汽车反向返回
              CLR  P3.7    		   ;
              SJMP MAIN
 STREN:       RET    		   	   ;返回
 ;1毫秒延时程序
DL1MS: 		MOV R6,#14H
DL1:   		MOV R7,#19H
DL2:   		DJNZ R7,DL2
                DJNZ R6,DL1
                RET
;7毫秒延时程序                
DS50MS: 	LCALL DL1MS	    		;(7毫秒)
                LCALL DL1MS
                LCALL DL1MS
DS20MS: 	LCALL DL1MS
                LCALL DL1MS
                LCALL DL1MS
                RET
;10秒延时程序                
DS10S:    	MOV    R2,#08H	    ;(8*11*16*7=9956毫秒)
TI0:    	MOV    R0,#0B0H
TI1:    	LCALL  DL1MS
         	DJNZ   R0,TI1
        	DJNZ   R2,TI0
        	RET
 
               
              
       

⌨️ 快捷键说明

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