单片机8个发光二极管,从右至左依次两个两个亮起,时间间隔2秒

没有定时器,有没有位移寄存器,要求循环结构实现,要程序,不要方法。... 没有定时器,有没有位移寄存器,要求循环结构实现,要程序,不要方法。 展开
 我来答
做而论道
高能答主

2013-06-19 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
;要想精确定时2s,就应该使用定时器,并且使用中断方式。
;在多任务时,如果采用循环查询,定时精度就会差一些:

ORG 0000H
SJMP START
;-------------------------
ORG 000BH
MOV TH0, #4CH
DJNZ R2, T0_END
MOV R2, #20
RR A
MOV P1, A
T0_END:
RETI
;-------------------------
START:
MOV TMOD, #01H
MOV TH0, #4CH
SETB TR0
MOV IE, #82H
MOV R2, #20
MOV A, #3FH ;有两个低电平
MOV P1, A ;输出

SJMP $

;---------------------------

END

晶振频率为 11.0592MHz。
_杜_Yooo_
2013-06-18 · 超过19用户采纳过TA的回答
知道答主
回答量:85
采纳率:0%
帮助的人:54.6万
展开全部
可以用FOR循环延时。具体延时程序可以根据晶振频率计算。推荐"单片机小精灵"帮助你计算
unsigned char i,temp;
temp = 0xfe; (根据二极管的接法)
for(i=0;i<7;i++)
{
P1 = P1 >> 1;
delay2s(); // 这个延时函数自己用单片机小精灵算
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式