你刚才发的程序有错啊
答案:1 悬赏:20 手机版
解决时间 2021-01-15 07:25
- 提问者网友:萌卜娃娃
- 2021-01-14 13:45
你刚才发的程序有错啊
最佳答案
- 五星知识达人网友:归鹤鸣
- 2021-01-14 15:06
是这个吗?没有错误呀,我编译通过了的。你去掉工程中的STARTUP.A51
#include
#define uchar unsigned char
#define uint unsigned int
uint pwm,tper,times=0;
uchar tab[4]={20,40,60,80};
sbit pulse=P1^0;
bit flag;
void t0isr() interrupt 1
{
flag=~flag;
pulse=~pulse;
if(flag)
{
TH0=(65536-pwm)/256;
TL0=(65536-pwm)%256;
}
if(!flag)
{
TH0=(65536-(tper-pwm))/256;
TL0=(65536-(tper-pwm))%256;
}
}
void t1isr() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
times++;
pwm=tper*tab[(times/200)%4]/100;
}
main()
{
TMOD=0x11;
tper=1000;
pwm=tper*tab[0]/100;
TH0=(65536-pwm)/256;
TL0=(65536-pwm)%256;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR0=1;
TR1=1;
ET0=1;
ET1=1;
EA=1;
while(1);
}
追问行了,我新建了个工程···你发上来那个是什么?打不开···追答我用的是KEIL4,没有问题。来自:求助得到的回答
#include
#define uchar unsigned char
#define uint unsigned int
uint pwm,tper,times=0;
uchar tab[4]={20,40,60,80};
sbit pulse=P1^0;
bit flag;
void t0isr() interrupt 1
{
flag=~flag;
pulse=~pulse;
if(flag)
{
TH0=(65536-pwm)/256;
TL0=(65536-pwm)%256;
}
if(!flag)
{
TH0=(65536-(tper-pwm))/256;
TL0=(65536-(tper-pwm))%256;
}
}
void t1isr() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
times++;
pwm=tper*tab[(times/200)%4]/100;
}
main()
{
TMOD=0x11;
tper=1000;
pwm=tper*tab[0]/100;
TH0=(65536-pwm)/256;
TL0=(65536-pwm)%256;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR0=1;
TR1=1;
ET0=1;
ET1=1;
EA=1;
while(1);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯