|
/* 51单片机汇编语言---控制LED流水效果 /*
/*
按键功能:
P3.3没按下,P3.2没按下,查TAB4
P3.3没按下,P3.2按下 ,查TAB3
P3.3按下 ,P3.2没按下,查TAB2
P3.3按下 ,P3.2按下 , 查TAB1
延时计算:
晶振:22.1184Mhz
一个机器周期时间为12/22.1184MHz即0.54uS
计算公式:
*/
ORG 0000H
MOV P3,#0FFH ;JB 满足P3.x=1,就跳转到LOOPx
START: JB P3.3, LOOP1 ;P3.3没按下,执行LOOP1
JB P3.2, LOOP2 ;
MOV DPTR,#TAB1 ;送表首地址
LCALL FLASH ;LCALL-长调用,跳转到FLASH
SJMP START ;SJMP-转移到START
LOOP2: MOV DPTR,#TAB2 ;P3.3按下,P3.2没按下,执行LOOP2
LCALL FLASH
SJMP START
LOOP1: JB P3.2, LOOP3 ;P3.3没按下,P3.2没按下,执行LOOP3
MOV DPTR,#TAB3 ;P3.3没按下,P3.2按下 ,查TAB3
LCALL FLASH
SJMP START
LOOP3: MOV DPTR,#TAB4 ;P3.3没按下,P3.2没按下,执行LOOP3
LCALL FLASH
SJMP START
FLASH: MOV R0,#00H
MOV R1,#09H ;FLASH和FLASH1构成for循环,循环八次,对应八个不同状态的灯
FLASH1: MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
LCALL DELAY ;循环一次延时时间
INC R0 ;INC 加1操作
DJNZ R1,FLASH1 ;次数减1不等于0,循环
RET
//剩下的看附件
|
-
-
仿真.zip
46.46 KB, 下载次数: 20, 下载积分: 黑币 -5
-
-
程序.zip
25.89 KB, 下载次数: 16, 下载积分: 黑币 -5
评分
-
查看全部评分
|