基于STC89C52的超聲波測距系統(tǒng)設計_第1頁
基于STC89C52的超聲波測距系統(tǒng)設計_第2頁
基于STC89C52的超聲波測距系統(tǒng)設計_第3頁
基于STC89C52的超聲波測距系統(tǒng)設計_第4頁
基于STC89C52的超聲波測距系統(tǒng)設計_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第5頁共11頁接口實驗報告題目:基于STC89C52的超聲波測距系統(tǒng)設計一.實驗目的 通過本次實驗,掌握單片機的C語言程序設計,利用VC設計界面程序,實現(xiàn)單片機和PC機的通信。深入了解單片機內部結構,增強分析能力,并在實踐過程中發(fā)現(xiàn)問題、解決問題,提高設計和調試微機應用系統(tǒng)的能力。二.實驗方案論證本實驗采用了三個定時器和串口直接下載,在本科使用過的AT89S52只要兩個定時器,并且只能用專門的下載器去下載程序,所以它已經不能滿足本次實驗所設計的系統(tǒng)的要求。而微處理器STC89C52單片機內部有三個定時器。還支持ISP下載,只要一個MAX232和一些廉價的元件就能寫程序,就不用專門的下載口和下載器,直接用串口下載。并且它是一款增強型51單片機,完全兼容MCS-51,價格較低,還增加了新的功能,比如新增兩級中斷優(yōu)先級,多一個外中斷,內置EEPROM,硬件看門狗,具有掉電模式,512B數(shù)據存儲器,8K程序存儲器等,這大大方便了本系統(tǒng)的設計。本實驗設計的系統(tǒng)選用的超聲波傳感器為T/R40,可以通過控制產生40kHz的方波,來人工控制超聲波傳感器對超聲波的收發(fā)。產生40kHz的方波我首先想到的是用NE555產出,經過實踐調試特難。通過在網上查閱資料,發(fā)現(xiàn)用單片機的定時器產生既避免了調試困難,又精確。所以本系統(tǒng)由單片機使用定時器1編程產生40kHz的方波。由P1.6口輸出,再經過74LS04驅動超聲波傳感器T40發(fā)射超聲波。發(fā)射出去的超聲波經障礙物反射回來后,由超聲波傳感器R40接收到信號.通過接收電路的檢波放大、積分整形及一系列處理送至單片機。單片機將發(fā)射脈沖到接收反射脈沖的時間間隔通過串口發(fā)送給上位機,上位機利用聲波的傳播速度與時間數(shù)據計算出到障礙物的距離。另外,為了提高測距的精度,本系統(tǒng)采用溫度補償修正聲速。測溫模塊主要由18B20完成。三.系統(tǒng)整體框圖T40T40單片機MAX232串口RS232PC機PIC16F87774LS04R40CX2010618B20測溫蜂鳴器報警四.系統(tǒng)軟硬件設計1系統(tǒng)硬件設計1.1RS232電平轉換電路 52單片機的串口是RS-232C標準串口.RS-232標準時在RS-232標準的基礎上經過改進形成的。其適合于數(shù)據速率在0至20kb/s范圍內的通信,本次實驗傳送數(shù)據時波特率為9600,8位數(shù)據,無校驗。 具體電路圖如下:一個電極,另一路徑兩級反相器后送到超聲波換能器的另一個電極。具體電路如下:圖4超聲波發(fā)射電路1.4超聲波接收電路超聲波接收電路主要由CX20106A構成。集成電路CX20106A是日本索尼公司的一款紅外線檢波接收的專用芯片,常用于電視機紅外遙控接收器。CX20106A用于在輸入信號過強時防止前置放大器過載,內部設有帶通濾波器,頻率f0可由5腳的外接電阻或電位器調節(jié)。使用時調節(jié)方便,抗電磁干擾能力強??紤]到紅外遙控常用的載波頻率38kHz與測距的超聲波頻率40kHz較為接近,可以利用它制作超聲波檢測接收電路,實驗證明,用CX20106A接收超聲波(無信號時輸出高電平)具有很高的靈敏度和抗干擾能力。適當?shù)母碾娙軨11的大小,可以改變接收電路的靈敏度和抗干擾能力。具體電路如下:圖5超聲波接收電路1.5溫度修正電路電路主要采用MAXIM公司的DS18B20作為溫度傳感和測量裝置,測量分辨率可選9位或12位。因此完全可以滿足普通條件下的測溫要求。DS18B20采TO一92型封裝只有3個引腳,一根電源線,一根地線,一根數(shù)據線,每片DS18B20有一個64位串行代碼存儲器。這里用P3.6口作為與DS18B20的數(shù)據輸入輸出口。具體電路如下:圖6溫度修正電路1.5出錯報警電路若上位機和下位機傳輸數(shù)據時出錯則通過P1.7控制蜂鳴器產生報警。具體電路如下:圖7出錯報警電路2.系統(tǒng)軟件設計 軟件設計主要包括兩個部分,一是單片機程序設計,二是上位機程序設計。單片機部分主要包括兩部分,一是超聲波發(fā)射程序的設計;二是超聲波接收程序的設計。2.1.1超聲波發(fā)射程序的設計超聲波發(fā)射所需的40KHZ的方波脈沖是通過單片機定時器/計數(shù)器T1工作在定時器工作方式2下產生的。定時器/計數(shù)器工作方式2具有自動重裝計數(shù)初值的功能。不但省去了用戶程序中的重裝指令,而且也有利于提高計時精度,非常實用與循環(huán)定時或循環(huán)計數(shù)的應用。超聲波的發(fā)射頻率f0=40KHZ即周期T=1/f0=25us那么超聲波發(fā)射口P1.6口的輸出電平經過1/2T即1/2*25us=12us就要跳變一次,可以使用定時器/計數(shù)器T1定時12us產生中斷,在中斷程序中改變P1.6口的輸出電平。正因為在工作方式2下當計數(shù)溢出后可以將計數(shù)初值重新加載到TL0中重新計數(shù),所以可以通過軟件對超聲波脈沖數(shù)進行控制,產生一串符合要求的超聲波脈沖。2.1.2超聲波接收中斷程序的設計與超聲波發(fā)射程序相比,接收程序的設計要簡單的多。主程序用外部中斷0檢測超聲波返回信號,一旦接收到返回的超聲波(P3.2引腳出現(xiàn)低電平),立即進入中斷程序。進入該中斷后就立即關閉計時器T0,T1停止計時,并將計數(shù)值賦給變量,同時測距成功標志位賦1.如果當T0溢出時還未檢測到超聲波返回信號,則將外部中斷0關閉,并準備下一個超聲波的發(fā)射??偲饋碚f下位機程序主要實現(xiàn)采集超聲波傳播時間值和溫度,即時將數(shù)據傳送給上位機。為確保數(shù)據正確,系統(tǒng)采集三次時間值,取三者中間值為最后結果。然后數(shù)據傳送過程中單片機先發(fā)送0xff、0xaa作為握手信號,然后再將兩字節(jié)定時器定時數(shù)據和兩字節(jié)溫度數(shù)據進行傳送,最后傳送校驗和。系統(tǒng)運行中,單片機還要接收來自PC機的報警控制信息以及校驗出錯重傳信息。單片機串口接收采用中斷方式。下位機軟件主流程圖如下圖7所示:NNYYN系統(tǒng)初始化等待返回超聲波讀取定時值置接收成功標志位YN發(fā)送超聲波測溫,清接收次數(shù)開總中斷開始接收成功標志位根據接收數(shù)據控制報警或數(shù)據重傳發(fā)送超聲波接收次數(shù)加1接收次數(shù)為3取中間值,傳送數(shù)據2.2上位機程序設計 1KHZ正弦波時的圖形 250HZ正弦波時的圖形100HZ正弦波時的圖形20HZ正弦波時的圖形2HZ正弦波時的圖形六.總結通過這次接口實驗,從查找資料、原理圖及PCB設計、電路板制作及焊接、編寫程序,到最后的調試,我學到了很多東西。在這次實驗中,遇到了很多的問題,通過慢慢分析問

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論