用汇编语言编流水灯,有8个LED灯,LED1~LED8 灯按顺序点亮,每个等亮一秒转到下个灯,一直循环亮

采用外部中断,按下中断按钮灯亮一秒后熄灭。需画出电路图能不能写上注释啊??????... 采用外部中断,按下中断按钮灯亮一秒后熄灭。需画出电路图
能不能写上注释啊??????
展开
 我来答
zhxiufan
推荐于2017-10-04 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38391
国家科技进步奖

向TA提问 私信TA
展开全部
这个流水灯是很普通的一种花样,假设LED接P1口,程序如下:
ORG 0000H
LJMP MAIN
0RG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H

MOV TH0,#HIGH(65536-50000) ;50毫秒定时

MOV TL0,#LOW(65536-50000)

SETB TR0

SETB ET0

SETB EA

MOV A,#0FEH
MOV P1,A

MOV R2,#20
SJMP $

T0ISR:
CLR TR0

MOV TH0,#HIGH(65536-50000)

MOV TL0,#LOW(65536-50000)

SETB TR0

DJNZ R2,T0E ;1秒未到直接退出

MOV R2,#20

RL A

MOV P1,A ;1秒一变的花样流水灯。

T0E:
RETI

END
zhoutingkun12
2011-11-25 · TA获得超过230个赞
知道答主
回答量:16
采纳率:0%
帮助的人:3万
展开全部
ORG 0000H
SJMP MAIN
ORG 0030H
SJMP DELAY
MAIN:MOV P0,#0EEH
CALL DELAY
MOV P0,#0EDH
CALL DELAY
MOV P0,#0EBH
CALL DELAY
MOV P0,#0E7H
CALL DELAY
MOV P0,#0DEH
CALL DELAY
MOV P0,#0DDH
CALL DELAY
MOV P0,#0DBH
CALL DELAY
MOV P0,#0D7H
CALL DELAY
DELAY:MOV R0,#50H
D1:MOV R1,#100H
D2:MOV R2,#100H
DJNZ R1,D2
DJNZ R0,D1
RET
END
追问
能不能补上注释啊?采用外部中断怎么没有啊 INT0
追答
ORG 0000H       ;复位入口
SJMP MAIN ;转到主程序
ORG 0030H ;主程序入口
SJMP DELAY ;跳到延时程序
MAIN:MOV P0,#0EEH;把#0EEH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0EDH;把#0EDH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0EBH;把#0EBH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0E7H;把#0E7H送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0DEH;把#0DEH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0DDH;把#0DDH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0DBH;把#0DBH送到P0端口
CALL DELAY ;调用延时程序
MOV P0,#0D7H把#0D7H送到P0端口
CALL DELAY 调用延时程序
DELAY:MOV R0,#50H;延时程序,把#50H送进R0
D1:MOV R1,#100H;把#100H送进R1
D2:MOV R2,#100H;把#100H送进R2
DJNZ R1,D2;做R1减一运算,不等于0则跳到D2
DJNZ R0,D1;R0做减一运算,不等于0则跳到D1
RET;子程序返回
END ;程序结束
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式