版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 數(shù)理與信息工程學(xué)院</b></p><p> 《單片機原理及應(yīng)用》期末課程設(shè)計</p><p> 題 目: 基于單片機的自動避障小車 </p><p> 專 業(yè): 電子信息工程 </p><p><b> 目錄
2、</b></p><p> 引言。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3</p><p> 1.1研究背景。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3</p><p> 1.2本設(shè)計任務(wù)和主要內(nèi)容。。。。。。。。
3、。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 3</p><p> 第2節(jié) 系統(tǒng)主要硬件電路設(shè)計。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4</p><p> 2.1系統(tǒng)原理組成框圖。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4</p><p> 2.2 系
4、統(tǒng)主控模塊電路。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4</p><p> 2.2.1 STC89C52單片機性能優(yōu)點。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4</p><p> 2.2.2 主控模塊電路。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5</p>&l
5、t;p> 2.3 車體框架。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5</p><p> 2.4 電源及穩(wěn)壓模塊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。6</p><p> 2.5 邏輯模塊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
6、。。。。。。。。。。。。。。7</p><p> 2.6 感測模塊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。7</p><p> 2.7 連接模塊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8</p><p> 2.8 電機驅(qū)動模塊。。。。
7、。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。9</p><p> 2.9 顯示模塊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10</p><p> 第3節(jié) 系統(tǒng)軟件設(shè)計。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。11</p&g
8、t;<p> 3.1程序設(shè)計流程圖。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。11</p><p> 3.2系統(tǒng)主程序設(shè)計。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。12</p><p> 3.3 PWM信號控制小車走向流程圖。。。。。。。。。。。。。。。。。。。。。。。。。。。
9、。。。。。。13</p><p> 3.4 PWM信號控制電機流程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。13</p><p> 3.5液晶初始化及顯示子程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15</p><p> 第4節(jié) 結(jié)束語。。。。。。。。。。。。。。。。。。。。。。。。。。。。
10、。。。。。。。。。。。。。。。。。。。。。。。。。。18</p><p> 參考文獻(xiàn)。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。19</p><p> 基于單片機的自動避障小車</p><p><b> 第1節(jié) 引言</b></p><p>
11、; 本課程設(shè)計是以功耗低、抗干擾能力強的STC89C52單片機為核心,外加路面障礙物感測模塊――光電開關(guān)組完成對路面情況的實時監(jiān)測,并把所采集的信息傳輸給單片機,單片機根據(jù)路面情況做出恰當(dāng)?shù)奶幚?,進(jìn)而控制小車的走向。</p><p><b> 研究背景</b></p><p> 在科學(xué)探索及緊急搶險中經(jīng)常要對一些危險或人類不能直接到達(dá)的地域進(jìn)行探測,這就需要用機
12、器人來完成。而機器人在復(fù)雜地形行進(jìn)時自動避障是一項必不可少也是最基本的功能。因此,自動避障系統(tǒng)的研發(fā)就應(yīng)運而生。自動避障小車就是基于這一系統(tǒng)開發(fā)而成的。隨著科技的發(fā)展,對于未知空間和人類所不能直接到達(dá)的地域的探索逐步成為熱門,這就使機器人自動避障功能的研發(fā)有了重大意義。自動避障小車就是自動避障機器人中的一類。自動避障小車可以作為地域探索機器人和緊急搶險機器人的運動系統(tǒng),讓機器人在行進(jìn)中自動避過障礙物。</p><p&
13、gt; 1.2 本設(shè)計任務(wù)和主要內(nèi)容</p><p> 本設(shè)計是對以單片機STC89C52為核心的系統(tǒng)根據(jù)感測模塊傳輸?shù)那胺铰访嫘畔⒖刂菩≤囆旭傋呦虻能?、硬件設(shè)計開發(fā)。系統(tǒng)要能夠做到準(zhǔn)確及時監(jiān)測前方路面信息并傳輸給主控模塊,做到根據(jù)前方路面信息及時調(diào)整小車的走向,做到顯示小車的走向和小車已經(jīng)行駛過的路程。</p><p><b> 主要內(nèi)容是:</b></
14、p><p> ?、?感測模塊實時監(jiān)測路面情況并及時傳輸給單片機;</p><p> ?、?單片機核心模塊根據(jù)感測模塊給予的信息控制小車兩電機轉(zhuǎn)動;</p><p> ?、?電機驅(qū)動模塊驅(qū)動兩電機轉(zhuǎn)動,實現(xiàn)轉(zhuǎn)向與行走;</p><p> ?、?液晶顯示模塊顯示走向和已行駛過的路程。</p><p> 第2節(jié) 系統(tǒng)主
15、要硬件電路設(shè)計</p><p> 2.1系統(tǒng)原理組成框圖</p><p> 圖2-1 系統(tǒng)原理組成框圖</p><p> 2.2 系統(tǒng)主控模塊電路</p><p> 2.2.1 STC89C52單片機性能優(yōu)點:</p><p> 課堂上我們學(xué)習(xí)的是8051單片機,但實際應(yīng)用中現(xiàn)在我們是不會再用8051單片
16、機了。學(xué)習(xí)8051單片機是學(xué)習(xí)一種方法,學(xué)習(xí)單片機的基本結(jié)構(gòu),指令。現(xiàn)在單片機種類繁多,各有各的優(yōu)點,結(jié)合具體情況恰當(dāng)選擇單片機型號也是非常重要的,在此系統(tǒng)中采用STC89C52為主控模塊芯片,選此芯片的理由是:</p><p> 與MCS-51單片機完全兼容:指令兼容,引腳兼容;</p><p> 高保密性:無法讀出,因此無法解密;</p><p> 超強抗
17、干擾能力:電源、I/O接口、時鐘均有抗干擾措施;</p><p><b> 高可靠性:</b></p><p> 寬電壓范圍,不怕電源波動5V產(chǎn)品3.4V~6V,;</p><p> 寬溫度范圍:-40。C~85。C;</p><p><b> 低電磁輻射:</b></p>&
18、lt;p> 可禁止ALE輸出,降低輻射;</p><p> 可選6時鐘/機器周期,降低晶振頻率,降低輻射;</p><p> 單片機時鐘振蕩器增益可設(shè)為1/2;</p><p><b> 超低功耗:</b></p><p> 掉電模式典型功耗:≦1uA,可由外中斷喚醒;</p><p&
19、gt; 空閑模式典型功耗:2mA;</p><p> 正常工作典型功耗;4 mA~7 mA;</p><p> 可在線編程,節(jié)約投資;</p><p> 強驅(qū)動能力,無論灌電流還是拉電流,均優(yōu)于MCS-51單片機;</p><p> 高速度,最高晶振達(dá)到90MHZ;</p><p> 內(nèi)部資源更豐富,與MC
20、S-51單片機相比增加了:</p><p><b> T2定時/計數(shù)器;</b></p><p> 內(nèi)部數(shù)據(jù)存儲器RAM增加了1~8倍;</p><p> 自帶A/D和PWM;</p><p><b> 有P4口;</b></p><p> 2.2.2 主控模塊電路
21、:</p><p> 圖2-2 系統(tǒng)核心STC89C52連接電路圖</p><p><b> 2.3 車體框架</b></p><p> 方案1:自己設(shè)計制作車架 </p><p> 自己制作小車底盤,用兩個直流電機作為主動輪,利用兩電機的轉(zhuǎn)速差完成前進(jìn)、左轉(zhuǎn)、右轉(zhuǎn)、后退等動作。直流電機扭矩大,轉(zhuǎn)速較慢,易于控
22、制和調(diào)速,符合避障小車的要求。而且自己制作小車框架,可以根據(jù)電路板及傳感器安裝需求靈活設(shè)計。但自己制作小車制作周期較長,且費用較高,有可能自己做的不太美觀,因而放棄了這一方案。</p><p> 方案2:購買玩具電動車 </p><p> 玩具電動車價格低廉,有完整的驅(qū)動、傳動和控制單元,其中傳動裝置是所需的,縮短了開發(fā)設(shè)計周期。玩具動車有兩個直流電機,再加上自己設(shè)計的驅(qū)動模塊就可以由
23、單片機來控制了,而且買來的玩具電動車一般比較牢固,比較美觀。所以采用了此方案。</p><p><b> 電源及穩(wěn)壓模塊</b></p><p> 方案1:采用交流電經(jīng)直流穩(wěn)壓處理后供電</p><p> 采用交流電提供直流穩(wěn)壓電源,電流驅(qū)動能力及電壓穩(wěn)定性最好,且負(fù)載對電源影響也最小。但由于需要電線對小車供電,極大影響了避障小車行動的靈
24、活性及地形的適應(yīng)能力。而且避障小車極易把拖在地上的電線識別為障礙物,人為增加了不必要的障礙。故放棄了這一方案。</p><p> 方案2:采用干電池組進(jìn)行供電</p><p> 采用四節(jié)干電池降壓至5V后給單片機及其他邏輯單元供電,另取六節(jié)干電池為電機及光電開關(guān)供電。這樣電機啟動及制動時的短暫電壓干擾不會影響到邏輯單元和單片機的工作。但由于電機驅(qū)動需要比較大的電流,所以采用干電池供電使
25、用的周期不能很長,實用性不太好。故放棄了這一方案。</p><p> 方案3:采用可充電蓄電池供電</p><p> 采用可充電蓄電池給驅(qū)動和感測模塊供電,其它采用蓄電池經(jīng)LM2575穩(wěn)壓后供電。雖然蓄電池的重量比較大,但是蓄電池能夠供電的時間長而穩(wěn)定,況且買來的小車負(fù)重能力好,所以采用此方案完全可行。故采用了此方案。</p><p> 其原理圖如下圖所示:&
26、lt;/p><p> 圖2-3 供電電源及穩(wěn)壓模塊:LM2575電路圖</p><p><b> 2.5 邏輯模塊</b></p><p> 在感測模塊和單片機中斷接口之間,需要經(jīng)過電平的邏輯處理,信息才能被單片機所感知。主要是一塊三輸入或非門,所以我們采用現(xiàn)成的74ls27芯片實現(xiàn)邏輯功能。</p><p>
27、圖2-4 信號邏輯模塊:74LS27電路圖</p><p><b> 2.6 感測模塊:</b></p><p> 方案1:使用超聲波探測器</p><p> 超聲波探測器探測距離遠(yuǎn),測距方便。但由于聲波衍射現(xiàn)象較嚴(yán)重,且波包散面太大,易造成障礙物的錯誤判斷。同時,超聲波探測具有幾厘米甚至幾十厘米的盲區(qū),這對于我們的避障小車是個致命的限
28、制。故放棄了這一方案。 </p><p> 方案2:使用光電對管探測 </p><p> 光電對管價格低廉,性能穩(wěn)定,但探測距離太近(一般不超過3cm),使得小車必須制動迅速。而我們由于采用普通直流電機作為原動力,制動距離至少需要10cm。因此不采取這一方案。 </p><p> 方案3:使用視頻采集處理裝置進(jìn)行探測 </p><p>
29、 使用CCD實時采集小車前進(jìn)路線上的圖像并進(jìn)行實時傳輸及處理,這是最精確的障礙物信息采集方案,可以對障礙物進(jìn)行精確定位和測距。但是使用視頻采集會大大增加小車成本和設(shè)計開發(fā)難度,而且考慮到我們小車行進(jìn)轉(zhuǎn)彎的精確度并未達(dá)到視頻處理的精度,因而使用視頻采集在實際應(yīng)用中是個很大的浪費,所以放棄了這一方案。</p><p> 方案4:使用光電開關(guān)進(jìn)行障礙物信息采集 </p><p> 使用三只
30、E3F-DS30C4光電開關(guān),分別探測正前方,前右側(cè),前左側(cè)障礙物信息,在特殊地形(如障礙物密集地形)可將正前方的光電開關(guān)移置后方進(jìn)行探測。E3F-DS30C4光電開關(guān)平均有效探測距離0~30cm可調(diào),且抗外界背景光干擾能力強,可在日光下正常工作(理論上應(yīng)避免日光和強光源的直接照射)。小車換檔調(diào)速后的最大制動距離不超過30cm,一般在10~20cm左右,因而探測距離滿足小車需求。故采用此方案。</p><p>
31、 光電開關(guān)排列如圖所示:</p><p> 圖2-5 光電開關(guān)示意圖</p><p><b> 連接模塊</b></p><p> m價錢也不高,市場上也容易買到。</p><p> 其原理圖如下圖所示:</p><p> 圖2-6 連接模塊:TLP521-4電路圖</p&g
32、t;<p><b> 電機驅(qū)動模塊</b></p><p> 此模塊的主要作用的驅(qū)動直流電機,讓直流電機有足夠的動力。</p><p> 方案1:使用分立原件搭建電機驅(qū)動電路 </p><p> 使用分立原件搭建電機驅(qū)動電路造價低廉,在大規(guī)模生產(chǎn)中使用廣泛。但分立原件H橋電路工作性能不夠穩(wěn)定,較易出現(xiàn)硬件上的故障,故放棄了
33、這一方案。 方案2:使用L298N芯片驅(qū)動電機 L298N是一個具有高電壓大電流的全橋驅(qū)動芯片,輸出電壓最高可達(dá)50V,可以直接通過電源來調(diào)節(jié)輸出電壓;可以直接用單片機的IO口提供信號,而且?guī)в惺鼓芏?,方便PWM調(diào)速,電路簡單,性能穩(wěn)定,使用比較方便。L298N芯片可以驅(qū)動兩個二相電機,也可以驅(qū)動一個四相電機,正好符合小車兩個直流電機的驅(qū)動要求。</p><p><b> 其原理圖如下所
34、示:</b></p><p> 圖2-7 驅(qū)動模塊:L298電路圖</p><p><b> 顯示模塊:</b></p><p> 方案1:采用數(shù)碼管顯示</p><p> 數(shù)碼管完全可用來顯示已行駛過的路程,且數(shù)碼管亮度大,夜間觀測也比較方便,所以數(shù)碼管在一般場合是首選,但是數(shù)碼管只能顯示數(shù)字,發(fā)
35、揮的空間比較窄。所以不采用此方案。</p><p> 方案2:采用液晶顯示</p><p> 用128×64的液晶屏作為顯示器件,可以顯示小車行駛的方向,小車行駛過的路程,小車行駛過的時間等等,最重要的是液晶能夠顯示漢字,提供的信息非常直觀,故采用此方案。</p><p><b> 其原路圖如下所示:</b></p>
36、<p> 圖2-8 顯示模塊:128×64電路圖</p><p><b> 系統(tǒng)軟件設(shè)計</b></p><p><b> 程序設(shè)計流程圖</b></p><p> 本系統(tǒng)設(shè)計流程圖如下所示:</p><p> 圖3-1 系統(tǒng)軟件主流程圖</p>
37、<p> 3.2系統(tǒng)主程序設(shè)計:</p><p> ORG 0000H</p><p> LJMP MAIN</p><p> ORG 0003H</p><p> LJMP INTT0 ;外部中斷0入口</p><p> ORG 000BH ;
38、定時器/計時器0中斷入口</p><p> LJMP TIME0</p><p> ORG 0050H</p><p> MAIN: MOV SP,#6FH ;主程序</p><p> SETB EA ;開總中斷</p><p> SETB EX0
39、 ;開外部中斷0</p><p> SETB IT0 ;設(shè)置外部0為邊沿觸發(fā)</p><p> SJMP $ ;等待外部中斷</p><p> INTT0: MOV A,#00H ;累計器清零</p><p> MOV C,P2.0
40、 ;光電管1傳來的信號</p><p> MOV ACC.0,C ;光電管1值送累加器0位</p><p> MOV C,P2.1 ;光電管2傳來的信號</p><p> MOV ACC.1.C ;光電管2值送累加器1位</p><p> MOV C,P2.2
41、 ;光電管3傳來的信號</p><p> MOV ACC.2,C ;光電管3值送累加器2位</p><p> CJNE A,#00H,LOOP1 ;是000,左前中都有障礙物,轉(zhuǎn)LOOP1</p><p> CJNE A,#01H,LOOP2 ;是001,左前有障礙物,右方無障礙物,轉(zhuǎn)LOOP2</p><p
42、> CJNE A,#02H,LOOP3 ;是010,左右有障礙物,前方無障礙物,轉(zhuǎn)LOOP3</p><p> CJNE A,#03H,LOOP4 ;是011,左方有障礙物,前右無障礙物,轉(zhuǎn)LOOP4</p><p> CJNE A,#04H,LOOP5 ;是100,左方無障礙物,前右有障礙物,轉(zhuǎn)LOOP5</p><p> CJNE
43、 A,#05H,LOOP6 ;是101,左右無障礙物,前方有障礙物,轉(zhuǎn)LOOP6</p><p> CJNE A,#06H,LOOP7 ;是110,左中無障礙物,右方有障礙物,轉(zhuǎn)LOOP7</p><p> LO0P1:…………………</p><p> LOOP2:…………………</p><p> LOOP3:………………
44、…</p><p> LOOP4:…………………</p><p> LOOP5:…………………</p><p> LOOP6:…………………</p><p> LOOP7:………………</p><p><b> RETI</b></p><p> PWM信號控制
45、小車走向流程圖</p><p> 圖3-2 PWM信號控制電機流程圖</p><p> 3.3 PWM信號控制電機流程序</p><p> PWMH1 DATA 30H ;直流電機1高電平脈沖的個數(shù)</p><p> PWMH2 DATA 31H ;直流電機2高電平脈沖的個數(shù)</p>
46、<p> ZHENG1 BIT 20H.0 ;直流電機1正轉(zhuǎn)標(biāo)志 0正轉(zhuǎn),1反轉(zhuǎn)</p><p> ZHENG2 BIT 20H.1 ;直流電機2正轉(zhuǎn)標(biāo)志 0正轉(zhuǎn),1反轉(zhuǎn)</p><p> PWM DATA 34H ;PWM周期</p><p> COUNTER1 DATA 35H ;直
47、流電機1計數(shù)COUNTER1</p><p> COUNTER2 DATA 36H ;直流電機2計數(shù)COUNTER2</p><p> 0RG 2000H</p><p> PWM: MOV SP,#60H ;設(shè)置堆棧,首地址為#60H</p><p> MOV PWMH1,#08H
48、 ;電機1高電平脈沖賦初值</p><p> MOV PWMH2,#08H ;電機2高電平脈沖賦初值 ,與電機1相同 </p><p> MOV COUNTER1,#01H ;COUNTER1賦初值1</p><p> MOV COUNTER2,#01H ;COUNTER2賦初值1</p><
49、;p> MOV ZHENG1,#00H ;電機1正轉(zhuǎn)標(biāo)志位置0</p><p> MOV ZHENG2,#00H ;電機2正轉(zhuǎn)標(biāo)志位置0</p><p> MOV PWM,#15H ;PWM周期賦初值15H</p><p> MOV P1,#00H ;P0口都為低電平,方便電
50、機控制</p><p> MOV TMOD,#02H ;定時器0在模式2下工作</p><p> MOV TL0,#38H ;定時器200us產(chǎn)生一次溢出</p><p> MOV TH0,#38H ;自動重裝的值</p><p> SETB ET0
51、 ;使能定時0中斷</p><p> SETB EA ;使能總中斷</p><p> SETB TR0 ;開始計時</p><p><b> TIME0:</b></p><p> PUSH PSW ;現(xiàn)場保護&l
52、t;/p><p><b> PUSH ACC</b></p><p> INC COUNTER1 ;COUNTER1加1</p><p> INC COUNTER2 ;COUNTER2加1</p><p> MOV A,COUNTER1</p><
53、p> CJNE A,PWMH,TIME011 ;如果等于高電平脈沖數(shù)</p><p> MOV CY,ZHENG1 ;判斷是否要反轉(zhuǎn)</p><p> JZ CY,Z1 ;是否反轉(zhuǎn)</p><p> CLR P1.1 ;電機1一端變?yōu)榈碗娖?反轉(zhuǎn)引腳</p&g
54、t;<p> Z1: CLR P1.0 ;電機1一端變?yōu)榈碗娖?,正傳引腳</p><p><b> TIME011:</b></p><p> CJNE A,PWM,TIME02 ;如果等于周期數(shù)</p><p> MOV COUNTER1,#01H ;計數(shù)器1復(fù)位&l
55、t;/p><p> MOV CY,ZHENG1 ;判斷是否要反轉(zhuǎn)</p><p> JZ CY,Z11 ;是否反轉(zhuǎn)</p><p> SETB P1.1 ;置P1.0為高電平,反轉(zhuǎn)引腳</p><p> Z11: SETB P1.0 ;
56、置P1.0為高電平, 正傳引腳</p><p> MOV A,COUNTER2 </p><p> CJNE A,PWMH,TIME021 ;如果等于高電平脈沖數(shù)</p><p> MOV CY,ZHENG2 ;判斷是否要反轉(zhuǎn)</p><p> JZ CY,Z2
57、;是否反轉(zhuǎn)</p><p> CLR P1.3 ;電機2一端變?yōu)榈碗娖?反轉(zhuǎn)引腳</p><p> Z2: CLR P1.2 ;電機2一端變?yōu)榈碗娖?,正傳引腳</p><p><b> TIME012:</b></p><p> CJNE A,PWM,
58、TIME02 ;如果等于周期數(shù)</p><p> MOV COUNTER2,#01H ;計數(shù)器1復(fù)位</p><p> MOV CY,ZHENG2 ;判斷是否要反轉(zhuǎn)</p><p> JZ CY,Z21 ;是否反轉(zhuǎn)</p><p> SETB P1.3
59、 ;置P1.3為高電平,反轉(zhuǎn)引腳</p><p> Z21: SETB P1.2 ;置P1.2為高電平,正轉(zhuǎn)引腳</p><p> TIME02: ;出堆棧</p><p><b> POP ACC</b></p><p>
60、<b> POP PSW</b></p><p><b> RETI</b></p><p> 3.3 液晶128×64初始化及各顯示子程序:</p><p> RET BIT P2.7 ;液晶與單片機連接腳</p><p> PSB BIT P2.6
61、 </p><p> EN BIT P2.5</p><p> RW BIT P2.3</p><p> RS BIT P2.4</p><p> COM BIT 30H ;命令/數(shù)據(jù)</p><p> 128*64: CLR RET ;液晶初
62、始化</p><p> LCALL DELAY10MS</p><p><b> SETB RET</b></p><p><b> SETB PSB</b></p><p><b> CLR EN</b></p><p> MOV
63、 COM,#30H ;液晶功能設(shè)定</p><p> LCALL W_COM</p><p> MOV COM,#0CH ;液晶顯示狀態(tài)</p><p> LCALL W_COM </p><p> MOV COM,#01H ;液晶清楚顯示</p><p>
64、; LCALL W_COM </p><p> MOV COM,#06H ;液晶地址歸位</p><p> LCALL W_COM</p><p> CHECKBUSY: ;液晶查忙</p><p> MOV P0,#FF H</p><p><
65、;b> CLR RS</b></p><p><b> SETB RW</b></p><p><b> SETB EN</b></p><p> MOV A,#FFH</p><p> ANL A,P0</p><p><b
66、> CPL A</b></p><p> JZ CHECKBUSY</p><p><b> CLR EN</b></p><p><b> RET</b></p><p> W_COM: LCALL CHECKBUSY ;液晶寫指令</
67、p><p><b> CLR RS</b></p><p><b> CLR RW</b></p><p><b> SETB EN</b></p><p> MOV P0,COM</p><p> LCALL DELAY10MS&l
68、t;/p><p><b> CLR EN</b></p><p><b> RET</b></p><p> W_DATA: LCALL CHECKBUSY ;液晶寫數(shù)據(jù)</p><p><b> SETB RS</b></p><p&
69、gt;<b> CLR RW</b></p><p><b> SETB EN</b></p><p> MOV P0,COM</p><p> LCALL DELAY10MS</p><p><b> CLR EN</b></p><
70、;p><b> RET</b></p><p> DELAY10MS: ;延時10MS</p><p> MOV R6,#20</p><p> D1: MOV R7,#250</p><p> DJNZ R7,$</p><p>
71、 DJNZ R6,D1</p><p><b> RET</b></p><p><b> 第4節(jié) 結(jié)束語</b></p><p> 以上就是我這次期末課程設(shè)計全部內(nèi)容。本系統(tǒng)是以STC89C52為核心,外加各個模塊,最終達(dá)到讓小車遇障礙物靈活避障的目標(biāo)。本系統(tǒng)硬件電路比較簡單,主要是通過軟件來實現(xiàn)各個功能,這
72、樣就可以讓小車負(fù)載輕,小車行動就變得更靈活了。硬件電路感測模塊的光電開關(guān)組價格昂貴是本系統(tǒng)的一不足之處,但是其他擁有此功能的傳感器精度不高,所以為了設(shè)計好這個系統(tǒng)還是選了光電開關(guān)組。</p><p> 此小車我認(rèn)為要改進(jìn)的是,小車走向時能有語音播放,這樣就能更直觀的知道小車接下來的走向了。</p><p> 通過這次期末課程設(shè)計,我對單片機有了更深層次的了解 ,課本上我們學(xué)習(xí)的是805
73、1單片機,但是這次課程設(shè)計我選的是現(xiàn)在工業(yè)用的單片機STC89C52單片機,此單片機操作與8051絕大部分是一樣的,所以知道了8051就可以對STC89C52進(jìn)行編程操作。學(xué)習(xí)8051是學(xué)習(xí)一種方法,要能夠舉一反三?,F(xiàn)在單片機種類繁多,根據(jù)具體情況選擇合適的單片機是非常重要的。</p><p> 在這次期末課程設(shè)計中,我遇到了很多問題。最害怕的也是最基本的是寫匯編程序,由于以前學(xué)習(xí)單片機時寫的都是C語言,所以一
74、段時間總覺得匯編語言過時了,不如C語言靈活,但是經(jīng)過這次期末課程設(shè)計覺得有些C語言跟匯編是沒法比的,對匯編語言也更熟悉了。上課時學(xué)匯編指令,只是記下來而已,沒有真正的寫過,因此經(jīng)過這次期末課程設(shè)計,讓我知道了,學(xué)習(xí)一門語言光記是沒有用的,而且很容易忘記,最好的方法是在實際中多寫,多改,不要怕寫不好,走出了第一步,接下里的就容易了。</p><p><b> 參考文獻(xiàn):</b></p&
75、gt;<p> [1] 何立民 單片機高級教程—應(yīng)用于設(shè)計 北京航空航天大學(xué)出版社 2000.8</p><p> [2] 張鑫 單片機原理及應(yīng)用 電子工業(yè)出版社 2008.5</p><p> [3] 郁有文 傳感器原理及工程應(yīng)用 西安電子科技大學(xué)出版社 2007.2</p>&
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計——超聲波避障小車
- 單片機課程設(shè)計--超聲波避障小車
- 基于單片機的自動避障小車設(shè)計與實現(xiàn)
- 避障小車設(shè)計書 哈工大 單片機課程設(shè)計
- 基于單片機的自動避障小車設(shè)計及實現(xiàn)報告
- 基于51單片機的自動巡線避障小車
- 基于單片機的智能循跡避障小車設(shè)計
- 單片機課程設(shè)計說明書——紅外線避障小車
- 基于51單片機的小車避障電路實現(xiàn)
- 基于單片機的智能避障小車設(shè)計【畢業(yè)論文】
- 基于51單片機的超聲波避障小車設(shè)計
- 基于51單片機的自動巡線避障小車畢業(yè)論文
- 避障小車課程設(shè)計
- 基于51單片機的超聲波避障小車設(shè)計
- 單片機課程設(shè)計-自動循跡小車
- 單片機原理及接口技術(shù)課程設(shè)計---智能避障避險小車
- 智能小車論文單片機循跡測速避障顯示
- 紅外避障小車課程設(shè)計報告
- 基于51單片機的超聲波智能避障小車論文
- 紅外避障小車課程設(shè)計報告
評論
0/150
提交評論