怎么用汇编编写单片机第一个灯亮与灭

如题所述

这要看你怎么接的,

给你参考


ORG 0000H
LJMP MAIN

MAIN:
MOV P0,#0FEH  ; 初始点亮LED1
MOV R7,#0FEH  ; 保存P0
MAIN_LP:
LCALL DELAY   ; 延时
MOV A,R7   ;
RL A   ; 循环移位
MOV R7,A   ; 保存到R7
MOV P0,A   ; 点亮下一个LED
JMP MAIN_LP   ; 不停循环

;===========================================================
DELAY:     ; 延时子程序
MOV R0,#0FFH
MOV R1,#0FFH
DLY_LP:
NOP
NOP
DJNZ R0,DLY_LP
MOV R0,#0FFH
DJNZ R1,DLY_LP
RET

END

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-15
汇编语言编写单片机控制灯亮灭是很容易的,用两个指令CLR 或 SETB就可以实现,举列如下:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
CLR P1.0 ;点亮连接到P1.0上的灯,低有效,如果高有效的话用SETB P1.0

SJMP $

END本回答被网友采纳
第2个回答  2014-09-13
;CLR和SETB哪个是亮哪个是灭取决于你灯的接法。还有不知道你说的第一个灯什么意思,P0.0吗?P0口可都是开漏的,没有高电平驱动能力 需要加上拉电阻

MAIN:
CLR P0.0 ;端口拉低
LCALL DELAY500MS;调用延时子程序

SETB P0.0 ;端口置高
LCALL DELAY500MS;调用延时子程序

AJMP MAIN ;跳到标号处循环

DELAY500MS: ;基本型51@12M晶振
MOV R7,#0CDH
DL1:
MOV R6,#74H
DL0:
MOV R5,#09H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
RET

END追问

其他的都做好了 就是汇编语言不会,p1.0口置1,灯就亮,我就想问问怎么置1

追答

SETB P1.0

追问

还是有点不会能留联系方式吗详细问问你

追答

久久漆巴另久武肆肆

本回答被提问者采纳
相似回答