乒乓球课设

PE8255 EQU 206H;8255鐨勬帶鍒跺彛
PA8255 EQU 200H;8255鐨凱A鍙
PB8255 EQU 202H;8255鐨凱B鍙
PC8255 EQU 204H;8255鐨凱C鍙;鍫嗘爤娈
STACK   SEGMENT STACK
   STA     DB  100 DUP(0)
   TOP     EQU LENGTH STA
STACK   ENDS
;浠g爜娈
CODE    SEGMENT 'CODE'
        ASSUME CS:CODE,SS:STACK
START:
	MOV DX,PE8255;璁剧疆8255鐨凱C鍙d负杈撳叆锛孭A鍜孭B鍙h緭鍑	
	MOV AL,89H
	OUT DX,AL
	
	MOV AL,00H
	MOV DX,PB8255	
	OUT DX,AL;鎵€鏈塋ED鐏唲鐏	
	MOV DX,PB8255	
	OUT DX,AL;寰楀垎娓呴浂
	
MAINLOOP:
	MOV DX,PC8255
	IN AL,DX;璇绘寜閿姸鎬	
	TEST AL,01H
	JNE M1
	;鎸宸︿晶鍑绘墦 閿
	M04:MOV AL,20H;宸鐏	
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
M03:MOV AL,10H;宸鐏	
MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	MOV AL,08H;缃	
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	MOV AL,04H;鍙
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	;鑾峰彇鎸夐敭鐘舵€	
	MOV DX,PC8255
	IN AL,DX
	TEST AL,02H
	JNZ M01
	JMP M11;鎸変笅 鍙充晶鎸夐敭 鍒欒鏄庡彸渚у嚮鎵
	M01:
	MOV AL,02H;鍙
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	;鑾峰彇鎸夐敭鐘舵€	
	MOV DX,PC8255
	IN AL,DX
	TEST AL,02H
	JNZ M02
	JMP M10
M02:MOV AL,01H;鍙充晶鍦伴潰锛堟帀钀斤級
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	INC BH;宸︿晶鍔鍒	
	MOV AL,BH
	MOV CL,4
	SHL AL,CL
	OR AL,BL
	MOV DX,PA8255
	OUT DX,AL
	
	JMP M0
M1:	TEST AL,02H
	JNZ M0
	;鎸鍙充晶鍑绘墦 閿
	M10:MOV AL,02H;鍙鐏	
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
M11:MOV AL,04H;鍙鐏	
MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	MOV AL,08H;缃	
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	MOV AL,10H;宸鐏	
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	;鑾峰彇鎸夐敭鐘舵€	
	MOV DX,PC8255
	IN AL,DX
	TEST AL,01H;鎸変笅 宸︿晶鍑诲嚭 閿紝鍒欒鏄庡乏渚у嚮鎵	
	JNZ M12
	JMP M03
	
M12:MOV AL,20H;宸鐏	
MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	;鑾峰彇鎸夐敭鐘舵€	
	MOV DX,PC8255
	IN AL,DX
	TEST AL,01H
	JNZ M13
	JMP M04
	
M13:MOV AL,40H;宸︿晶鍦伴潰锛堟帀钀斤級
	MOV DX,PB8255
	OUT DX,AL
	CALL DELAY
	
	
	INC BL;鍙充晶鍔鍒	
	MOV AL,BH
	MOV CL,4
	SHL AL,CL
	OR AL,BL
	MOV DX,PA8255
	OUT DX,AL
	
M0:	JMP MAINLOOP
DELAY PROC NEAR;闀垮欢鏃  
PUSH CX
  PUSH BX
  MOV BX,300;寰幆300*500娆
  DLY1: MOV CX,500
DLY:NOP
    NOP
    NOP
    LOOP DLY
DLY0:
    DEC BX
	JNZ DLY1
	POP BX
	POP CX
    RET
DELAY ENDP
CODE    ENDS
        END START

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值