|
單片機(jī)源程序如下:
- #include <reg51.h>
- #uint unsigned int
- //控制端
- sbit Trig =P2^0;
- //輸出端
- sbit Echo=P2^1;
- /*測(cè)波函數(shù)*/
- TH0=0;
- TL0=0;
- uint get_distance()
- {
- uint speed=340;
- uint time;
- uint distance;
- //發(fā)出超聲波
- trig=1;
- for(i=0;i<=1000;i++);
- trig=0;
- //第二步:讀取超聲波返回時(shí)間
- while(Echo==0);//等待超聲波發(fā)出
- TR0=1;//超聲波開始發(fā)出,開啟定時(shí)器
- while(Echo==1)//超聲波還在發(fā)送中
- TR0=0;//超聲波回來(lái),立即關(guān)閉定時(shí)器
- distance=speed*((dounle)time/1000000)/2*100;
- return distance;
- }
- void inittimer0()
- {
- TMOD=0x01;
- TG0=0;
- TL0=0;
- EA=1;
- ET0=1;
- TR0=1;
- }
- void main()
- {
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
超聲波測(cè)距.zip
(35.31 KB, 下載次數(shù): 15)
2018-1-22 15:30 上傳
點(diǎn)擊文件名下載附件
超聲波測(cè)距 下載積分: 黑幣 -5
|
|