基于STC51單片機超聲波測距精簡設計只需三個元件(測距模塊暫且算做是一個元件吧)
1.所需元件:STC單片機+超聲波模塊+4位共陽數碼管
2.原理:單片機向測距模塊trig腳發送20us的高電平觸發測距,Echo 測距結束時會輸出高電平,電平時長為超聲波信號往返時間之和。Echo 腳開始輸出高電平時啟動定時計數器計時,當Echo 腳高電平結束時停止計數,根據定時器的時間可算出距離。
3.連接:單片機插在面包板上數碼管直接插在單片機上面(引腳一一對應見原理圖)測距模塊trig腳接P5.4Echo 腳接P5.5
實物圖
參考C程序代碼如下:
/***************************************************************
程序名: 51單片機超聲波測距()
硬件支持:超聲波模塊US-020、四位共陽數碼管、STC單片機
//
#include #include #include <4LED_YANG.h>//包含共陽數碼管驅動程序 #define uchar unsigned char #define uint unsigned int uint timeH,timeL;//定義2個存儲計時器值的變量 uint distance;//定義測量值的變量 uint time;//定義Echo腳返回的高電平時間變量 // sbit Echo = P5 ^ 5; //超聲波測距模塊Echo連接的IO sbit Trig = P5 ^ 4; //超聲波測距模塊Trig連接的IO // void delay1ms (unsigned int a){ // 1ms延時程序 unsigned int i; while( --a != 0){ for(i = 0; i < 630; i++);//STC單片機在晶振為12MHz時i值上限為630 } //AT89C51單片機在外部晶振為12MHz時i值上限為125 } // void delay_20us() //@12.000MHz { unsigned char i; nop(); nop(); i = 57; while (–i); } /********************************************************************************************* 函數名:定時器初始化函數 調 用:INT_init(); // void INT_init (void){ TMOD=0x01; //定時器0,16位工作方式計數模式 TH0=0; //定時器0清零 TL0=0; //定時器0清零 EA = 1; //總中斷開 Trig=0;//拉低為下次觸發做準備 } //********* void dist (void){//測量距離程序 Trig=1; // delay_20us(); //延時20us Trig=0; //Trig輸出20us高電平觸發測距 while(Echo0); //等待Echo回波引腳變高電平 TR0=1;//程序運行到此處時說明Echo腳變成了高電平,此時啟動T0開始計時 while(Echo1); //等待Echo回波引腳高電平結束 TR0=0;//程序運行到此處時說明Echo腳變成了低電平,此時T0停止計時 time=TH0256+TL0; distance=time0.170; //測量距離 distance=distance-2;//測量起點不同減去的數值不同 TH0 = 0; //重置計時器 TL0 = 0; } void main()//主函數 {undefined init();//單片機IO口工作方式初始化 INT_init;//T0初始化 while(1) {undefined dist();//測量距離 disp();//數碼管顯示距離 delay1ms(20);//兩次測量間需要有10ms間隔 } }
上一篇:51單片機控制的萬能密碼鎖
下一篇:手機藍牙控制 廣州塔LED燈陣 無線控制播放音樂
推薦閱讀
史海拾趣
隨著公司實力的不斷增強,AB Connectors Ltd開始將目光投向國際市場。公司積極參加國際電子展會和商務洽談活動,與海外客戶建立了廣泛的合作關系。同時,公司還通過設立海外辦事處和建立分銷網絡等方式,進一步拓展國際市場。這些舉措不僅提高了公司的知名度和影響力,還為公司的快速發展提供了有力支持。
面對日益激烈的全球競爭,First Switchtech公司(或類似公司)制定了積極的國際化戰略。公司首先在歐洲市場設立了分支機構,通過深入了解當地市場需求和文化背景,成功推出了符合歐洲標準的電子開關產品。隨后,公司進一步拓展北美、亞洲等市場,通過本地化生產和營銷策略,實現了全球市場的覆蓋。這一過程中,公司不僅提升了品牌知名度,還積累了豐富的國際市場運營經驗。
隨著技術的不斷進步,Aearo Technologies在能量控制領域取得了重大突破。公司研發的新型材料不僅能夠有效控制噪聲和振動,還能提高產品的耐用性和可靠性。這些技術優勢使得公司的產品在航空航天、軍用防護以及消費電子等多個領域得到了廣泛應用。通過不斷拓展市場,Aearo Technologies逐漸成為了能量控制技術的領導者。
創新是Altmustech公司發展的核心動力。公司不斷投入研發資金,引進優秀人才,推動技術創新和產品升級。從最初的半導體芯片到后來的智能設備、物聯網解決方案,Altmustech始終站在技術前沿,引領行業發展趨勢。這種持續的創新精神使得公司在激烈的市場競爭中始終保持領先地位。
Altmustech公司的創立源于一次技術突破。創始人李博士帶領的團隊成功研發了一款高效能、低成本的半導體芯片,這一創新技術解決了當時電子行業面臨的能效問題,迅速引起了市場的關注。隨著技術的不斷完善和產品的推出,Altmustech逐漸在半導體市場上嶄露頭角,為公司的快速發展奠定了堅實的基礎。
- 創業初期:
- 描述Clulite公司的創始人或核心團隊如何識別電子行業中的某個市場機遇。
- 講述他們是如何籌集初始資金,設立公司,并開發出第一款產品或解決方案的。
- 可以提及公司在初創階段面臨的挑戰,如技術難題、市場競爭等。
- 技術創新:
- 講述Clulite如何通過研發創新,推出了一款顛覆性的產品或技術,從而獲得了市場認可。
- 詳細描述這一創新過程,包括研發團隊的努力、關鍵技術的突破等。
- 提及這一創新如何幫助公司在市場上取得了競爭優勢。
- 市場拓展:
- 描述Clulite如何逐步擴大市場份額,從地區市場走向全國乃至國際市場。
- 可以講述公司如何建立銷售網絡、與合作伙伴建立合作關系,以及參與行業展會等活動來推廣品牌和產品。
- 提及公司在市場拓展過程中遇到的挑戰和應對策略。
- 品質管理:
- 講述Clulite如何注重產品質量和客戶體驗,通過嚴格的質量控制流程來提升產品可靠性。
- 描述公司如何建立完善的售后服務體系,為客戶提供及時、專業的支持。
- 提及這些舉措如何幫助公司贏得了客戶的信任和口碑。
- 可持續發展:
- 講述Clulite如何關注環境保護和社會責任,推動公司的可持續發展。
- 描述公司如何采取環保措施,減少生產過程中的污染排放。
- 提及公司如何參與社會公益事業,回饋社會。
請注意,這些故事需要根據Clulite公司的實際情況進行調整和補充。如果你需要更具體的內容,建議查閱Clulite公司的官方網站、新聞報道或行業分析報告,以獲取更詳細的信息和數據。
在移植dm9000a到pxa270上時,用的驅動是優龍里面的dm9000a驅動發現在驅動執行到這步DeviceReadPort時就死掉了 那個片選信號開始是高的當到DeviceReadPort時就一直是低,系統也就死掉了 我的硬件連接是pxa270的ncs4連接dm9000a的cs信號 ...… 查看全部問答∨ |
|
做2440下ov9650的driver, 使能攝像頭抓拍后,獲得一幀數據程序進入中斷,在中斷中將標志位清除,然后將攝像頭抓拍禁用,退出中斷。通過在return irq_handled 之前打印信息,打印信息被打印之后,系統就死掉了,不知道為什么,中斷中對寄存器的操作 ...… 查看全部問答∨ |
相對鉛酸電池、鎳鎘電池、鋰離子電池,儲能電容具有節能、超長使用壽命、安全、環保、寬溫度范圍、充電快速、無需人工維護等優點。本文介紹Maxwell儲能電容在UPS、軌道交通、汽車、智能儀表等領域的應用。 傳統的儲能系統是使用鉛酸電池。以風力 ...… 查看全部問答∨ |
昨天給了VHDL寫的2個程序,今天分享一下Verilog例程。 其實,目前很多大公司都是用VHDL開發的,語法嚴謹,格式規范,利于工作交接和維護,大家還是學習一下比較好,畢竟技多不壓人吧 我使用的開發板的原理圖分享給大家,自己可以DIY,FPGA的學 ...… 查看全部問答∨ |
剛剛莫名接到快遞電話,說電子工程世界北京來的,摸不著頭腦就過去拿了,看了才想起來ADI資料下載活動的禮品,ADI筆記本,你們都收到沒有啊。不錯以后活動多多支持。 … 查看全部問答∨ |
來自國外TM大神的函數庫,不占用定時器和Systick的延時函數,利用了DWT,十分巧妙,不占用任何定時器或者systick即可實現精確的微秒級延時 uint32_t TM_DELAY_Init(void) { #if !defined(STM32F0xx) uin ...… 查看全部問答∨ |
現在需要用STM32F103R8T6單片機控制直流無感無刷電機,要求控制方式為PWM控制,能通過控制占空比調節電機轉速。求大神指教,我是小白 … 查看全部問答∨ |