|
³¬Â•²¨Ä£‰KßxÓõÄÊÇHC-SR04¡£Ê×ÏÈ£¬ÀûÓÃ†ÎÆ¬™C°l³öÒ»‚€µÄ¸ßëŠÆ½ÐÅÌ–£¬Æä´Î£¬³¬Â•²¨°lÉäÆ÷•þÏòijһ·½Ïò°lÉ䳬•²¨£¬ÔÚ°lÉä•r¿ÌµÄͬ•ré_ʼӋ•r£¬³¬Â•²¨ÔÚ¿ÕšâÖЂ÷²¥£¬Í¾ÖÐÓöµ½ÕϵKÎï¾ÍÁ¢¼´·µ»Øí£¬³¬Â•²¨½ÓÊÕÆ÷ÊÕµ½·´É䲨Á¢¼´Í£Ö¹Ó‹•r£¬³¬Â•²¨ÔÚ¿ÕšâÖеĂ÷²¥ËÙ¶Èžé340m/s£¬¸ù“þÓ‹•rÆ÷ӛ䛵ĕrégt¿ÉÒÔËã³ö¾àÕϵKÎïµÄ¾àëx=t*340/2¡£³ÌÐò£º
void pingyi(void)
{
ControlCar(4);
delay_nms (400);
ControlCar(1);
delay_nms (300);
ControlCar(3);
delay_nms (400);
ControlCar(1);
delay_nms (410);
ControlCar(3);
delay_nms (400);
ControlCar(1);
delay_nms (300);
ControlCar(4); //ÓÒÞD100ms
delay_nms (350);
ControlCar(1);
delay_nms (300);
}
void Display(void) //”µ´a¹Üï@ʾº¯”µ
{ unsigned char b;
for(b=193456789;b>0;b--)
{
sw1=0;
P0=Disp_Tab[disbuff[0]];
delay_nus(20);
sw1=1;
sw2=0;
P0=Disp_Tab[disbuff[1]];
delay_nus(20);
sw2=1;
sw3=0;
P0=Disp_Tab[disbuff[2]];
delay_nus(20);
sw3=1;
sw4=0;
P0=Disp_Tab[disbuff[3]];
delay_nus(20);
sw4=1;
}
}
void Conut(void)
{
time=TH0*256+TL0; /*´Ë•rtimeµÄ•rég†Îλ›Q¶¨ÓÚ¾§ÕñµÄËÙ¶È£¬Íâ½Ó¾§Õñ
11.0592MHZ•r£¬timeµÄÖµžé0.54us*time£¬†Îλžé΢Ã룬
ÄÇô1us•²¨ÄÜ×ß¶àßhµÄ¾àëxÄØ£¿
1s=1000ms=1000000us 340/1000000=0.00034Ã×=0.34
ºÁÃ× Ò²¾ÍÊÇ1usÄÜ×ß0.34ºÁÃ× */
TH0=0;
TL0=0;
S=(time*1.7)/10;
if(S>4500)
{
ControlCar(1);
disbuff[0]=10; //ï@ʾ¾àëxµÄǧλ
disbuff[1]=10; //°Ùλ
disbuff[2]=10; //ʮλ
disbuff[3]=10; //‚€Î»
Display();
}
if(300<S<4500)
{
ControlCar(1);
disbuff[0]=S/1000;
disbuff[1]=S%1000/100;
disbuff[2]=S%1000%100/10;
disbuff[3]=S%1000%10 %10;
Display();
}
if(S<=500)
{
SB1=0;
delay_nms(200);
SB1=1;
pingyi();
disbuff[0]=S/1000; //¾àëxµÄǧλ
disbuff[1]=S%1000/100; //°Ùλ
disbuff[2]=S%1000%100/10; //ʮλ
disbuff[3]=S%1000%10 %10; //‚€Î»
Display();
}
}
ÊÖ™C°æ|СºÚÎÝ|51ºÚëŠ×ÓÕ“‰¯
|
¹ÜÀí†TQQ:125739409;¼¼Ðg½»Á÷QQȺ281945664
Powered by †ÎƬ™C½Ì³Ì¾W