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

📄 t9.asm

📁 吉林大学计算机学院控制实验的几个必做实验的源代码(大四)~
💻 ASM
字号:
	ORG	0000H
	LJMP	START
	ORG	000BH
	LJMP	INTA
	ORG	0013H
	LJMP	INTB
START:	MOV	SP,#5FH	
	MOV	TMOD,#01H	;方式一
	MOV	TH0,#0EAH	;1/100秒
	MOV	TL0,#00H
	MOV	IE,#86H	;TO,INT1开中断
	SETB	TR0
	SETB	IT1	;INT1边沿触发
	CLR	P1.0	;电机停转
	MOV	R0,#0	;转速
	MOV	R1,#0	;间隔
	MOV	R2,#0	;位选
	MOV	R3,#0	;运算中介
	MOV	R4,#0	;延时用
	MOV	R5,#0	;0-1跳变时用
	MOV	R6,#20	;可修改的M
	MOV	R7,#100	;延时用
LOOP:	MOV	A,R0
	MOV	R3,A
	MOV	R2,#01H
	ACALL	DISPLAY
	MOV	A,R0
	SWAP	A
	MOV	R3,A
	MOV	R2,#02H
	ACALL	DISPLAY
	SJMP	LOOP
DISPLAY:	MOV	A,R3
	ANL	A,#0FH
	MOV	R3,A
	MOV	DPTR,#0FF22H	;熄灭LED
	MOV	A,#0FFH
	MOVX	@DPTR,A
	MOV	A,R2	;位选
	MOV	DPTR,#0FF21H
	MOVX	@DPTR,A
	MOV	A,R3	;段选
	MOV	DPTR,#TABLE
	MOVC	A,@A+DPTR
	MOV	DPTR,#0FF22H
	MOVX	@DPTR,A
	MOV	R4,#0FFH	;延时
	DJNZ	R4,$
	RET
INTA:	PUSH	PSW
	PUSH	ACC
	CLR	CY	;设置0-1跳变
	INC	R5
	MOV	A,R6
	SUBB	A,R5
	JC	OUT1
	CLR	P1.0
	SJMP	OUT2
OUT1:	SETB	P1.0
	CLR	CY
	MOV	R5,#0
OUT2:	DJNZ	R7,OUT4	;判断是否到一秒
	MOV	A,R1	;存转速
	MOV	R0,A
	CLR	CY	;修正转速
	SUBB	A,#15H
	JZ      OUT3      
	JC	UP
	INC	R6
	SJMP	OUT3
UP:	DEC	R6
OUT3:	MOV	R1,#0
	MOV	R7,#100
OUT4:	POP	ACC
	POP	PSW
	MOV	TH0,#0EAH	;1/100秒
	MOV	TL0,#00H
	RETI
INTB:	INC	R1
	RETI
TABLE:	DB	0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H,88H,83H,0C6H,0A1H,86H,8EH
	END

⌨️ 快捷键说明

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