導航:首頁 > 操作系統 > 超聲波單片機顯示電路

超聲波單片機顯示電路

發布時間:2022-06-20 14:42:53

A. 單片機:隨便解釋下超聲波時序圖。有圖的

這是一組完整的測試信號,觸發信號告訴你測試開始,發出信號作為探測能量發射,回響信號是接收信號的結果。
作為系統會連續發射幾組這樣的信號,把接收信號平均結果作為顯示,這樣幾組作為一個單元在系統內部不斷工作,數據就會不斷更新。

B. 哪位高手有51單片機超聲波模塊測距LCD1602顯示的電路圖和C程序,跪求!!!!(超聲波模塊是買好的那種)

#include"reg52.h"
#include"intrins.h"
#define uchar unsigned char
#define uint unsigned int

uchar code table[]={
'0','1','2','3','4','5','6','7','8','9'
};// 顯示段碼值0123456789

sbit LCD_EN=P3^4; //定義LCD使能端
sbit LCD_RS=P3^5; //定義LCD讀寫端
sbit la=P2^6; //數碼管段先端
sbit wela=P2^7; //數碼管位先端

/***********************************************/
/**********超聲波檢測引腳和變數定義*******************************/
sbit Trig=P2^4;// 定義HC-SR04發送端
sbit Echo=P2^5;//定義HC-SR04接收端

uint gewei='0'; //測量距離的個位
uint shiwei='0'; // 測量距離的十位
uint wei='0'; //測量距離的百位
uint qianwei='0';

uint s,time,flag;
/***********************************************/
/**********延時MS函數*******************************/
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

/***********************************************/
/**********延時uS函數*******************************/
void delay_uS(uint z)
{
while(z--);
}

/**********************************************8/
/**********寫命令*******************************/
void write_com(uchar com)
{
LCD_RS=0;
LCD_EN=0;
delay(5);
P0=com;
LCD_EN=1;
delay(5);
LCD_EN=0;
}

void write_data(uchar date)
{
LCD_RS=1;
LCD_EN=0;
delay(5);
P0=date;
LCD_EN=1;
delay(5);
LCD_EN=0;
}
/**********************************************/

/***********************************************/
/**********LCD1602初始化函數*******************************/
void init()
{
la=0;
wela=0;
LCD_EN=0;
write_com(0x38); //設置16X2顯示,5X7點陣顯示
write_com(0x0c); //開顯示,不顯游標
write_com(0x06); //顯示一個字元後,地址指針加1且游標加1
write_com(0x01); //清屏
delay(5);
write_com(0x80+1); //從第一行0X10地址位開始顯示
}

/***********************************************/
/**********計算距離函數*******************************/
void count(void)
{
time=TH0*256+TL0; //檢測 所需時間
TH0=0;
TL0=0;
s=time*0.17*1.136*0.9674;// 計算距離,算出來的單位是CM
gewei=table[s%10];
shiwei=table[s/10%10];
wei=table[s/100%10];
qianwei=table[s/1000];

}
/***********************************************/
/**********T0中斷函數*******************************/
void Time0() interrupt 1 //T0中斷用作計數器溢出,超出測距范圍
{
flag=1; //中斷溢出標志
}

/***********************************************/
/**********啟動模塊函數*******************************/
void startmodle(void) //啟動檢測模塊
{
uchar i;
// for(i=0;i<10;i++)
// {
Trig=1; //啟動一次檢測模塊
delay_uS(20);
Trig=0; //停止向檢測模塊Trig端發送高電平
}
//}

/***********************************************/
/**********中斷初始化函數*******************************/
void InterruptInit(void) //中斷初始化
{
TMOD=0x01; //高T0工作方式為方式1,GATE=1
TH0=0;
TL0=0;
ET0=1; //允許T0中斷
EA=1; // 開啟總中斷
}

/***********************************************/
/**********顯示函數*******************************/
void Display(void)
{
write_com(0x80+1);
write_data(qianwei);
write_com(0x80+2);
write_data('.');
write_com(0x80+3);
write_data(wei);

write_com(0x80+4);
write_data(shiwei);
write_com(0x80+5);
write_data(gewei);
write_com(0x80+6);
write_data('M');

}
/***********************************************/
/**********主函數*******************************/
void main(void)
{
init(); //初始化LCD1602

while(1)
{
Display(); // 顯示 距離,以M為單位
InterruptInit(); //中斷初始化
startmodle(); // 啟動檢測模塊
while(!Echo); //當接收為零時等待
TR0=1; //開啟計數
while(Echo); //當接收為1計數並等待
TR0=0; //關閉計數
count(); //計算距離
Display(); // 顯示 距離,以M為單位
delay(500); //延時80MS
}
}

C. 超聲波發射電路原理以及組成部分,謝謝!

摘要超聲波測距器,可以應用於汽車倒車、建築施工工地以及一些工業現場的位置監控,也可用於如液位、井深、管道長度的測量等場合。要求測量范圍在0.10-5.00m,測量精度1cm,測量時與被測物體無直接接觸,能夠清晰穩定地顯示測量結果。由於超聲波指向性強,能量消耗緩慢,在介質中傳播的距離較遠,因而超聲波經常用於距離的測量,如測距儀和物位測量儀等都可以通過超聲波來實現。利用超聲波檢測往往比較迅速、方便、計算簡單、易於做到實時控制,並且在測量精度方面能達到工業實用的要求,因此在移動機器人的研製上也得到了廣泛的應用。 關鍵詞 單片機AT82S51超聲波感測器測量距離 一、設計要求 設計一個超聲波測距器,可以應用於汽車倒車、建築施工工地以及一些工業現場的位置監控,也可用於如液位、井深、管道長度的測量等場合。要求測量范圍在0.10-3.00m,測量精度1cm,測量時與被測物體無直接接觸,能夠清晰穩定地顯示測量結果。 二、設計思路 超聲波感測器及其測距原理 超聲波是指頻率高於20KHz的機械波。為了以超聲波作為檢測手段,必須產生超生波和接收超聲波。完成這種功能的裝置就是超聲波感測器,習慣上稱為超聲波換能器或超聲波探頭。超聲波感測器有發送器和接收器,但一個超聲波感測器也可具有發送和接收聲波的雙重作用。超聲波感測器是利用壓電效應的原理將電能和超聲波相互轉化,即在發射超聲波的時候,將電能轉換,發射超聲波;而在收到回波的時候,則將超聲振動轉換成電信號。 超聲波測距的原理一般採用渡越時間法TOF(timeofflight)。首先測出超聲波從發射到遇到障礙物返回所經歷的時間,再乘以超聲波的速度就得到二倍的聲源與障礙物之間的距離 測量距離的方法有很多種,短距離的可以用尺,遠距離的有激光測距等,超聲波測距適用於高精度的中長距離測量。因為超聲波在標准空氣中的傳播速度為331.45米/秒,由單片機負責計時,單片機使用12.0M晶振,所以此系統的測量精度理論上可以達到毫米級。 由於超聲波指向性強,能量消耗緩慢,在介質中傳播距離遠,因而超聲波可以用於距離的測量。利用超聲波檢測距離,設計比較方便,計算處理也較簡單,並且在測量精度方面也能達到要求。 超聲波發生器可以分為兩類:一類是用電氣方式產生超聲波,一類是用機械方式產生超聲波。本課題屬於近距離測量,可以採用常用的壓電式超聲波換能器來實現。 根據設計要求並綜合各方面因素,可以採用AT89S51單片機作為主控制器,用動態掃描法實現LED數字顯示,超聲波驅動信號用單片機的定時器完成,超聲波測距器的系統框圖如下圖所示: 超聲波測距器系統設計框圖 三、系統組成 硬體部分 主要由單片機系統及顯示電路、超聲波發射電路和超聲波檢測接收電路三部分組成。採用AT89S51來實現對CX20106A紅外接收晶元和TCT40-10系列超聲波轉換模塊的控制。單片機通過P1.0引腳經反相器來控制超聲波的發送,然後單片機不停的檢測INT0引腳,當INT0引腳的電平由高電平變為低電平時就認為超聲波已經返回。計數器所計的數據就是超聲波所經歷的時間,通過換算就可以得到感測器與障礙物之間的距離。 軟體部分 主要由主程序、超聲波發生子程序、超聲波接收中斷程序及顯示子程序等部分。 四、系統硬體電路設計 1.單片機系統及顯示電路 單片機採用89S51或其兼容系列。採用12MHz高精度的晶振,以獲得較穩定的時鍾頻率,減小測量誤差。單片機用P1.0埠輸出超聲波轉化器所需的40KHz方波信號,利用外中斷0口檢測超聲波接受電路輸出的返回信號。顯示電路採用簡單實用的4位共陽LED數碼管,段碼用74LS244驅動,位碼用PNP三極體驅動。單片機系統及顯示電路如下圖所示 單片機及顯示電路原理圖 2.超聲波發射電路原理圖參考期刊如圖所示: 超聲波發射電路原理圖 壓電超聲波轉換器的功能:利用壓電晶體諧振工作。內部結構上圖所示,它有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等於壓電晶片的固有振盪頻率時,壓電晶片將會發生共振,並帶動共振板振動產生超聲波,這時它就是一超聲波發生器;如沒加電壓,當共振板接受到超聲波時,將壓迫壓電振盪器作振動,將機械能轉換為電信號,這時它就成為超聲波接受轉換器。超聲波發射轉換器與接受轉換器其結構稍有不同。 3.超聲波檢測接受電路 參考紅外轉化接收期刊的電路採用集成電路CX20106A,這是一款紅外線檢波接收的專用晶元,常用於電視機紅外遙控接收器。考慮到紅外遙控常用的載波頻率38KHz與測距超聲波頻率40KHz較為接近,可以利用它作為超聲波檢測電路。實驗證明其具有很高的靈敏度和較強的抗干擾能力。適當改變C4的大小,可改變接受電路的靈敏度和抗干擾能力。 超聲波接收電路圖 五、系統程序設計 超聲波測距軟體設計主要由主程序,超聲波發射子程序,超聲波接受中斷程序及顯示子程序組成。下面對超聲波測距器的演算法,主程序,超聲波發射子程序和超聲波接受中斷程序逐一介紹。 1.超聲波測距器的演算法設計 下圖示意了超聲波測距的原理,即超聲波發生器T在某一時刻發出的一個超聲波信號,當超聲波遇到被測物體後反射回來,就被超聲波接收器R所接受。這樣只要計算出發生信號到接受返回信號所用的時間,就可算出超聲波發生器與反射物體的距離。 距離計算公式:d=s/2=(c*t)/2 *d為被測物與測距器的距離,s為聲波的來迴路程,c為聲速,t為聲波來回所用的時間 聲速c與溫度有關,如溫度變化不大,則可認為聲速是基本不變的。如果測距精度要求很高,則應通過溫度補償的方法加以校正。聲速確定後,只要測得超聲波往返時間,即可求得距離。在系統加入溫度感測器來監測環境溫度,可進行溫度被償。這里可以用DS18B20測量環境溫度,根據不同的環境溫度確定一聲速提高測距的穩定性。為了增強系統的可靠性,應在軟硬體上採用抗干擾措施。 不同溫度下的超聲波聲速表 溫度/ -30 -20 -10 0 10 20 30 100 聲速c(m/s) 313 319 325 323 338 344 349 386 2.主程序 主程序首先對系統環境初始化,設置定時器T0工作模式為16位的定時計數器模式,置位總中斷允許位EA並給顯示埠P0和P2清0。然後調用超聲波發生子程序送出一個超聲波脈沖,為避免超聲波從發射器直接傳送到接收器引起的直接波觸發,需延遲0.1ms(這也就是測距器會有一個最小可測距離的原因)後,才打開外中斷0接收返回的超聲波信號。由於採用12MHz的晶振,機器周期為1us,當主程序檢測到接收成功的標志位後,將計數器T0中的數(即超聲波來回所用的時間)按下式計算即可測得被測物體與測距儀之間的距離,設計時取20℃時的聲速為344m/s則有: d=(C*T0)/2=172T0/10000cm(其中T0為計數器T0的計數值) 測出距離後結果將以十進制BCD碼方式LED,然後再發超聲波脈沖重復測量過程。主程序框圖如下 3.超聲波發生子程序和超聲波接收中斷程序 超聲波發生子程序的作用是通過P1.0埠發送2個左右的超聲波信號頻率約40KHz的方波,脈沖寬度為12us左右,同時把計數器T0打開進行計時。超聲波測距器主程序利用外中斷0檢測返回超聲波信號,一旦接收到返回超聲波信號(INT0引腳出現低電平),立即進入中斷程序。進入該中斷後就立即關閉計時器T0停止計時,並將測距成功標志字賦值1。如果當計時器溢出時還未檢測到超聲波返回信號,則定時器T0溢出中斷將外中斷0關閉,並將測距成功標志字賦值2以表示此次測距不成功。 六.軟硬體調試及性能 超聲波測距儀的製作和調試,其中超聲波發射和接收採用Φ15的超聲波換能器TCT40-10F1(T發射)和TCT40-10S1(R接收),中心頻率為40kHz,安裝時應保持兩換能器中心軸線平行並相距4~8cm,其餘元件無特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來,則可提高抗干擾能力。根據測量范圍要求不同,可適當調整與接收換能器並接的濾波電容C4的大小,以獲得合適的接收靈敏度和抗干擾能力。 硬體電路製作完成並調試好後,便可將程序編譯好下載到單片機試運行。根據實際情況可以修改超聲波發生子程序每次發送的脈沖寬度和兩次測量的間隔時間,以適應不同距離的測量需要。根據所設計的電路參數和程序,測距儀能測的范圍為0.07~5.5m,測距儀最大誤差不超過1cm。系統調試完後應對測量誤差和重復一致性進行多次實驗分析,不斷優化系統使其達到實際使用的測量要求。 後續工作需實驗後才能驗證 根據參考電路和集成的電路器件測距范圍有限10m以內為好。 http://www.chuandong.com/cdbbs/2008-12/17/081217A9D4D0217.html希望對你有幫助!

D. 51單片機超聲波模塊+數碼管顯示,求指導

首先,你的程序邏輯自己要清楚,從你的主函數看出,無論是否接收到超聲波,你都一直在很快的發射,還有你再主函數一直在TH0=0;TL0=0;不知道你開定時器有啥用。從你的整個代碼推測,你的設計初衷是,主函數里發射超聲波,外部中斷(接收超聲波)讀取定時器值,然後根據標志,數碼管顯示時間。還有你那個sbit
Echo=P3^2;
//超聲波接收
不知道是不是中斷引腳還是什麼,最好不要那麼用,你可以這樣改進
1、定時器中斷里,加計數標識:COUNT,以防止發射和接收時間過長,定時器溢出。
2、在外部中斷里加,顯示標識:DISP_BF,讀取完後數據後,該標識置1。注意計算定時器時間是要將計算計數標識,num=(int)((65536*COUNT+TH0*256+TL0)*n);
3、在主函數里,while循環前設定所有參數,並將顯示標識DISP_BF置1.
在while循環里,檢測到顯示標識為1時,執行以下操作:
數碼管顯示;
定時器清理;
發送超聲波;
啟動定時器;
顯示標識置0;

E. 如何用單片機接驅動電路驅動超聲波發射

理論上是只要給頻率相當的電壓信號,都是可以的。不過幅度越大,信號強度也就越大。所以一般都只是用單片機來驅動MOS管或者三極體。

F. 單片機超聲波測距系統原理

超聲波測距學習板,可應用於汽車倒車、建築施工工地以及一些工業現場的位置監控,也可用於如液位、井深、管道長度的測量等場合。要求測量范圍在0.27~4.00m,測量精度1cm,測量時與被測物體無直接接觸,能夠清晰穩定地顯示測量結果。超聲波測距原理
超聲波發生器內部結構有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等於壓電晶片的固有振盪頻時,壓電晶片將會發生共振,並帶動共振板振動,便產生超聲波。反之,如果兩電極間未外加電壓,當共振板接收到超聲波本時,將壓迫壓電晶片作振動,將機械能轉換為電信號,就成為超聲波接收器。在超聲探測電路中,發射端得到輸出脈沖為一系列方波,其寬度為發射超聲的時間間隔,被測物距離越大,脈沖寬度越大,輸出脈沖個數與被測距離成正比。超聲測距大致有以下方法:① 取輸出脈沖的平均值電壓,該電壓 (其幅值基本固定 )與距離成正比,測量電壓即可測得距離;② 測量輸出脈沖的寬度,即發射超聲波與接收超聲波的時間間隔 t,故被測距離為 S=1/2vt。本測量電路採用第二種方案。由於超 聲波 的聲速 與溫度有關,如果溫度變化不大,則可認為聲速基本不變 。如果測距精度要求很高,則應通 過溫度補償 的方法加以校正。超聲波測距適用於高精度的中長距離測量。因為超聲波在標准空氣中的傳播速度為331.45米/秒,由單片機負責計時,單片機使用12.0M晶振,所以此系統的測量精度理論上可以達到毫米級。
採用AT89C51或AT89S51單片機,晶振:12M,單片機用P1.0口輸出超聲波換能器所需的40K方波信號,利用外中斷0口監測超聲波接收電路輸出的返回信號,顯示電路採用簡單的4位共陽LED數碼管,斷碼用74LS244,位碼用8550驅動.
超聲波測距的演算法設計: 超聲波在空氣中傳播速度為每秒鍾340米(15℃時)。X2是聲波返回的時刻,X1是聲波發聲的時刻,X2-X1得出的是一個時間差的絕對值,假定X2-X1=0.03S,則有340m×0.03S=10.2m。由於在這10.2m的時間里,超聲波發出到遇到返射物返回的距離。
硬體部分採用AT89C51或AT89S51單片機,晶振:12M,單片機用P1.0口輸出超聲波換能器所需的40K方波信號,利用外中斷0口監測超聲波接收電路輸出的返回信號,顯示電路採用簡單的4位共陽LED數碼管,斷碼用74LS244,位碼用8550驅動. 主要由單片機系統及顯示電路、超聲波發射電路和超聲波檢測接收電路三部分組成。採用AT89S51來實現對CX20106A紅外接收晶元和TCT40-10系列超聲波轉換模塊的控制。單片機通過P1.0引腳經反相器來控制超聲波的發送,然後單片機不停的檢測INT0引腳,當INT0引腳的電平由高電平變為低電平時就認為超聲波已經返回。計數器所計的數據就是超聲波所經歷的時間,通過換算就可以得到感測器與障礙物之間的距離。

1.單片機系統及顯示電路
單片機採用89S51或其兼容系列。採用12MHz高精度的晶振,以獲得較穩定的時鍾頻率,減小測量誤差。
單片機用P1.0埠輸出超聲波轉化器所需的40KHz方波信號,利用外中斷0口檢測超聲波接受電路輸出的返回信號。顯示電路採用簡單實用的4位共陽LED數碼管,段碼用74LS244驅動,位碼用PNP三極體驅動。單片機系統及顯示電路如下圖所示.
使用CX20106A集成電路對接收探頭受到的信號進行放大、濾波。其總放大增益80db。以下是CX20106A的引腳注釋。

1腳:超聲信號輸入端,該腳的輸入阻抗約為40kΩ。
2腳:該腳與地之間連接RC串聯網路,它們是負反饋串聯網路的一個組成部分,改變它們的數值能改變前置放大器的增益和頻率特性。增大電阻R1或減小C1,將使負反饋量增大,放大倍數下降,反之則放大倍數增大。但C1的改變會影響到頻率特性,一般在實際使用中不必改動,推薦選用參數為R1=4.7Ω,C1=1μF。
3腳:該腳與地之間連接檢波電容,電容量大為平均值檢波,瞬間相應靈敏度低;若容量小,則為峰值檢波,瞬間相應靈敏度高,但檢波輸出的脈沖寬度變動大,易造成誤動作,推薦參數為3.3μf。
4腳:接地端。
5腳:該腳與電源間接入一個電阻,用以設置帶通濾波器的中心頻率f0,阻值越大,中心頻率越低。例如,取R=200kΩ時,f0≈42kHz,若取R=220kΩ,則中心頻率f0≈38kHz。
6腳: 該腳與地之間接一個積分電容,標准值為330pF,如果該電容取得太大,會使探測距離變短。
7腳:遙控命令輸出端,它是集電極開路輸出方式,因此該引腳必須接上一個上拉電阻到電源端,推薦阻值為22kΩ,沒有接受信號是該端輸出為高電平,有信號時則產生下降。 8腳:電源正極,4.5~5V。
軟硬體調試及性能
超聲波測距儀的製作和調試,其中超聲波發射和接收採用Φ16的超聲波換能器TCT40-16F1(T發射)和TCT40-16S1(R接收),中心頻率為40kHz,安裝時應保持兩換能器中心軸線平行並相距4~8cm,其餘元件無特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來,則可提高抗干擾能力。根據測量范圍要求不同,可適當調整與接收換能器並接的濾波電容C4的大小,以獲得合適的接收靈敏度和抗干擾能力。
硬體電路製作完成並調試好後,便可將程序編譯好下載到單片機試運行。根據實際情況可以修改超聲波發生子程序每次發送的脈沖寬度和兩次測量的間隔時間,以適應不同距離的測量需要。根據所設計的電路參數和程序,測距儀能測的范圍為0.07~5.5m,測距儀最大誤差不超過1cm。系統調試完後應對測量誤差和重復一致性進行多次實驗分析,不斷優化系統使其達到實際使用的測量要求。後續工作需實驗後才能驗證 根據參考電路和集成的電路器件測距范圍有限10m以內為好。

G. 51單片機 +12864+超聲波模塊 顯示不正常,求師傅指導

1、
TMOD=0X90 是定時/計數器1的設置,看樓主I/O定義和main函數中用的是定時器0,所以應該用TMOD = 0x09;

/*定時器1中斷 ( 應該是interrupt 3) */
void timer0() interrupt 1 //這個是定時器0 的中斷
2、
=s%1000/100;
shi=s%100/10;
ge=s%10;
程序不全,不知樓主是怎麼把上面這三個數值放到table[ge]等數組中的,
樓主可以先給 shi ge 分別賦值 ,看看於顯示是否對於,來確認是哪部分的問題

還沒用過超聲波測距,怎麼測~不知道~

H. 圖為基於51單片機的避障小車設計(利用超聲波感測器)的MCU電路圖,求解讀,各個電路代表的意思

圖中只是一個單片機最小系統,引出了P0,P2口。沒你要圖

I. 您好,如果想用單片機驅動超聲波感測器,驅動電路選擇什麼好

用單片機驅動一個開關管。
在初級階段,建議用NPN達林頓三極體,例如TIP142之類,電路比較簡單:在NPN達林頓管的集電極與電源之間,接一個脈沖變壓器(初級)。脈沖變壓器的次級接超聲波的發射頭。用於驅動的電源電壓不要太高,也盡量別用5V的單片機電源,建議用5V-12V的獨立電源供電,與單片機共地。
以上實驗成功以後,還需要進一步增加一些原件,用來提高電路的穩定性、可靠性,並減少餘震,當然那是後話了,一步一步來吧。

J. 51單片機控制HC-SR04超聲波測距離用數碼管顯示,電路很簡單,程序下載後數碼管顯示一下四個1就再也不亮了

要麼把顯示放到定時器中掃描,要麼把超聲波模塊的接受端接到外部中斷引腳上,用中斷方式捕捉超聲波信號

閱讀全文

與超聲波單片機顯示電路相關的資料

熱點內容
程序員開車賣服裝 瀏覽:393
快速記憶法pdf 瀏覽:516
java定義異常類 瀏覽:707
的運行命令 瀏覽:585
24v電動駐車空調壓縮機 瀏覽:840
老程序員編程步驟 瀏覽:305
物理去除加密軟體 瀏覽:227
匯編語言可調試編譯器 瀏覽:447
jpeg如何轉成pdf 瀏覽:841
微機室為什麼有伺服器 瀏覽:657
安卓手機怎麼打語音電話不斷網 瀏覽:458
單片機匯編頭文件 瀏覽:946
juniper命令行 瀏覽:68
程序員咨詢銷售工作怎麼樣 瀏覽:782
蘋果文件伺服器是什麼 瀏覽:180
企業透明加密軟體有監視功能嗎 瀏覽:494
桌面的運行命令 瀏覽:10
主流廠商伺服器維護流程是什麼 瀏覽:807
壓縮棉的被子先洗洗在用 瀏覽:242
批處理bat代碼和文件夾 瀏覽:298