51汇编程序之点亮全部led
2012-07-01 13:53
330 查看
ORG 00H ;程序的开始地址
LJMP START ;跳到程序的起始位置
ORG 30H ;主要是为了跳过堆栈段
START: ;只是一个标号
MOV A,#00H ;数据的传送
mov 90H,#0B
mov 91H,#1B
mov 92H,#1B
mov 93H,#1B
mov 94H,#0B
mov 95H,#0
mov 96H,#0
mov 97H,#0
LOOP:
mov P0,A
LCALL DELAY;调用延时子程序
CPL A ;取反
JMP LOOP
;============================延时子程序
DELAY:
MOV R7,#5
LOOP3:
MOV R5,#0
LOOP2:
MOV R6,#0
LOOP1:
DJNZ R6,LOOP1
DJNZ R5,LOOP2
DJNZ R7,LOOP3
RET ;子程序返回指令
;===================================
END
本来想这段程序应该会是所有的led灯亮灭交替,但是实际上市点阵上最上面一排进行亮灭交替
当我把代码改为:
ORG 00H ;程序的开始地址
LJMP START ;跳到程序的起始位置
ORG 30H ;主要是为了跳过堆栈段
START: ;只是一个标号
mov P1=0X0EH
LOOP:
mov P0,A
//NOP;空操作
LCALL DELAY;调用延时子程序
CPL A ;取反
JMP LOOP
;============================延时子程序
DELAY:
MOV R7,#5
LOOP3:
MOV R5,#0
LOOP2:
MOV R6,#0
LOOP1:
DJNZ R6,LOOP1
DJNZ R5,LOOP2
DJNZ R7,LOOP3
RET ;子程序返回指令
;===================================
END
此时所有led亮灭交替,第二段程序中的P1=0X0EH和第一段程序红色文字应该是等价的,问什么情况不一样
LJMP START ;跳到程序的起始位置
ORG 30H ;主要是为了跳过堆栈段
START: ;只是一个标号
MOV A,#00H ;数据的传送
mov 90H,#0B
mov 91H,#1B
mov 92H,#1B
mov 93H,#1B
mov 94H,#0B
mov 95H,#0
mov 96H,#0
mov 97H,#0
LOOP:
mov P0,A
LCALL DELAY;调用延时子程序
CPL A ;取反
JMP LOOP
;============================延时子程序
DELAY:
MOV R7,#5
LOOP3:
MOV R5,#0
LOOP2:
MOV R6,#0
LOOP1:
DJNZ R6,LOOP1
DJNZ R5,LOOP2
DJNZ R7,LOOP3
RET ;子程序返回指令
;===================================
END
本来想这段程序应该会是所有的led灯亮灭交替,但是实际上市点阵上最上面一排进行亮灭交替
当我把代码改为:
ORG 00H ;程序的开始地址
LJMP START ;跳到程序的起始位置
ORG 30H ;主要是为了跳过堆栈段
START: ;只是一个标号
mov P1=0X0EH
LOOP:
mov P0,A
//NOP;空操作
LCALL DELAY;调用延时子程序
CPL A ;取反
JMP LOOP
;============================延时子程序
DELAY:
MOV R7,#5
LOOP3:
MOV R5,#0
LOOP2:
MOV R6,#0
LOOP1:
DJNZ R6,LOOP1
DJNZ R5,LOOP2
DJNZ R7,LOOP3
RET ;子程序返回指令
;===================================
END
此时所有led亮灭交替,第二段程序中的P1=0X0EH和第一段程序红色文字应该是等价的,问什么情况不一样
相关文章推荐
- tiny4412 裸机程序 二、汇编点亮LED灯
- 心情灰常激动,第一个汇编程序烧入Nand Flash,点亮 led1
- 1.点亮1个led程序分析(汇编)
- ARM9 S3C2440按键中断方式点亮LED的汇编程序
- 点亮一个发光二极管LED--51的第一个程序
- FS2410开发板测试LED的ADS汇编程序代码
- mini2440裸机程序之二--点亮LED灯
- 【Arduino官方教程第一辑】示例程序 1-3 点亮LED
- 点亮单片机世界的第一盏灯——LED程序
- ARM底层学习笔记-裸板实验程序解析-点亮LED
- 分享一个香橙派PC2的C语言点亮LED程序
- arm-linux 学习(1)点亮第一个led程序
- 51单片机8*8点阵LED显示原理及程序
- 单片机小白学步系列(十四) 点亮第一个LED的程序分析
- STM32F103C8T6-LED点亮程序
- 编写第1个程序点亮LED汇编程序
- ARM裸机程序-点亮LED
- 【OK6410裸机程序】点亮LED
- 嵌入式Linux开发——裸板程序点亮开发板上的LED灯
- mini2440裸机程序--完善点亮LED(c…