急求高手给写一个51单片机程序~注意:只要汇编语言~不要C语言~~急急急~~~~~~~~

急求循环流水灯

第一步:8个发光二极管同时亮并且闪烁2次,闪烁间隔时间为0.3秒。

第二步:8个发光二极管一个一个亮,间隔时间为0.85秒。

第三步:开始时,8个发光二极管全部熄灭,0.3秒后一个发光二极管被点亮,间隔0.3秒后两个亮,间隔0.3秒后三个全亮,依次类推,直至8个发光二极管全部被点亮。

第四步:开始时,8个发光二极管全部被点亮,1秒后有一个发光二极管被熄灭,间隔1秒后,两个被熄灭,在间隔1秒后三个被熄灭,依次类推,直至8个发光二极管全部熄灭。

第五步:开始时,8个发光二极管全部熄灭,然后一个发光二极管被点亮(点亮的过程是从暗到亮的过程,这个过程是PWM方式),接着是下一个发光二极管,依次类推,直至8个发光二极管都被点亮。

第六步:循环执行前面的第一步至第五步。

如果可以请附上注释。谢谢~~~~~急急急~~~~~~~~

第1个回答  2011-01-04
#include "reg51.h"
sbit P1_0=P1^0;
void main()
{
TMOD=0X10;//T1 定时功能工作方式1
TH1=0X0B;//写入初值
TL1=0XE0;
TR1=1;
while(1)
{
while(TF1)//
{
TF1=0;
P1_0=!P1_0;//P1.0取反

}
}
}
void time1_int(void) interrupt 3
{
TH1=0X0B;
TL1=0XE0;
//P1_0=!P1_0;//P1.0取反,放在这也行

}
第2个回答  2010-12-22
#include "reg51.h"
sbit P1_0=P1^0;
void main()
{
TMOD=0X10;//T1 定时功能工作方式1
TH1=0X0B;//写入初值
TL1=0XE0;
TR1=1;
while(1)
{
while(TF1)//
{
TF1=0;
P1_0=!P1_0;//P1.0取反

}
}
}
void time1_int(void) interrupt 3
{
TH1=0X0B;
TL1=0XE0;
//P1_0=!P1_0;//P1.0取反,放在这也行

}本回答被提问者和网友采纳
相似回答
大家正在搜