迷宮電腦鼠的設計報告_第1頁
迷宮電腦鼠的設計報告_第2頁
迷宮電腦鼠的設計報告_第3頁
迷宮電腦鼠的設計報告_第4頁
迷宮電腦鼠的設計報告_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 綜合課程設計報告題目: 迷宮電腦鼠的設計 二級學院 計算機科學與工程學院 專 業(yè) 計算機科學與技術 班 級 學生姓名 學號 指導教師 時 間 2015 01 17 II重慶理工大學綜合課程設計報告 III目 錄目 錄I摘 要II1、課程設計的目的及要求11.1 課程設計目的11.2課程設計要求12、題目分析12.1 功能分析12.2 性能需求分析12.3 算法分析13、系統(tǒng)設計23.1系統(tǒng)整體設計23.2硬件設計33.2.1 硬件結構設計33.2.2 傳感器組設計43.2.3 電機驅動電路設計73.3軟件設計83.3.1 電腦鼠正常行走程序設計83.3.2 電腦鼠找終點程序設計113.3.3

2、 程序設計124 總結274.1 所遇問題及解決辦法274.2 心得體會28摘 要“電腦鼠”是使用單片機微控制器,傳感器和機電運動部件構成的一種智能行走裝置。一只電腦鼠是具有機電知識整合的基本構架,本身就像是一個智能的機器人。要在指定的迷宮中比賽,就像是一個人置身競賽中一樣,必須要靠自己的判斷力,敏捷動作及正確探查周邊壞境。一般來說一只電腦鼠具備有以下兩個基本能力:擁有穩(wěn)定且快速的行走能力;正確判斷能力。 重慶理工大學綜合課程設計報告 1、課程設計的目的及要求1.1 課程設計目的(1)了解并熟悉電子元器件焊接技術與方法。(2)了解并熟悉電子元器件工作原理和功能特性。(3)掌握單片機對編碼電機的

3、控制與紅外發(fā)射與接收的控制。(4)熟練運用keil軟件進行單片機的C語言編程。1.2課程設計要求走有一定彎度、曲折度、路線單一的迷宮。2、題目分析2.1 功能分析(1)迷宮電腦鼠能夠在迷宮中隨意穿行。由于迷宮中有很多擋板,要使電腦鼠能夠在迷宮中隨意穿行,就要讓電腦鼠遇到擋板的時候能夠轉彎找到一條可通行的路,所以就要用到用來檢測擋板的傳感器。還要電腦鼠能夠左轉、右轉和前進,所以必須要寫出這四個功能函數(shù),不然電腦鼠就不能在迷宮中行走。2.2 性能需求分析1、迷宮電腦鼠外形合理,符合8×8迷宮場地需求。2、迷宮電腦鼠運行穩(wěn)定,能夠正常在迷宮中隨意穿行。2.3 算法分析此次迷宮電腦鼠主要用到

4、了這幾個算法:左手法則、右手法則和車頭方向、轉彎算法、修正算法。轉彎算法:當遇到障礙物向左轉90度或者右轉90度或者向后轉。修正算法:當在迷宮中走偏后能夠自動修正方向。左手法則:小車在搜過程中有兩個以上的搜索方向時,優(yōu)先選擇向左轉,其次是向前行進,最后才考慮向右轉彎。右手法則:小車在搜過程中有兩個以上的搜索方向時,優(yōu)先選擇向右轉,其次是向前行進,最后才考慮向左轉彎。車頭方向:迷宮機器鼠的車頭有絕對方向和相對方向之分。絕對方向:以小車剛開始運行的時候車頭面向的方向作為“上”,其它方向類推。相對方向:顧名思義,相對于當前小車所朝向的方向的方向。機器鼠轉彎時要修整方向為絕對方向。用數(shù)字0,1,2,3

5、分別表示上,右,下,左,修正公式為:轉彎后的絕對方向=(轉彎前的絕對方向+轉彎數(shù)值)% 4,如圖所示。絕對方向轉彎前的方向轉彎方向轉彎后的方向0(上方)向左(+3)向左(0+3)%4 = 30(上方)向右(+1)向右(0+1)%4 = 10(上方)向后(+2)向后(0+2)%4 = 21(右方)向左(+3)向上(1+3)%4 = 01(右方)向右(+1)向下(1+1)%4 = 21(右方)向后(+2)向左(1+2)%4 = 32(下方)向左(+3)向右(2+3)%4 = 12(下方)向右(+1)向左(2+1)%4 = 32(下方)向后(+2)向上(2+2)%4 = 03(左方)向左(+3)向下

6、(3+3) %4 = 23(左方)向右(+1)向上(3+1)%4 = 03(左方)向后(+2)向右(3+2) %4 = 13、系統(tǒng)設計3.1系統(tǒng)整體設計系統(tǒng)的功能函數(shù):延時函數(shù)功能:延時電機驅動函數(shù)功能:啟動和停止左右電機電機初始化函數(shù)功能:初始化電機中斷函數(shù)功能:T0、T1用來計數(shù)左右電機的脈沖數(shù);T2用來產生紅外信號系統(tǒng)初始化函數(shù)功能:初始化整個系統(tǒng)紅外傳感器函數(shù)功能:當遇到障礙物時點亮LED燈轉彎函數(shù)1功能:左轉和右轉任意角度轉彎函數(shù)2功能:左轉90度,右轉90度,向后轉前進一步函數(shù)功能:電腦鼠在迷宮前進一個方格距離主程序流程圖:3.2硬件設計3.2.1 硬件結構設計硬件電路部分主要由單

7、片機最小系統(tǒng)電路、傳感器電路、電機驅動電路構成。如圖所示,是硬件電路部分結構框圖。單片機傳感器組5傳感器組4傳感器組3傳感器組2傳感器組138KHz載波發(fā)生器3-8譯碼選擇器顯示器蜂鳴器電機1電機2驅動電路1驅動電路2操作按鍵1、微控制器微控制器是電腦鼠的核心,可以選擇單片機,若RAM需求量大或者算法復雜或者性能要求高時,需要使用ARM等高性能的微處理器。2、傳感器傳感器的作用是用來感知環(huán)境,探測電腦鼠的左、前、右是否有路可走。本設計中采用的是紅外線方式,發(fā)射和接收分別受微控制器控制。由硬件電路部分結構框圖可知,在電腦鼠的前、左、右、左前、右前方共有5組,其中左、右、前三組傳感器是用于探測電腦

8、鼠在當前迷宮格左、右、前三個方向上是否有支路的,左前、右前兩組傳感器呈45度安裝,用于電腦鼠行進過程中進行姿態(tài)矯正,防止電腦鼠走偏而撞到迷宮墻。3、顯示器顯示器是用來顯示當前位置等相關信息的,是電腦鼠的可選部分。4、電源電源用來為單片機供電,選擇哪種電池,這也將影響電路的設計。5、蜂鳴器當電腦鼠到底終點、或是返回到起點,可以用蜂鳴器來提示,是電腦鼠的可選部分。3.2.2 傳感器組設計(1)傳感器的選擇電腦鼠有5組傳感器。這5組傳感器分別安裝于電腦鼠的左、左前、前、右前、右5個不同的方向,其中左、右、前三組傳感器是用于探測電腦鼠在當前迷宮格左右前三個方向上是否有支路的,左前、右前兩組傳感器呈45

9、度安裝,用于電腦鼠行進過程中進行姿態(tài)矯正,防止走偏而撞到迷宮墻。如圖所示,是用于電腦鼠環(huán)境感知的傳感器組電路。傳感器組電路由紅外發(fā)射LED和紅外一體化接收頭HS0038構成,紅外LED由前面載波發(fā)生器產生的CLOCK信號驅動產生38KHz紅外調制光。RP1為可調電阻,通過調節(jié)RP1來調節(jié)紅外LED發(fā)光強度,從而調整傳感器組檢測迷宮墻障礙物的距離,RP1電阻越大,檢測距離越近,電阻越小,檢測距離越遠。irT1用于控制該組傳感器是否工作,連接到3-8譯碼選擇電路。紅外調制光經障礙物反射由HS0038紅外一體化接收頭接收,進行放大濾波、解調等處理后由irR1輸出,單片機通過識別irR1位的高低電平來

10、判斷傳感器前面是否有障礙物。這里只給出了一組傳感器,另外四組傳感器也與該組傳感器相同的。電腦鼠通過對這五組傳感器信息的融合,實現(xiàn)環(huán)境感知功能。(2)74HC138譯碼器74HC138譯碼器可接受3位二進制加權地址輸入(A0, A1和A2),并當使能時,提供8個互斥的低有效輸出(Y0至Y7)。74HC138特有3個使能輸入端:兩個低有效(E1和E2)和一個高有效(E3)。除非E1和E2置低且E3置高,否則74HC138將保持所有輸出為高。1、74HC138的引腳如圖所示:2、74HC138的譯碼/真值表如下表所示:譯碼/真值表應用:例如A0A1A2地址為000時,74HC138輸出Y0有效,從而

11、使第一組傳感器工作,而其他組傳感器處于沒有工作的狀態(tài)。這樣就可以實現(xiàn)單片機的3個引腳控制5個或者更多的傳感器組。如圖所示,是硬件電路部分3-8譯碼選擇器電路。(3)載波發(fā)生器傳感器組是由38KHz的紅外一體化接收頭和紅外發(fā)射管構成的障礙感測器。為了能夠讓傳感器組正常工作,紅外發(fā)射管需要一個38KHz的方波來驅動,使紅外發(fā)射管發(fā)射出調制頻率與接收頭接收頻率匹配的紅外光。如圖所示,是產生38KHz方波的載波發(fā)生器電路。(4)傳感器的調試(主要寫每組傳感器如何進行調試。)1、左右兩邊的傳感器檢測是否有墻壁。2、左前和右前45°角的兩組傳感器用于電腦鼠在行走過程中的微調。3、傳感器上標的1、

12、2、3、4、5對應led的1、2、3、4、5(里面往前數(shù))。4、傳感器的測距是通過條對應的可調電阻來實現(xiàn)的,可調電阻順時針轉動調近,逆時針調遠傳感器的測試距離。3.2.3 電機驅動電路設計如圖所示,是用來驅動電腦鼠伺服電機的驅動電路。由于單片機I/O口電流輸出能力有限,不能直接驅動電機轉動。為了能讓單片機控制電機運轉,需要使用電機驅動電路,將單片機I/O口弱電流放大到足以驅動電機的電流。1、L9110器件的管腳圖如圖所示。2、 管腳定義如下:3、通過L9110驅動芯片IA、IB輸入的邏輯值的組合,不同高低電平的輸入輸出,控制電機正轉、反轉、停轉。L9110的邏輯關系表如下表所示:L9110邏輯

13、關系IAIBOAOBHLHL正轉LHLH反轉LLLL停止HHLL停止3.3軟件設計3.3.1 電腦鼠正常行走程序設計電腦鼠正常行走包括直走、左轉彎、右轉彎和向后轉彎四個功能函數(shù)。這四個功能函數(shù)中要用到T0、T1定時/計數(shù)器;所以函數(shù)中首先初始化T0、T1。T0初始化:打開總開關EA=1;開T0中斷ET0=1;設定T0模式2,8位自動重裝值定時計數(shù)器TMOD&=0xf6; TMOD|=0x06; 設定T0計數(shù)初值,定義中斷脈沖數(shù)TH0=256-ICP;TL0=256-ICP; /啟動T0計數(shù)TR0=1;T1初始化也是一樣的。為了使左右電機的轉速盡可能相同,我們可以設定一個值,在這個值內,

14、如果T0的脈沖數(shù)Count0大于T1的脈沖數(shù)Count1,就停止左電機,轉動右電機;當Count0<Count1,停止右電機,轉動左電機。在左轉函數(shù)中,當Count0>Count1時,停止右電機,反轉左電機;當Count0<Count1時,停止左電機,正轉右電機。右轉函數(shù)中,當Count0>Count1時,停止右電機,正轉左電機;當Count0<Count1時,停止左電機,反轉右電機。向后轉函數(shù)可以通過兩次左轉來實現(xiàn)。在直走函數(shù)中,當Count0>Count1時,停止右電機,正轉左電機;當Count0<Count1時,停止左電機,正轉右電機。在直走函數(shù)

15、中還需要一個修正函數(shù),以便電腦鼠在行走中走歪了后能夠自動調整路線走正:當檢測到左前方有障礙物時,停止兩個電機,關閉T0、T1并將Count0、Count1保存到tmp0、tmp1中,利用一個循環(huán)while讓電腦鼠向右轉一小角度直到左前方沒有障礙物為止,調整方向后把tmp0、tmp1中的值還給Count0、Count1并開啟T0、T1。當檢測到右前方有障礙物時,停止兩個電機,關閉T0、T1并將Count0、Count1保存到tmp0、tmp1中,利用一個循環(huán)while讓電腦鼠向左轉一小角度直到右前方沒有障礙物為止,調整方向后把tmp0、tmp1中的值還給Count0、Count1并開啟T0、T1

16、。向前走一步函數(shù)程序框圖:右轉函數(shù)程序框圖:左轉函數(shù)程序框圖:3.3.2 電腦鼠找終點程序設計電腦鼠通過右手法則來探尋前進的路徑:當右方有路時優(yōu)先向右轉,右方沒路則檢測前方,當前方有路就向前走,前方沒路再檢測左方,左方有路則向左轉,左方沒路的話就只有向后轉了,所以四個方向的優(yōu)先級為右>前>左>后。規(guī)定電腦鼠起點車頭方向為北,順時針依次為北、東、南、西,分別用0、1、2、3代表;在左轉右轉和后轉中,每轉一次向就更新一次當前的絕對方向,然后向前行進一步并更新當前坐標,然后將當前坐標與終點坐標比較,若當前坐標為終點坐標,則蜂鳴器響一聲表示已到達終點坐標;否則繼續(xù)用右手法則探路直到到

17、達終點坐標為止。右手法則:3.3.3 程序設計1.頭文件#include <reg52.h>#define ICP 35/位定義左右電機sbit ML1=P20;sbit ML2=P21;sbit MR1=P22;sbit MR2=P23;/指示燈接口定義sbit LED1=P00;sbit LED2=P01;sbit LED3=P02;sbit LED4=P03;sbit LED5=P04;sbit LED6=P05;sbit LED7=P06;sbit LED8=P07;/紅外地址接口定義(74HC138譯碼器sbit A0=P12;sbit A1=P13;sbit A2=P1

18、4;/紅外傳感器接口定義sbit irR1=P25;/左外sbit irR2=P26;/中sbit irR3=P27;/右外sbit irR4=P36;/左sbit irR5=P37;/右/按鍵接口定義sbit key=P10;/蜂鳴器接口定義sbit SPEAK=P24;2.符號定義#include"hys.h"bit irL,irR,irZ,irZL,irZR; /依次為左、右、前、左前、右前unsigned char endX,endY,X,Y,exchangeX,exchangeY,Count0,Count1; unsigned char now_direct; /

19、絕對方向unsigned char arrived; /定義到達終點坐標時要用到的的一個符號3.延時函數(shù)代碼/在24M晶振下,延時1ms,12M倍頻void delay(unsigned char ms)unsigned char X;while(ms-)X=250;while(-X);/延時250us X=250;while(-X);/延時250usX=250;while(-X);/延時250us X=250;while(-X);/延時250us4.驅動配置代碼/*電機驅動函數(shù)*/左電機停止void STOPML()ML1=0;ML2=0;/右電機停止void STOPMR()MR1=0;M

20、R2=0;/啟動左電機void RUNML(bit i)if(i)ML1=1;ML2=0;elseML1=0;ML2=1;/啟動右電機void RUNMR(bit i)if(i)MR1=1;MR2=0;elseMR1=0;MR2=1;/*電機初始化函數(shù)*/void init_motor()ML1=0;ML2=0;MR1=0;MR2=0;5.中斷函數(shù)代碼/T2中斷周期設定函數(shù),最大30msvoid set_Timer2(unsigned int m)TH2=RCAP2H=(65535-m)/256;TL2=RCAP2L=(65535-m)%256;/設定T2自動重裝載寄存器和計數(shù)器初值void

21、init_Timer2(unsigned int m)/中斷定時獲取 傳感器返回的值EA=1;ET2=1;TH2=RCAP2H=(65535-m)/256;TL2=RCAP2L=(65535-m)%256;/設定T2自動重裝載寄存器和計數(shù)器初值/捕捉/自動重載寄存器TR2=1;/*中斷函數(shù)*/T0中斷函數(shù)/右電機void timer0() interrupt 1/外部中斷1/工作模式2.自動重裝初值Count0+;/T1中斷函數(shù)/左電機void timer1() interrupt 3 /外部中斷2/工作模式2.自動重裝初值Count1+;/T2中斷函數(shù)void Timer2() interr

22、upt 5static unsigned char intC=1,irNo=1;TF2=0;/軟件清除溢出中斷標志位/中斷服務代碼if(intC=1)switch(irNo)case 1:A0=0;A1=0;A2=0;intC=1;set_Timer2(2000);/發(fā)射2usbreak;case 2:if(irR1) /如果irR1為高電平irZL=0; /沒有障礙物 置低電平0LED1=1; /熄滅LED燈else /如果irR1低電平irZL=1; /有障礙物 置高電平1LED1=0; /點亮LED燈A0=1;A1=0;A2=0;intC=1;set_Timer2(2000);break

23、;case 3:if(irR2)irZ=0;LED2=1;else irZ=1;LED2=0;A0=0;A1=1;A2=0;intC=1;set_Timer2(2000);break;case 4:if(irR3)irZR=0;LED3=1;else irZR=1;LED3=0;A0=1;A1=1;A2=0;intC=1;set_Timer2(2000);break;case 5:if(irR4)irL=0;LED4=1;else irL=1;LED4=0;A0=0;A1=0;A2=1;intC=1;set_Timer2(2000);break;case 6:if(irR5)irR=0;LED

24、5=1;else irR=1;LED5=0;A0=1;A1=1;A2=1;intC=2;set_Timer2(20000);break;if(irNo<6)irNo+;else irNo=1;elseintC-;6.系統(tǒng)初始化函數(shù)代碼/*/系統(tǒng)初始化函數(shù)void init_system()/起點坐標初始化X=0;Y=0;/設置終點坐標endX=7;endY=7;/小車的當前方向初始化now_direct=0;/變量初始化Count0=0;Count1=0;init_motor();/初始化T2,自動傳感器采樣init_Timer2(2000);arrived=0;key=0;7.紅外傳感

25、器void ir_Test()if(irZL)LED1=0;elseLED1=1;if(irL)LED4=0;elseLED4=1;if(irZ)LED2=0;elseLED2=1;if(irZR)LED3=0;elseLED3=1;if(irR)LED5=0;elseLED5=1;/delay(100);8.轉彎函數(shù)/*向左轉函數(shù)(轉的角度通過參數(shù)控制)*/void left(unsigned char m)/T0初始化EA=1;/打開總開關ET0=1;/開T0中斷TMOD&=0xf6;TMOD|=0x06;/設定T0模式2,8位自動重裝值定時計數(shù)器TH0=256-ICP;TL0=2

26、56-ICP;/設定T0計數(shù)初值,定義中斷脈沖數(shù)TR0=1;/啟動T0計數(shù)/T1初始化EA=1;/打開總開關ET1=1;/開T1中斷TMOD&=0x6f;TMOD|=0x60;/設定T1模式2,8位自動重裝值定時計數(shù)器TH1=256-ICP;TL1=256-ICP;/設定T1計數(shù)初值,定義中斷脈沖數(shù)TR1=1;/啟動T1計數(shù)Count0=0;Count1=0;while(Count0<m)|(Count1<m)if(Count0<Count1)STOPML();/左輪停止RUNMR(1);/右輪正轉else STOPMR();/右輪停止RUNML(0);/左輪反轉ST

27、OPML();STOPMR();/*向右轉函數(shù)(轉的角度通過參數(shù)控制)*/void right(unsigned char m)/T0初始化EA=1;/打開總開關ET0=1;/開T0中斷TMOD&=0xf6;TMOD|=0x06;/設定T0模式2,8位自動重裝值定時計數(shù)器TH0=256-ICP;TL0=256-ICP;/設定T0計數(shù)初值,定義中斷脈沖數(shù)TR0=1;/啟動T0計數(shù)/T1初始化EA=1;/打開總開關ET1=1;/開T1中斷TMOD&=0x6f;TMOD|=0x60;/設定T1模式2,8位自動重裝值定時計數(shù)器TH1=256-ICP;TL1=256-ICP;/設定T1計

28、數(shù)初值,定義中斷脈沖數(shù)TR1=1;/啟動T1計數(shù)Count0=0;Count1=0;while(Count0<m)|(Count1<m)if(Count0<Count1) STOPML();/左輪停止RUNMR(0);/右輪反轉else STOPMR();/右輪停止RUNML(1);/左輪正轉STOPML();STOPMR();/*向左轉、右轉、轉身*/void turnleft()/左轉90度并更新當前絕對方向left(35);now_direct=(now_direct+3)%4;/修正當前方向為絕對方向void turnright()/右轉90度并更新當前絕對方向 ri

29、ght(35);now_direct=(now_direct+1)%4;/修正當前方向為絕對方向void turnback()/向后轉更并新當前絕對方向left(72);now_direct=(now_direct+2)%4; /修正當前方向為絕對方向9.前進一步函數(shù)/*走一步函數(shù)(每走一步就判斷是否到達終點)*/void Go_one_step()unsigned char tmp0,tmp1;/T0初始化EA=1;/打開總開關ET0=1;/開T0中斷TMOD&=0xf6;TMOD|=0x06;/設定T0模式2,8位自動重裝值定時計數(shù)器TH0=256-ICP;TL0=256-ICP;

30、/設定T0計數(shù)初值,定義中斷脈沖數(shù)TR0=1;/啟動T0計數(shù)/T1初始化EA=1;/打開總開關ET1=1;/開T1中斷TMOD&=0x6f;TMOD|=0x60;/設定T1模式2,8位自動重裝值定時計數(shù)器TH1=256-ICP;TL1=256-ICP;/設定T1計數(shù)初值,定義中斷脈沖數(shù)TR1=1;/啟動T1計數(shù)Count0=0;Count1=0;while(Count0<86)|(Count1<86)/修正函數(shù)if(irZ)break;if(irZL) /如果向左偏STOPML();STOPMR();TR0=0; /關閉T0計數(shù)TR1=0; /關閉T1計數(shù)tmp0=Coun

31、t0;/將Count0中的值暫存在tmp0中tmp1=Count1;/將Count1中的值暫存在tmp1中while(irZL) /矯正right(1);Count0=tmp0; /將tmp0中的值還給Count0Count1=tmp1; /將tmp1中的值還給Count1TR0=1; /啟動T0計數(shù)TR1=1; /啟動T1計數(shù)if(irZR)/如果向右偏STOPML();STOPMR();TR0=0;/關閉T0計數(shù)TR1=0; /關閉T1計數(shù)tmp0=Count0;/將Count0中的值暫存在tmp0中tmp1=Count1;/將Count1中的值暫存在tmp1中while(irZR) /矯

32、正left(1);Count0=tmp0;/將tmp0中的值還給Count0Count1=tmp1;/將tmp1中的值還給Count1TR0=1;/啟動T0計數(shù)TR1=1;/啟動T1計數(shù)/前進if(Count0>Count1)STOPMR();/右輪停止RUNML(1);/正轉左輪elseSTOPML();/左輪停止RUNMR(1);/正轉右輪xy_repair(); /更新當前坐標arrive(); /判斷是否到達指定坐標 init_motor();/初始化電機10.右手法則/*右手法則*/void righthand()switch(now_direct)case 0: / 當前方向

33、向北if(!irR) /如果右邊沒有障礙turnright(); /先向右轉并更新絕對方向Go_one_step();/再前進一步并且更新坐標并判斷是否到達指定坐標break;if(!irZ) /如果前方沒有障礙Go_one_step();/向前走一步并且更新坐標并判斷是否到達指定坐標break;if(!irL) /如果左方沒有障礙物turnleft(); /先左轉并更新絕對方向Go_one_step(); /再前進一步并且更新坐標并判斷是否到達指定坐標break;else /如果左、右、前方都有障礙物turnback();/先向后轉并更新絕對方向Go_one_step();/再前進一步并且更

34、新坐標并判斷是否到達指定坐標break;case 1:/當前方向向東if(!irR)turnright();Go_one_step();break;if(!irZ)Go_one_step();break;if(!irL)turnleft();Go_one_step();break;elseturnback();Go_one_step();break;case 2:/當前方向向南if(!irR)turnright();Go_one_step();break;if(!irZ)Go_one_step();break;if(!irL)turnleft();Go_one_step();break;elseturnback();Go_one_step();break;case 3: /當前方向向西if(!

溫馨提示

  • 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

提交評論