九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

智能平衡電動小車設(shè)計報告

上傳人:1888****888 文檔編號:38793606 上傳時間:2021-11-09 格式:DOC 頁數(shù):30 大小:975.54KB
收藏 版權(quán)申訴 舉報 下載
智能平衡電動小車設(shè)計報告_第1頁
第1頁 / 共30頁
智能平衡電動小車設(shè)計報告_第2頁
第2頁 / 共30頁
智能平衡電動小車設(shè)計報告_第3頁
第3頁 / 共30頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《智能平衡電動小車設(shè)計報告》由會員分享,可在線閱讀,更多相關(guān)《智能平衡電動小車設(shè)計報告(30頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、2014年廣西大學(xué)生電子設(shè)計大賽 2014年廣西大學(xué)生電子設(shè)計大賽【本科組E題】智能平衡電動小車設(shè)計報告 學(xué)校:桂林電子科技大學(xué) 院系:計算機科學(xué)與工程學(xué)院 隊員姓名:黎遠(yuǎn)明,孫翔,安聰穎 實驗地點:創(chuàng)新學(xué)院B106 負(fù)責(zé)人:管芳 時間:2014年8月29日 設(shè)計摘要: 隨著人工智能技術(shù)、計算機技術(shù)、自動控制技術(shù)的迅速發(fā)展,智能控制必將迎來它的發(fā)展新時代。整個智能小車設(shè)計主要以STC89C52單片機為控制核心,使用超聲波模塊檢測距離,采用紅外傳感器控制躲避障礙。小車驅(qū)動采用減速直流電機,執(zhí)行采用脈寬調(diào)制(PWM)技術(shù)實現(xiàn)對縣級的精確控制。通過不斷對單片機I/O口進(jìn)行掃描來監(jiān)測傳感器的狀態(tài),控制

2、小車循線、轉(zhuǎn)彎、避障等動作,使得小車按預(yù)定軌道行駛,并在遇到障礙時發(fā)出指示并停車的功能。同時,運用顯示屏和數(shù)碼管,顯示時間,路程和電壓。關(guān)鍵詞:智能小車,超聲波測距,循線模塊,PWM,聲光指示Abstract: With the rapid development of artificial intelligence technology, computer technology, automatic control technology, intelligent control will usher in a new era of itsdevelopment.This disse

3、rtation discusses mainly on the design of the intelligent car  in STC89C52single-chip processor as the control core.Detection distance using ultrasonic module, using an infrared sensor control to avoid obstacles. Car dri

4、ven by a DC motor reducer, execution using pulse width modulation (PWM) technology to achieve precise control of the county's. By constantly on the MCU I / O port for scanning to monitor the state of the sensor, control the car through the line, turning, obstacle avoidance and other actions, mak

5、ing the car traveling at a predetermined orbit, and give directions in the face of obstacles and park features.Key Word:Intelligence Balancing Electric Car, Ultrasonic Ranging, PWM,Sound and Light Indication目錄1 系統(tǒng)方案11.1總體方案設(shè)計與比較11.2電機的比較與選擇21.3循跡模塊的選擇與比較21.31循跡模塊選擇21.32尋跡傳感器布局 31.4避障測距模塊32 理論分析

6、與計算42.1信號檢測與控制 42.2節(jié)能 42.3直流電機調(diào)速原理42.4 PWM基本原理 52.5循跡模塊算法分析(5路)63電路與程序設(shè)計73.1單片機控制系統(tǒng)73.2電源模塊設(shè)計83.3驅(qū)動模塊設(shè)計93.4循跡模塊設(shè)計及程序流程93.5超聲波測距模塊 103.6程序大致流程114結(jié)果分析124.1調(diào)試儀器儀表 124.2系統(tǒng)測試 124.3調(diào)試過程及分析124.4調(diào)整與改正13附錄1;程序源代碼14附錄2:元件清單261 系統(tǒng)方案整個電路系統(tǒng)采用模塊化的設(shè)計方案,有尋跡檢測、避障檢測、超聲波距離檢測、驅(qū)動模塊等多個模塊。首先利

7、用檢測模塊對路面信號進(jìn)行檢測,經(jīng)過比較器處理之后,送給軟件控制模塊進(jìn)行實時控制,輸出相應(yīng)的信號給驅(qū)動芯片驅(qū)動電機轉(zhuǎn)動,從而控制小車沿著引導(dǎo)黑線行駛,同時,超聲波模塊進(jìn)行測距, 小車用數(shù)碼管,檢測運作時的小車電壓。在遇到硬幣時,通過避障模塊進(jìn)行檢測,并發(fā)出聲光指示,控制小車停車5秒,后繼續(xù)按照引導(dǎo)黑線走完全程。1.1總體方案設(shè)計與比較方案一:采用STC89C52單片機作為整機的控制單元。以STC89C52單片機為核心的控制電路,運用循跡模塊、避障檢測、超聲波距離檢測、驅(qū)動模塊等多個模塊,實現(xiàn)小車在行駛中轉(zhuǎn)彎、蔽障、測距等問題。同時利用1620和數(shù)碼管,顯示時間,路程,以及電壓。并將測量數(shù)據(jù)傳送至

8、單片機進(jìn)行處理,然后由單片機根據(jù)所檢測的各種數(shù)據(jù)實現(xiàn)尋線,停車,聲光指示等智能化控制,以及各種數(shù)據(jù)顯示。 方案二:選用一片CPLD作為系統(tǒng)的核心部件,實現(xiàn)控制與處理的功能。 CPLD復(fù)雜可編程邏輯器件,是從PAL和GAL器件發(fā)展出來的器件,相對而言規(guī)模大,結(jié)構(gòu)復(fù)雜,屬于大規(guī)模集成電路范圍,是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。具有速度快、編程容易、資源豐富、開發(fā)周期短等優(yōu)點,可利用VHDL語言進(jìn)行編寫開發(fā)。但CPLD在控制上較單片機有較大的劣勢。同時,CPLD的處理速度非???,而小車的行進(jìn)速度不可能太高,若采用該方案,必將在控制上遇到很多不必要增加的難題。 綜合考慮了傳感器、

9、電機的驅(qū)動等諸多因素,方案一簡潔、靈活、可擴展性好,并且我們對單片機掌握的比較好,且能達(dá)到題目的設(shè)計要求,因此本設(shè)計采用方案一來實現(xiàn),充分利用STC89C52的單片機資源。1.2電機的比較與選擇方案一:采用步進(jìn)電機步進(jìn)電機的一個顯著特點就是具有快速啟停能力,如果負(fù)荷不超過步進(jìn)電機所能提供的動態(tài)轉(zhuǎn)矩值,就能夠立即使步進(jìn)電機啟動或反轉(zhuǎn)。另一個顯著特點是轉(zhuǎn)換精度高,正轉(zhuǎn)反轉(zhuǎn)控制靈活。方案二:采用直流伺服電機 直流伺服電機具有優(yōu)良的速度控制性能,它輸出較 大的轉(zhuǎn)矩,直接拖動負(fù)載運行,同時他又受控制信號的直接控制進(jìn)行轉(zhuǎn)速調(diào)節(jié),在很多方面具有優(yōu)越性,但是直流伺機電機價格昂貴,且不易購買方案三:采用減速直流

10、電機。 直流電動機具有優(yōu)良的調(diào)速特性,調(diào)速平滑、方便,調(diào)整范圍廣;過載能力強,能承受頻繁的沖擊負(fù)載,可實現(xiàn)頻繁的無級快速啟動、制動和反轉(zhuǎn);能滿足生產(chǎn)過程自動化系統(tǒng)各種不同的特殊運行要求。 由于減速直流電機更易于購買,并且電路相對簡單,并能完成所需的功能,故采用減速直流電機作為動力源。1.3循跡模塊的選擇與比較1.31循跡模塊選擇方案一:采用發(fā)光二極管+光敏電阻易受到外界光源的干擾,有時甚至檢測不到黑線,主要是因為可見光的反射效果跟地表的平坦程度、地表材料的反射情況均對檢測效果產(chǎn)生直接影響。克服此缺點的方法:采用超高亮度的發(fā)光二極管能降低一定的干擾,但這又會增加檢測系統(tǒng)的功耗。方案二:脈沖調(diào)制的

11、反射式紅外發(fā)射接收器。 由于采用帶有交流分量的調(diào)制信號,則可大幅度減少外界的干擾;此外紅外發(fā)射接收管的工作電流取決于平均電流,如果采用占空比小的調(diào)制信號,在平均電流不變的情況下,瞬時電流很大(50100mA)(ST-188允許的最大輸入電流為50mA),則大大提高了信噪比。此種測試方案反應(yīng)速度大約在5us。   通過比較,方案二更加有優(yōu)勢,故選擇紅外發(fā)射接收器制作循跡模塊。1.32尋跡傳感器布局     方案一:一字形布局 反射式光電傳感器在小車前方一字形簡單排布。在一字形中傳感器的間隔有均勻布局和非均勻

12、布局兩種方式,均勻布局不利于彎道信息的準(zhǔn)確采集,通常采取的是非均勻布局。考慮到弧度信息采集的連貫性,非均勻布局的理論依據(jù)是等角度分布原則,即先確定一合適的定點,從頂點依次等角度畫射線,射線與傳感器水平線相交的位置即為傳感器的位置。這種方案信息檢測相對連貫,準(zhǔn)確,使控制程序算法簡單,小車運行連貫,穩(wěn)定。 方案二:M形布局。傳感器呈M形排布。這種方案的優(yōu)點在于拓寬了邊沿傳感器的檢測范圍,更適合于小車快速行進(jìn)中的彎道檢測,但相對一字形布局來說,M形布局不利于信息檢測的穩(wěn)定,易于產(chǎn)生振蕩,不利于小車行駛的穩(wěn)定。由于本次尋跡實驗要求比較簡單,考慮到方案的可行性并且保持小車運行穩(wěn)定,故此次采用方

13、案一來進(jìn)行傳感器的布局。1.4避障測距模塊 方案一: 超聲波測距。超聲波傳感器是利用超聲波的特性研制而成的傳感器。超聲波是一種振動頻率高于聲波的機械波,由換能晶片在電壓的激勵下發(fā)生振動產(chǎn)生的,它具有頻率高、波長短、繞射現(xiàn)象小,特別是方向性好、能夠成為射線而定向傳播等特點。  方案二:視覺測距。視覺傳感器具有從一整幅圖像捕獲光線的數(shù)以千計的像素。在捕獲圖像之后,視覺傳感器將其與內(nèi)存中存儲的基準(zhǔn)圖像進(jìn)行比較,以做出分析。視覺傳感器的優(yōu)點是易于多目標(biāo)測量和分類,分辨率好。但它不能直接測量距離,算法復(fù)雜,處理速度慢。  由于超聲波傳感器價格合理,功能齊全。而視覺傳感器價格

14、昂貴,且算法復(fù)雜,不易于控制,故選擇超聲波模塊。2 理論分析與計算2.1信號檢測與控制  本系統(tǒng)采用紅外檢測電路,當(dāng)系統(tǒng)檢測到外側(cè)的黑線時,系統(tǒng)通過單片機向電機發(fā)送控制指令,從而使小車左側(cè)輪子停轉(zhuǎn),右側(cè)輪子正常運轉(zhuǎn),以實現(xiàn)小車左轉(zhuǎn)的目的。同理,當(dāng)系統(tǒng)檢測到內(nèi)測黑線時,小車相應(yīng)會右轉(zhuǎn),這樣就能實現(xiàn)小車沿著黑線行駛。同時紅外對管檢測路面信息,能控制小車轉(zhuǎn)彎和防止小車出界。  并且用超聲波檢測前方障礙,可防止與障礙物相撞。 2.2節(jié)能  本車采用可充電電池驅(qū)動小車行駛,比一次性電池更加節(jié)能環(huán)保。開關(guān)電源調(diào)節(jié)器件以完全導(dǎo)通或關(guān)斷方式工作。因此,開關(guān)電源功耗極低,

15、比線性電源更加節(jié)能。2.3直流電機調(diào)速原理 依據(jù)直流電動機轉(zhuǎn)速公式:n=(U-IR)/K 。其中U為電樞端電壓,I為電樞電流,R為電樞電路總電阻,為磁通量,K為電動機結(jié)構(gòu)參數(shù)。  由公式可以看出,可以通過改變勵磁磁通量、電樞電路總電阻R、電樞端電壓U三種方法來調(diào)節(jié)轉(zhuǎn)速。 (1)改變勵磁磁通量主要是針對勵磁式直流電機(定子上也為繞組,通電產(chǎn)生磁場,相當(dāng)于電磁鐵),改變勵磁電流進(jìn)而改勵磁磁通量,而我們用的直流電極是永磁式直流電機(定子為永久磁鐵),所以不能通過改變勵磁磁通量的方法改變速度。 (2)通過改變電樞電路的總電阻R來調(diào)速,由n=(U-IR)/K可知,

16、當(dāng)R變大時,n變小。 (3)通過改變電樞端電壓U來調(diào)速,調(diào)節(jié)電樞端電壓可以實現(xiàn)無級調(diào)速,是應(yīng)用范圍最為廣泛的調(diào)速方法。  2.4 PWM基本原理 采樣控制理論中有一個重要結(jié)論:沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時,其效果基本相同。PWM 控制技術(shù)就是以該結(jié)論為理論基礎(chǔ),對半導(dǎo)體開關(guān)器件的導(dǎo)通和關(guān)斷進(jìn)行控制,使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖來代替正弦波或其他所需要的波形。按一定的規(guī)則對各脈沖的寬度進(jìn)行調(diào)制,既可改變逆變電路輸出電壓的大小,也可改變輸出頻率。通俗的說PWM 是采用數(shù)字量對模擬量進(jìn)行合成的

17、方法。  由于電壓UAB的正、負(fù)變化,使電流波形存在兩種情況:  (1)電動機負(fù)載較重(如id1 ),這時平均負(fù)載電流大,在續(xù)流階段電流仍維持正方向,電機始終工作在第象限的電動狀態(tài); (2)電動機負(fù)載較輕(如id2 ),平均電流小,在續(xù)流階段電流很快衰減到零,于是VT2和VT3集一射極兩端失去反壓,在負(fù)的電源電壓(Us)和電樞反電動勢的共同作用下導(dǎo)通,電樞電流反向,沿回路3流通,電動機處于制動狀態(tài)。與此相仿,在0t<ton期間,當(dāng)負(fù)載輕時,電流也有一次倒向。 雙極式可逆PWM變換器電樞平均端電壓用公式表示為: 

18、;  仍以=Ud/Us來定義PWM電壓的占空比,則與ton的關(guān)系為 :   調(diào)速時,的變化范圍為l1 ; 當(dāng)為正值時,電動機正轉(zhuǎn); 為負(fù)值時,電動機反轉(zhuǎn);=0時,電動機停止。   直流脈寬調(diào)速系統(tǒng)中包括一個具有繼電特性的脈寬調(diào)制變換器,它在本質(zhì)上是一個開關(guān)控制系統(tǒng)。P10 P11 P12 P13 P14 2.5循跡模塊算法分析(5路)左電機 右電機P20 P211轉(zhuǎn) 1轉(zhuǎn)0不轉(zhuǎn) 0不轉(zhuǎn)P10 P11 P12P13 P14 方向00000前進(jìn)011左轉(zhuǎn)101前進(jìn)001左轉(zhuǎn)110右轉(zhuǎn)100右轉(zhuǎn)左轉(zhuǎn)0

19、右轉(zhuǎn)3電路與程序設(shè)計3.1單片機控制系統(tǒng) 89S52是一種低功耗、高性能CMOS 8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲器。 采用此芯片與復(fù)位電路,晶振回路即可構(gòu)成單片機控制系統(tǒng),電路圖如圖所示:程序流程圖如下:3.2電源模塊設(shè)計 電源模模塊,由3部分組成,升壓模塊,穩(wěn)壓模塊,和降壓模塊,利用LM2587,LM2596以及LM2576芯片,達(dá)到三合一,節(jié)約了成本,同時提高了模塊的性能。 3.3驅(qū)動模塊設(shè)計 采用內(nèi)部集成H橋式芯片每一組PWM波用來控制一個電機的速度,而另外兩個I/O口可以控制電機的正反轉(zhuǎn),控制比較簡單,電路也很簡單,一個芯片

20、內(nèi)包含有8個功率管,這樣簡化了電路的復(fù)雜性。3.4循跡模塊設(shè)計及程序流程 循跡模塊是智能車系統(tǒng)的關(guān)鍵模塊之一,其主要功能是準(zhǔn)確,快速,超前地采集路面信息,把它轉(zhuǎn)變成電信號,傳送到單片機中處理。 原理: 紅外探測法,即利用紅外線在不同顏色的物體表面具有不同的反射強度的特點,在小車行駛過程中不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色紙質(zhì)地板時發(fā)生漫反 射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光。單片機就是否收到反射回來的紅外光為依據(jù)來確定黑線的 位置和小車的行走路線。程序設(shè)計流程圖:循跡避障程序入口讀紅外傳感器狀態(tài)左轉(zhuǎn)右轉(zhuǎn)前進(jìn)依據(jù)

21、狀態(tài)選擇小車運行方式3.5超聲波測距模塊 車測距上我們選擇了HC-SR04超聲波模塊傳感,HC-SR04可提供2cm-400cm的非接觸式距離感測功能,模塊包括超聲波發(fā)射器、接收器與控制電路。超聲波是指頻率高于20KHz的機械波。超聲波從發(fā)射到遇到障礙物返回所經(jīng)歷的時間,再乘以超聲波的速度就得到二倍的聲源與障礙物之間的距離。 此超聲波測距模塊的工作原理:接收回路為諧振回路,將收到的微弱回波信號檢出,送信號放大電路放大,收到產(chǎn)生脈沖輸出送單片機中斷端,單片機收到中斷信號后停止計時,計算出距離值,保存等待讀出或直接經(jīng)UART 送出。接收過程中,單片機定時控制放大電路的增益,逐漸

22、提高,以適應(yīng)距離越來越弱的回波信號。超聲測距傳感器的核心功能是測量距離,通過發(fā)射器發(fā)射超聲波,超聲波遇到物體反射回來被接收器接收。傳感器將所測量的量轉(zhuǎn)換成數(shù)字信息,即將非電量轉(zhuǎn)換為便于測量的電量,這樣單片機就能計算出超聲波從發(fā)射到接受用的時間,測量時間*聲速/2=距離。車測距上我們選擇了HC-SR04超聲波模塊傳感,HC-SR04可提供2cm-400cm的非接觸式距離感測功能,模塊包括超聲波發(fā)射器、接收器與控制電路。超聲波是指頻率高于20KHz的機械波。超聲波從發(fā)射到遇到障礙物返回所經(jīng)歷的時間,再乘以超聲波的速度就得到二倍的聲源與障礙物之間的距離。3.6程序大致流程此設(shè)計由尋跡檢測、避障檢測、

23、超聲波距離檢測、驅(qū)動模塊等多個模塊組合而成。89S52 循跡程序 硬幣檢測聲光控制顯示路程時間 停車程序 4結(jié)果分析 4.1調(diào)試儀器儀表  設(shè)計及測試中所用的儀器及工具主要有:秒表、數(shù)字萬用表、信號發(fā)生器、示波器、MCS51仿真機、直流穩(wěn)壓電源等 電源:可充電電池。  常用儀表:數(shù)字萬用表、AVR Studio。4.2系統(tǒng)測試 對小車的整體的調(diào)試按照模塊來進(jìn)行,分為以下幾個步驟: 首先測試電源的工作情況,各個模塊能否得到良好供電。 然后檢查單片機能否正常的燒寫程序和工作。 紅外對管安裝完成后根據(jù)測試數(shù)據(jù)調(diào)試程序。 

24、測試兩前輪電機的工作情況,并試驗電機的驅(qū)動能力。 讓小車在黑色軌道上初步循跡運行。 反復(fù)測試各參數(shù)變化對小車的影響,找出最有效的配置。 對小車運行過程中各種可能出現(xiàn)的情況測試,發(fā)現(xiàn)問題,找出解決方法。整理數(shù)據(jù),優(yōu)化程序設(shè)計。 經(jīng)過多次調(diào)試,本系統(tǒng)能夠基本滿足設(shè)計要求,能夠較快較平穩(wěn)的沿路面行駛。4.3調(diào)試過程及分析由于各模塊往單片機發(fā)送的數(shù)據(jù)都是數(shù)字信號,在對各模塊進(jìn)行檢測的時候,用萬用表對輸出信號進(jìn)行檢測,觀測是否輸出相應(yīng)的電壓變化即檢測出各模塊的工作狀態(tài)。 在小車調(diào)試完成后我們用萬用表對小車的整體完成情況進(jìn)行測試,根據(jù)程序設(shè)計流程圖可以看出

25、本系統(tǒng)用一套程序就可以完成基本部分和發(fā)揮部分的各項任務(wù),在測試時,我們對小車分別行使一圈用時情況和和小車上坡時的狀態(tài)進(jìn)行記錄。測試次數(shù)小車行駛一圈的秒數(shù)(S)是否超出跑道遇到硬幣時,是否聲光指示,并停車是否能 爬上坡135是是否233是否否332否否是 430否是是4.4調(diào)整與改正 在設(shè)計的過程中發(fā)現(xiàn)了自身知識的不足,也發(fā)現(xiàn)我們必須具備專業(yè)基礎(chǔ)知識才能成功的設(shè)計出一件合格的東西。這次課程設(shè)計收獲很多,體會也很深刻,并且對我們所學(xué)的東西也產(chǎn)生了濃厚的興趣。在設(shè)計過程中,也學(xué)會了很多新的東西,如對一些初次使用的模塊的認(rèn)識與掌握。當(dāng)然最重要的是學(xué)到了關(guān)于基本電子設(shè)計的一些方法,同時也加深了對一些常用

26、的電子元件的理解以及其基本用法的掌握。 通過多次調(diào)試,發(fā)現(xiàn)小車有以下幾方面的問題及因素影響:  (1) 程序邏輯方面不夠嚴(yán)謹(jǐn),導(dǎo)致在行駛過程中不按預(yù)期的路線去行駛。究其原因,一方面由于電路自身缺陷導(dǎo)致程序有誤,另一方面由于C語言掌握不夠,需要加強。 (2) 小車車身前重后輕難以上坡 針對以上問題,改進(jìn)方案如下: (1) 解決方案:先對程序進(jìn)行軟件調(diào)試,進(jìn)行單步運行,軟件調(diào)試成功在進(jìn)行硬件調(diào)試,最終實現(xiàn)預(yù)期要求(2) 加重小車前身的重量,及利用軟件控制電機有足夠的速度沖上上坡。附錄1;程序源代碼#include<reg52.h>#in

27、clude"delay.h"#define uint unsigned int #define uchar unsigned charsbit beef=P15;/蜂鳴器和燈sbit ena=P20; /左使能端sbit enb=P21; /右使能端sbit tan1=P10;/探頭1sbit tan2=P11;/探頭2sbit tan3=P12;/探頭3sbit tan4=P13; /探頭4sbit tan5=P14; /探頭5sbit LCD_RST=P22 ;/復(fù)位,0復(fù)位;sbit LCD_CE=P23; / 片選,芯片使能,(片選為零時,開使能端) sbit LC

28、D_DC=P24; / 1寫數(shù)據(jù),0寫命令;sbit SDIN=P25; /串行數(shù)據(jù)傳輸端;sbit SCLK=P26; /串行時鐘輸入端;sbit Trig=P00;uint secondsg=0,secondss=0,secondsb=0; /時間顯示uint dis=0,count3=0;/距離uchar tt=0; /定時器里面的uint us=0;/10usuint ms=0;/1msuint s;/100msuchar count1=0,count2=0; /計數(shù)次數(shù)uchar lspeed=0,rspeed=0; /左右輪速度uchar j=0; /全部檢測到黑線的次數(shù)void

29、stop();void HC_init()TMOD=0x09;TR0=1;TH0=0;TL0=0; uint HC_jisuan()uint dist,timer;timer=TH0;timer<<=8;timer=timer|TL0;dist=timer/53; /晶振11.0592MHz /距離cm=微秒us/58return dist; /1個機器周期是12個時鐘周期 timer*12/(58*11.0592)=timer/53void HC_run()uint tempH=0x00,tempL=0x00;TH0=0;TL0=0;Trig=0;Trig=1;delay_1ms

30、(1);Trig=0;while(TH0-tempH!=0|TL0-tempL!=0)|(TH0=0&&TL0=0)tempH=TH0;tempL=TL0;delay_1ms(1);code unsigned char font6x86 = 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , / sp 0x00, 0x00, 0x00, 0x2f, 0x00, 0x00 , / ! 0x00, 0x00, 0x07, 0x00, 0x07, 0x00 , / " 0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14 , / # 0

31、x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12 , / $ 0x00, 0x62, 0x64, 0x08, 0x13, 0x23 , / % 0x00, 0x36, 0x49, 0x55, 0x22, 0x50 , / & 0x00, 0x00, 0x05, 0x03, 0x00, 0x00 , / ' 0x00, 0x00, 0x1c, 0x22, 0x41, 0x00 , / ( 0x00, 0x00, 0x41, 0x22, 0x1c, 0x00 , / ) 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14 , / * 0x00,

32、0x08, 0x08, 0x3E, 0x08, 0x08 , / + 0x00, 0x00, 0x00, 0xA0, 0x60, 0x00 , / , 0x00, 0x08, 0x08, 0x08, 0x08, 0x08 , / - 0x00, 0x00, 0x60, 0x60, 0x00, 0x00 , / . 0x00, 0x20, 0x10, 0x08, 0x04, 0x02 , / / 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E , / 0 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00 , / 1 0x00, 0x42, 0x61, 0

33、x51, 0x49, 0x46 , / 2 0x00, 0x21, 0x41, 0x45, 0x4B, 0x31 , / 3 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10 , / 4 0x00, 0x27, 0x45, 0x45, 0x45, 0x39 , / 5 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30 , / 6 0x00, 0x01, 0x71, 0x09, 0x05, 0x03 , / 7 0x00, 0x36, 0x49, 0x49, 0x49, 0x36 , / 8 0x00, 0x06, 0x49, 0x49, 0x29, 0x

34、1E , / 9 0x00, 0x00, 0x36, 0x36, 0x00, 0x00 , / : 0x00, 0x00, 0x56, 0x36, 0x00, 0x00 , / ; 0x00, 0x08, 0x14, 0x22, 0x41, 0x00 , / < 0x00, 0x14, 0x14, 0x14, 0x14, 0x14 , / = 0x00, 0x00, 0x41, 0x22, 0x14, 0x08 , / > 0x00, 0x02, 0x01, 0x51, 0x09, 0x06 , / ? 0x00, 0x32, 0x49, 0x59, 0x51, 0x3E , /

35、0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C , / A 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36 , / B 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22 , / C 0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C , / D 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41 , / E 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01 , / F 0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A , / G 0x00, 0x7F, 0

36、x08, 0x08, 0x08, 0x7F , / H 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00 , / I 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01 , / J 0x00, 0x7F, 0x08, 0x14, 0x22, 0x41 , / K 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40 , / L 0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F , / M 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F , / N 0x00, 0x3E, 0x41, 0x41, 0x

37、41, 0x3E , / O 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06 , / P 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E , / Q 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46 , / R 0x00, 0x46, 0x49, 0x49, 0x49, 0x31 , / S 0x00, 0x01, 0x01, 0x7F, 0x01, 0x01 , / T 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F , / U 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F , /

38、V 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F , / W 0x00, 0x63, 0x14, 0x08, 0x14, 0x63 , / X 0x00, 0x07, 0x08, 0x70, 0x08, 0x07 , / Y 0x00, 0x61, 0x51, 0x49, 0x45, 0x43 , / Z 0x00, 0x00, 0x7F, 0x41, 0x41, 0x00 , / 0x00, 0x55, 0x2A, 0x55, 0x2A, 0x55 , / 55 0x00, 0x00, 0x41, 0x41, 0x7F, 0x00 , / 0x00, 0x04, 0x

39、02, 0x01, 0x02, 0x04 , / 0x00, 0x40, 0x40, 0x40, 0x40, 0x40 , / _ 0x00, 0x00, 0x01, 0x02, 0x04, 0x00 , / ' 0x00, 0x20, 0x54, 0x54, 0x54, 0x78 , / a 0x00, 0x7F, 0x48, 0x44, 0x44, 0x38 , / b 0x00, 0x38, 0x44, 0x44, 0x44, 0x20 , / c 0x00, 0x38, 0x44, 0x44, 0x48, 0x7F , / d 0x00, 0x38, 0x54, 0x54, 0

40、x54, 0x18 , / e 0x00, 0x08, 0x7E, 0x09, 0x01, 0x02 , / f 0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C , / g 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78 , / h 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00 , / i 0x00, 0x40, 0x80, 0x84, 0x7D, 0x00 , / j 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00 , / k 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00 , /

41、 l 0x00, 0x7C, 0x04, 0x18, 0x04, 0x78 , / m 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78 , / n 0x00, 0x38, 0x44, 0x44, 0x44, 0x38 , / o 0x00, 0xFC, 0x24, 0x24, 0x24, 0x18 , / p 0x00, 0x18, 0x24, 0x24, 0x18, 0xFC , / q 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08 , / r 0x00, 0x48, 0x54, 0x54, 0x54, 0x20 , / s 0x00, 0x04

42、, 0x3F, 0x44, 0x40, 0x20 , / t 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C , / u 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C , / v 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C , / w 0x00, 0x44, 0x28, 0x10, 0x28, 0x44 , / x 0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C , / y 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44 , / z 0x14, 0x14, 0x14, 0x14,

43、 0x14, 0x14 / horiz lines;/* 函數(shù)名稱:LCD_write_byte函數(shù)功能:模擬SPI接口時序?qū)憯?shù)據(jù)/命令LCD入口參數(shù):data :寫入的數(shù)據(jù); command :寫數(shù)據(jù)/命令選擇;出口參數(shù):無 備 注: */void LCD_write_byte(unsigned char dat, unsigned char command) unsigned char i; LCD_CE = 0; /5110片選有效,允許輸入數(shù)據(jù) if (command = 0) /寫命令 LCD_DC = 0; else LCD_DC = 1; /寫數(shù)據(jù)for(i=0;i<8;i

44、+) /傳送8bit數(shù)據(jù) if(dat&0x80)SDIN = 1;elseSDIN = 0;SCLK = 0;dat = dat << 1;SCLK = 1; LCD_CE = 1; /禁止5110 /* 清屏函數(shù) */ void LCD_clear() unsigned int i; LCD_write_byte(0x0c, 0); LCD_write_byte(0x80, 0); for (i=0; i<504; i+) LCD_write_byte(0x00, 1); /* 函數(shù)名稱:LCD_init函數(shù)功能:5110初始化入口參數(shù):無出口參數(shù):無 備 注:

45、*/void LCD_init(void)LCD_RST=0; delay_1ms(10); LCD_RST=1; LCD_write_byte(0x21, 0);/ 使用擴展命令設(shè)置LCD模式 LCD_write_byte(0xc6, 0);/ 設(shè)置液晶偏置電壓 LCD_write_byte(0x06, 0);/ 溫度校正 LCD_write_byte(0x13, 0);/ 1:48 LCD_write_byte(0x20, 0);/ 使用基本命令,V=0,水平尋址 LCD_clear(); / 清屏 LCD_write_byte(0x0c, 0);/ 設(shè)定顯示模式,正常顯示 LCD_CE

46、= 0; / 關(guān)閉LCD /* 函數(shù)名稱:LCD_set_XY函數(shù)功能:設(shè)置LCD坐標(biāo)函數(shù)入口參數(shù):X :083 Y :05出口參數(shù):無 備 注: */void LCD_set_XY(unsigned char X, unsigned char Y) LCD_write_byte(0x40 | Y, 0); / column LCD_write_byte(0x80 | X, 0); / row /* 函數(shù)名稱:LCD_write_char函數(shù)功能:顯示英文字符入口參數(shù):c: 顯示的字符出口參數(shù):無 備 注: */void LCD_write_char(unsigned char c) unsi

47、gned char line; c -= 32; /數(shù)組的行號 for (line=0; line<6; line+) LCD_write_byte(font6x8cline, 1);/*函數(shù)名稱:LCD_write_english_string函數(shù)功能:顯示英文字符串入口參數(shù):*s: 顯示的字符串出口參數(shù):無 備 注:*/ void LCD_write_english_string(unsigned char X,unsigned char Y,char *s ) LCD_set_XY(X,Y); while (*s) LCD_write_char(*s); s+; void LCD_

48、write_number(unsigned char X,unsigned char Y,unsigned char c) unsigned char line; LCD_set_XY(X,Y); c -= 32; /數(shù)組的行號 for (line=0; line<6; line+) LCD_write_byte(font6x8cline, 1);void timeshow() LCD_write_english_string(0,1,"Time"); LCD_write_number(42,1,secondsg+0x30); /時間個位秒鐘 LCD_write_nu

49、mber(36,1,secondss+0x30); /時間十位秒鐘 LCD_write_number(30,1,secondsb+0x30); /時間十位秒鐘void disshow() int disq,disb,diss,disg; dis=(count1/35)*15; disq=dis/1000; disb=(dis/100)%10; diss=(dis/10)%10; disg=(dis%10); LCD_write_english_string(0,2,"Distance"); LCD_write_number(54,2,disq+0x30); LCD_writ

50、e_number(60,2,disb+0x30); LCD_write_number(66,2,diss+0x30); LCD_write_number(72,2,disg+0x30);/*使能端初始化函數(shù)*/void initen()ena=1;enb=1;/*定時器0初始化函數(shù)*/void init_time0()TMOD=0x01;/GATE=0,定時模式,方式1TH0=(65536-10)/256;/裝初值TL0=(65536-10)%256;EA=1;/打開外部中斷總開關(guān)ET0=1;/選擇定時器0TR0=1;/打開定時器0的開關(guān)/*定時器0中斷服務(wù)函數(shù)*/void time0() i

51、nterrupt 1TR0=0;/關(guān)閉定時器us+;TH0=(65536-10)/256;/裝初值TL0=(65536-10)%256;TR0=1;/打開定時器count1+;count2+;if(count1<=lspeed)ena=1;elseena=0;if(count2<=rspeed)enb=1;elseenb=0;if(count1=100)count1=0;if(count2=100)count2=0;void sum()if(us=100)us=0;ms+;if(ms=100)ms=0;s+;if(s=10)s=0;tt+;if(tt=20) tt=0; secon

52、dsg+; if(secondsg>9) secondss+; secondsg=0;if(secondss>9) secondsb+; secondss=0; /*外部中斷0初始化函數(shù)*/void init_zd0()EA=1;/打開中斷總開關(guān)EX0=1;/選擇外部中斷0IT0=1;/下降沿觸發(fā)void int0() interrupt 0stop();beef=0;delay_1ms(1500);delay_1ms(2500);delay_1ms(2500);beef=1;delay_1ms(2500);delay_1ms(2500);delay_1ms(2500);/*前進(jìn)函

53、數(shù)*/void go(uchar l,uchar r) /左右輪速度lspeed=l;rspeed=r;ena=1;enb=1;/*停車函數(shù)*/void stop()ena=0;enb=0;/*紅外檢測函數(shù)*/uchar hongwai()uchar i=0;if(tan1=0&&tan2=0&&tan3=0&&tan4=0&&tan5=0)i=0;j+;if(tan2=0&&tan3=1&&tan4=1)i=1;if(tan2=1&&tan3=0&&tan4=1)

54、i=2;if(tan2=0&&tan3=0&&tan4=1)i=3;if(tan2=1&&tan3=1&&tan4=0)i=4;if(tan2=0&&tan3=1&&tan4=0)i=5;if(tan2=1&&tan3=0&&tan4=0)i=6;if(tan1=0)i=7;if(tan5=0)i=8;return i; /*尋線函數(shù)*/void xunxian(uchar i)if(i=0)go(40,40);if(i=1)go(20,40);if(i=2)go(40,40);if(i=3)go(30,40);if(i=4)go(40,20);if(i=5)go(40,40);if(i=6)go(40,30);if(i=7)go(10,60);if(i=8)go(60,10);void main()uchar a=0,b=0;/循環(huán)次數(shù) 與傳值變量initen();init_time0();init_zd0();LCD_init(); /5110初始化 LCD_clear(); /5110清屏beef=1;while(1)

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!