超声波HC-SR04的程序问题

关于超声波模块HC-SR04的程序问题

超声波HCSR04测距, WHILE(1)循环问题

最近在用52单片机学做倒车雷达,程序上遇到了问题导致真实测距不准,求大佬们指点指点!

我用了外部中断的方法来计算高电平时间,但是如果打开while(!Echo)以后系统就死了,关闭整个测距程序正常运行,但会有8CM的误差。相关的程序如下:

void  getdistance()
{  
 EA=1;
 EX0=1;
 IT0=1;
 TF0=0;
  TH0=0;
  TL0=0;
  ET0=1;
  openHC();
  //while(!Echo);
  TR0=1;       //???????
     delay(20) ; 
  TR0=0;
  EX0=0;   
}

void TO2() interrupt 0
{ 
  
  timeH1=TH0;
  timeL1=TL0;
  TH0=0;
  TL0=0;
  flag=1;
  
 
}
void timer0() interrupt 1
{
     TH0=0;
        TL0=0;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值