freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于51單片機的超聲波測距系統(tǒng)設計畢業(yè)論文-預覽頁

2025-07-12 21:44 上一頁面

下一頁面
 

【正文】 超聲波測距原理圖: 數(shù)字顯示仿真參照硬件的設計思路,軟件我也將采取模塊化的設計思路來進行,這樣對提高效率有很大的幫助。超聲波技術是通過超聲波的產生、傳播以及接收的物理過程完成的。橫波只能在固體中傳播,縱波能在固體液體中和氣體中傳播,表面波隨深度的增加其衰減很快。(2)超聲波的衰減超聲波在一種介質中傳播,其聲壓和聲強按指數(shù)函數(shù)規(guī)律衰減。電氣方式包括壓電型、磁致伸縮型和電動型等;機械方式有加爾統(tǒng)笛、液哨和氣流旋笛等。它有兩個壓電晶片和一個共振板。當頻率取得太高,在傳播的過程中能量損失比較大,雖然分辨力比較高,但是測量距離變短。傳感器特性參數(shù)表型號UCMT40K1UCMR40KQ結構開放式開放式使用方式發(fā)射接收中心頻率頻帶寬靈敏度聲壓指向角容量通過自己查閱相關資料,了解到要想提高結果的精度就要考慮的更加全面,因此,我又詳細的分析了一下超聲波測距的原理。當進行距離的測量時,由安裝在同一水平線上的超聲波發(fā)射器和接收器完成超聲波的發(fā)射與接收,并且同時啟動定時器進行計數(shù)。單片機最小系統(tǒng)是其他拓展系統(tǒng)的最基本的基礎,單片機最小系統(tǒng)是指一個真正可用的單片機最小配置系統(tǒng)即單片機能工作的系統(tǒng)。我們都知道,超聲波在傳播過程中,能量會衰減的很厲害,此時,超聲波接受裝置就會受到很大的阻礙。CX20106A芯片的5腳在外接電阻對它的帶通濾波器的頻率進行調節(jié),而且不用再外接其他的電感,能夠很好地避免外加磁場對芯片電路的干擾,而且它的可靠性也是比較高的。 (2)模塊自動發(fā)送 8 個 40khz 的方波,自動檢測是否有信號返回; (3)有信號返回,通過 IO 口 ECHO 輸出一個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間。根據數(shù)碼管的一些選擇,最終篩選出了最優(yōu)的設計方案:在顯示電路的設計上,利用單片機的P0~P2口來控制數(shù)碼管顯示,這種接法雖然比較浪費管腳資源,但是對單片機的理論知識要求相對比較低,而且超聲波發(fā)射和接收電路并不需要很多的管腳來支持,所以我選擇這種方案。 超聲波接收電路在接收到超聲波回波后,通過CX20106A電路進行檢波整形比較,并向單片機發(fā)出有效信號,單片機通過外部中斷的改變記錄回波信號的到達時間,中斷發(fā)生之后就是表示已經接收到了回波信號,這個時候停止計時,并且讀取計數(shù)器中的數(shù)值,這個數(shù)值就是需要進行測量的時間差的數(shù)據。i255。 //延時,等待系統(tǒng)外圍復位完成 sys_init()。for(i=0。BUZZER=0。i=100000。testtemp()。 //停止計數(shù)jsl=TL1。 //重新啟動轉換display()。 //標志清零} }}void sys_init(void){ uchar i。}TMOD=0x11。CNT=0。負責計算距離是INT0的中斷程序。 //當RX為零時等待 TR0=1; //開啟計數(shù) while(RX); //當RX為1計數(shù)并等待 TR0=0; //關閉計數(shù) Count(); //計算 } }由于計算公式為S=17N/100000=N(m),可以從中看出如果想要得到具體的距離的值,就只需要得到從超聲波發(fā)送開始到接收到超聲波這個過程中定時器0的計數(shù)的次數(shù)。當超聲波接收電路接收了到回波信號的同時時,在單片機檢測到該信號后,定時器計時就將停止,同時定時器的計數(shù)的次數(shù)將被提取出來,這樣就可以得到以m為單位的測量的距離值。三個月的辛苦是值得的,一個畢業(yè)設計把我整個大學期間的知識都用上了,還讓我學到了很多我沒接觸過的內容,讓我受益匪淺,同時也鍛煉了我的動手能力,讓我對超聲波有了更進一步的認識。 (2)不同障礙物表面材料的不同介質引起的誤差因為表面粗糙的障礙物介質要比光滑介質的測量結果要差,如果障礙物的發(fā)射面比較粗糙會引起發(fā)射信號散射開那么回波信號就會減弱,這樣就會導致測量結果的誤差增大。但是這種干擾能夠通過別的方法進行處理,比如軟件算法的方法去消除直達波的干擾。一路走來,若是沒有你們的幫助,可能現(xiàn)在我將不是現(xiàn)在的我。我覺得我是一個幸運的人,能在生活中遇見到你們。 //定義數(shù)碼管百位 片選sbit led_2H=P2^6。 sbit Sout=P3^7。bit r=0。 //定義溫度正、負標示位0為正1為負bit show_temperature=0。 //定義實形距離變量float speed=。 //0.~ //void time_11uS(uint x)。 //寫1820uint read(void)。 //延時1mSvoid Send_40K(void)。 //根據溫度查表取聲速值float Dis_count()。}//uchar reset(void) //復位1820{ r=0。 DQ = 0。 // 等待66US while(DQ==0){r=1。 for (i=8。_nop_()。0x01。 //算法,相當于右移1位 } time_11uS(1)。i0。 v=1。_nop_()。 // 延時 } DQ = 1。 //復位18b20 tu=0。 //讀兩個字 reset()。tu=1。 } //返回0XFF表示未檢測到18B20 }//void LED_T_C(uint x) { if(tu==1){temp[2]=0x26。/**/} if(r){temp[0]=LED0[x/10]。jx。//延時1mS } }// void Send_40K(void) //輸出15個40k方波函數(shù) { for(i=30。 _nop_()。 cm=7610。}//void led_display(void) //LED顯示函數(shù){ LED_Data=temp[2]。 LED_Data=temp[1]。 LED_Data=temp[0]。 LED_Data=0xFF。 temp[1]=LED0[x%10]。 //初值裝入定時器T1,用于發(fā)射超聲波后計數(shù),TL1=(6553558000)%256。 if(tu==0)speed=332+T_C*。}//void show(uint x){for(。 if(k1==0){bell=0。} if(k2==0){bell=0。while(k3==0)。 for(w=11。led_2H=0。 LED_Data=0xff。 //關閉P3口 }//key()。 show(25)。 show(25)。 show(25)。 show(25)。 //設定時器T0、T1工作于16位定時/計數(shù)模式 EA=1。//裝T1初值 TR1=1。 //允許T1中斷 EX0=1。TO==0)。 dis=Dis_count()。temp[2]=0xF7。 show(10)。 if(show_temperature==1)goto T_show。}//void timer1(void) interrupt 3 //T1定時器中斷服務{// ET1=0。 temp[0]=
點擊復制文檔內容
外語相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1