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

📄 led1.asm

📁 《PIC单片机应用开发典型模块》源代码及图片
💻 ASM
字号:
;-----------------------------------
;                   跑马灯实例
;功能:循环轮流点亮8只发光管LED
;-----------------------------------
LED1_PIN	EQU		P1.0
LED2_PIN	EQU		P1.1
LED3_PIN	EQU		P1.2
LED4_PIN	EQU		P1.3
LED5_PIN	EQU		P1.4
LED6_PIN	EQU		P1.5
LED7_PIN	EQU		P1.6
LED8_PIN	EQU		P1.7

ORG	0000H			;伪指令,指定程序从0000H开始存放
LJMP	MAIN			;跳转指令,程序跳转到MAIN处

ORG	0100H			;伪指令,指定以下程序从0100H开始存放
MAIN:
	MOV	SP,#60H		;给堆栈指针赋初值
	MOV	P1,#0FFH		;给P1赋初值,LED全灭					
LIGHT:															
	CLR		LED1_PIN		;清零P1.0,LED1亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED1_PIN		;置一P1.0,LED1灭						
	CLR		LED2_PIN		;清零P1.1,LED2亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED2_PIN		;置一P1.1,LED2灭						
	CLR		LED3_PIN		;清零P1.2,LED3亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED3_PIN		;置一P1.2,LED3灭						
	CLR		LED4_PIN		;清零P1.3,LED4亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED4_PIN		;置一P1.3,LED4灭						
	CLR		LED5_PIN		;清零P1.4,LED5亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED5_PIN		;置一P1.4,LED5灭						
	CLR		LED6_PIN		;清零P1.5,LED6亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED6_PIN		;置一P1.5,LED6灭						
	CLR		LED7_PIN		;清零P1.6,LED7亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED7_PIN		;置一P1.6,LED7灭							
	CLR		LED8_PIN		;清零P1.7,LED8亮						
	LCALL	DELAY		;调延时子程序							
	SETB	LED8_PIN		;置一P1.7,LED8灭						
	AJMP	LIGHT		;跳转,程序继续						

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

END

⌨️ 快捷键说明

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