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

📄 led2.asm

📁 《51单片机应用开发桉例精选》源代码及图片下载
💻 ASM
字号:
;-----------------------------------
;                   流水灯实例
;功能:点亮发光管LED并闪烁
;-----------------------------------
ORG	0000H			;伪指令,指定程序从0000H开始存放
LJMP	MAIN			;跳转指令,程序跳转到MAIN处

ORG	0100H			;伪指令,指定以下程序从0100H开始存放
MAIN:
	MOV	SP,#60H		;给堆栈指针赋初值
	MOV	P1,#0FFH		;给P1赋初值,LED全灭
;以下为查表程序
	MOV	DPTR,#LED_TABLE
LIGHT:
	MOV	R7,#42
LOOP:
	MOV	A,#42
	SUBB	A,R7												
	MOVC	A,@A+DPTR
	MOV	P1,A			;输出显示
	LCALL	DELAY		;调延时子程序
	DJNZ	R7,LOOP
	SJMP	LIGHT		;跳转,程序继续

;延时子程序
DELAY:
	MOV	R7,#10H
DELAY0:
	MOV	R6,#7FH
DELAY1:
	MOV	R5,#7FH
	DJNZ	R5,$
	DJNZ	R6,DELAY1
	DJNZ	R7,DELAY0
	RET

;表格数据
LED_TABLE: 
DB	0FFH									;全部熄灭
DB	0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH		;依次逐个点亮
DB	0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,000H		;依次逐个叠加
DB	080H,0C0H,0E0H,0F0H,0F8H,0FCH,0FEH,0FFH		;依次逐个递减
DB	07EH,0BDH,0DBH,0E7H,0E7H,0DBH,0BDH,07EH	;两边靠拢后分开
DB	07EH,03CH,018H,000H,000H,018H,03CH,07EH		;从两边叠加后递减
DB	000H										;全部点亮

END

⌨️ 快捷键说明

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