郭天祥51单片机开发板超声波测距模块程序.txt资料文档下载
《郭天祥51单片机开发板超声波测距模块程序.txt资料文档下载》由会员分享,可在线阅读,更多相关《郭天祥51单片机开发板超声波测距模块程序.txt资料文档下载(2页珍藏版)》请在冰豆网上搜索。
unsignedinttime;
unsignedlongdistance;
ucharshi,ge,bai,t;
bitflag;
voiddisplay();
unsignedcharcodedx[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
voiddelay1()
{
unsignedintx,y;
for(x=1;
x>
0;
x--)
for(y=110;
y>
y--);
}
//voiddelay_20us()
//{
//uchara;
//for(a=0;
a<
100;
a++);
//}
voiddelay10(uintus)
while(--us)
{
_nop_();
}
voidmain()
TMOD=0x11;
TR0=0;
//1.085us
TF0=0;
TH0=0;
TL0=0;
shou=0;
TH1=0x3c;
TL1=0xb0;
//50ms
EA=1;
ET1=1;
TR1=1;
while
(1)
display();
if(flag)
{ flag=0;
EA=0;
fa=1;
delay10(10);
fa=0;
while(shou==0);
TR0=1;
TF0=0;
while(shou);
TR0=0;
time=TH0*256+TL0;
TH0=0;
TL0=0;
distance=time*0.0172;
shi=distance%100/10;
ge=distance%10;
bai=distance/100;
EA=1;
}
voiddisplay()
// dula=1;
// P0=dx[n];
// dula=0;
// P0=0xff;
// wela=1;
// P0=0xfe;
// wela=0;
// delay1();
//�ڶ�λ
dula=1;
P0=dx[bai];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay1();
////////����λ//////
P0=dx[shi];
P0=0xfb;
/////����λ/////
P0=dx[ge];
P0=0xf7;
voidtimer1()interrupt3
t++;
if(t==10)
t=0;
flag=1;
}