单片机刚刚学到定时器,半天都不知道如何让解决,求解!
时间:10-02
整理:3721RD
点击:
解决每隔一秒亮一个流水灯,按顺序亮,现在却是都亮着,计时器完全不工作呢!
希望各位大神们帮帮忙。
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uint num,a;
void main()
{
TMOD=0X10;
TH1=0x3c;
TL1=0xb0;
EA=1;
ET1=1;
TR1=1;
P1=0x00;
while(1)
{
if(num==200)
{
num=0;
P1=table[a++];
if(a==8)a=0;
}
}
}
void time() interrupt 3
{
TH1=0x3c;
TL0=0xb0;
num++;
}
希望各位大神们帮帮忙。
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uint num,a;
void main()
{
TMOD=0X10;
TH1=0x3c;
TL1=0xb0;
EA=1;
ET1=1;
TR1=1;
P1=0x00;
while(1)
{
if(num==200)
{
num=0;
P1=table[a++];
if(a==8)a=0;
}
}
}
void time() interrupt 3
{
TH1=0x3c;
TL0=0xb0;
num++;
}
自己算一下定时时间,你的时间太长了。
void time() interrupt 3
{
TH1=0x3c;
TL0=0xb0;你这个地方写错了应该是TL1不是TL0.粗心大意
num++;
}
首先查看你的LED是低电平点亮还是高电平点亮,还有二楼说的问题。
大哥,你长的真像我同学,吓了我一跳。
话说,楼上说的我也改了,还是不对,第一个灯很亮,可是其它的灯几乎是同时在闪,晕啊~~~
还有~0x92,这个前面的符号是神马意思,好多例程里面都有
恩恩,我就是粗心大头啊,哎~~~~
是20,对自己快无语了