89c51单片机高手 帮我看看 这段程序
voidsend_wave(void){EX0=0;TR0=0;ET0=0;ET1=1;EA=1;TR1=1;flag_send=0;while(flag_send==0...
void send_wave(void)
{
EX0=0;
TR0=0;
ET0=0;
ET1 = 1;
EA=1;
TR1 = 1;
flag_send=0;
while(flag_send==0);
ET0=1;
delay100us();//延时100us左右后再开中断,避免直接回来的回波
delay100us();
delay100us();
EX0=1;//打开外部中断1
TR0=1;//开定时0
} 展开
{
EX0=0;
TR0=0;
ET0=0;
ET1 = 1;
EA=1;
TR1 = 1;
flag_send=0;
while(flag_send==0);
ET0=1;
delay100us();//延时100us左右后再开中断,避免直接回来的回波
delay100us();
delay100us();
EX0=1;//打开外部中断1
TR0=1;//开定时0
} 展开
3个回答
展开全部
这好像是超声波的测距程序吧
程序非常不完整
如果T1是用来产生方波的
那么在产生方波玩之后应该立即打开tr0
再延时后,再打开外中断
程序非常不完整
如果T1是用来产生方波的
那么在产生方波玩之后应该立即打开tr0
再延时后,再打开外中断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while(flag==0)这里是个死循环。停在这里不走了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询