畢業(yè)設計---基于單片機的自動尋跡小車_第1頁
已閱讀1頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  自動尋跡小車</b></p><p><b>  摘要</b></p><p>  AT89S52單片機是一款八位單片機,他的易用性和多功能性受到了廣大使用者的好評。這里介紹的是如何用AT89S52單片機來實現(xiàn)電動小車的自動尋跡。本系統(tǒng)以設計題目的要求為目的,采用AT89S52單片機為控制核心,利用電動小車前面的紅外

2、線傳感器檢測道路上的軌跡,將路面信息轉送給AT89S52,AT89S52根據(jù)信息作出反應控制電動機轉動,從而控制電動小汽車按照路上的軌跡行駛。整個系統(tǒng)的電路結構簡單,可靠性能高。實驗測試結果滿足要求,本文著重介紹了該系統(tǒng)的硬件設計方法及測試結果分析。</p><p>  本小車采用的技術主要有傳感器的有效應用和AT89S52芯片的使用。有很多功能可以繼續(xù)擴展,值得就一步學習和研究。</p><

3、p>  關鍵詞: AT89S52 紅外線傳感器 直流電機 </p><p><b>  Abstract</b></p><p>  AT89S52 SCM is a section 8 microcontroller, his usability and multi-functional received overwhelming support fr

4、om user's praise. Here introduces AT89S52 SCM is how to use electric car to realize the automatic tracing. This system to design the topic request, the purpose for AT89S52 SCM as control core, using electric car in f

5、ront of the infrared sensor detects the trajectory path, pavement message to someone AT89S52 devices, react AT89S52 according to the information which can control the rotati</p><p>  This car the technique t

6、o be used mainly sensor effective application and the use of AT89S52 chip. There are many function can continue to expand, worth just step for study and research.</p><p>  Keywords: AT89S52, light electricit

7、y detector,direct-current motor</p><p><b>  目錄</b></p><p><b>  摘要I</b></p><p>  AbstractII</p><p><b>  目錄III</b></p><p

8、><b>  前言1</b></p><p>  1 方案設計與論證2</p><p>  1.1電動小車模塊2</p><p>  1.1.1轉向和動力2</p><p>  1.1.2 電動機模塊3</p><p>  1.1.3調(diào)速系統(tǒng)3</p><p&

9、gt;  1.1.4 電機驅(qū)動模塊4</p><p>  1.2 控制模塊5</p><p>  1.3 傳感器模塊5</p><p>  1.4 電源模塊6</p><p><b>  2 硬件設計7</b></p><p>  2.1 主要元器件的介紹7</p>&l

10、t;p>  2.1.1 電機驅(qū)動芯片L91107</p><p>  2.1.2 AT89S529</p><p>  2.1.3 紅外線傳感器17</p><p>  2.2 模塊介紹18</p><p>  2.2.1車頭傳感器模塊18</p><p>  2.2.2 電動小車模塊19</p

11、><p>  2.2.3 控制模塊19</p><p>  2.3 整體方案20</p><p><b>  3 軟件設計22</b></p><p>  3.1 程序設計22</p><p>  3.1.1 程序的模塊化設計22</p><p>  3.1.2 部分

12、程序設計23</p><p>  3.2 利用proteus 進行軟件仿真26</p><p>  3.3 制作電路圖和PCB板圖27</p><p><b>  4總結31</b></p><p><b>  致謝33</b></p><p><b> 

13、 參考文獻34</b></p><p>  附錄1 C語言程序35</p><p>  附錄2 電路圖和PCB板圖39</p><p>  附錄3小車實物圖42</p><p><b>  前言</b></p><p>  隨著汽車工業(yè)的迅速發(fā)展,關于汽車的研究也就越來越受人關

14、注。全國電子大賽和省內(nèi)電子大賽幾乎每次都有智能小車這方面的題目,全國各高校也都很重視該題目的研究??梢娖溲芯恳饬x很大。本設計就是在這樣的背景下提出的。設計一款智能電動小車,智能電動小車應該具有自動尋找軌跡的功能。</p><p>  根據(jù)題目的要求,本設計以AT89S52為控制核心,在現(xiàn)有電動小車的基礎上,加裝傳感器,實現(xiàn)對電動車的運動狀態(tài)進行實時控制。本系統(tǒng)控制靈活、可靠,精度高,滿足各項要求。利用紅外線傳感器

15、檢測地上的特定軌跡,將數(shù)據(jù)傳給AT89S52,經(jīng)過AT89S52分析后做出反應控制電動機的運行使小車按照特定軌跡行駛。</p><p>  AT89S52是一款八位單片機,它的易用性和多功能性受到了廣大使用者的好評。它是第三代單片機的代表,其最主要的技術特點是向外部接口電路擴展,以完善控制功能。外部可接其他功能單元如A/D﹑PWM﹑PCA﹑WDT﹑計數(shù)器的捕獲/比較邏輯等。在總線方面最重要的進展是為單片機配置了芯

16、片間的串行總線,為單片機應用系統(tǒng)設計提供了更加靈活的方式。新一代單片機為外部提供了相當完善的總線結構,為系統(tǒng)的擴展與配置打下了良好的基礎。 </p><p>  本設計采用的AT89S52采用CHOMS工藝,功耗很低,可用于很多小型設備中。該設計具有實際意義,稍作修改就可以應用于考古、機器人、醫(yī)療器械等許多方面。尤其是在足球機器人研究方面具有很好的發(fā)展前景;在考古方面可用超聲波傳感器進行檢測。所以本設計與實際相結

17、合,現(xiàn)實意義很強。</p><p><b>  1 方案設計與論證</b></p><p>  根據(jù)題目的要求,確定如下方案:在現(xiàn)有電動小車的基礎上加控制器,在小車前部加裝傳感器,在路面貼上特殊軌跡。由外加傳感器對路面進行實時測量,并將測量數(shù)據(jù)傳送至控制器,再由主控制器根據(jù)所檢測的數(shù)據(jù)對電動小車行動進行控制,使小車跟隨路面特殊軌跡行駛,以實現(xiàn)電動小車的自動尋跡。<

18、;/p><p>  自動尋跡小車原理圖1.1所示:</p><p>  圖1.1自動尋跡小車原理圖</p><p><b>  1.1電動小車模塊</b></p><p>  1.1.1轉向和動力</p><p>  方案一:轉向和動力分開的電動小車。轉向和動力分開的電動小車是將輪胎分為兩組,一組與電

19、動機相連輸出動力控制小車的行駛;另外一組控制小車的方向。(兩組輪胎的前后順序可調(diào),其換影響不大。轉向輪可使用單輪。)方案一需電動機和一個轉向器。由主控制器分別進行控制,器件和控制程序較多。</p><p>  方案二:轉向和動力結合的電動小車。轉向和動力結合的電動小車是使用兩個獨立的電動機各自帶動一個輪胎位于兩側,通過兩個輪胎速度的改變實現(xiàn)小車的轉向??刂扑贸绦蜉^少,控制器控制起來簡單(這種轉向方式類似于坦克的

20、轉向方式。)為了小車的平衡再裝上保持平衡的輪子。</p><p>  綜上分析,本設計使用方案二。</p><p>  1.1.2 電動機模塊</p><p>  為了實現(xiàn)電動小車對行走路徑的準確定位和精確測量,有以下兩種方案:</p><p>  方案一:采用直流電機。直流電機轉動力矩大,響應快速,體積小,重量輕,較大的起動轉矩使其有從零轉

21、速至額定轉速具備可提供額定轉矩的性能??捎米兯冽X輪改變其速度來達到本系統(tǒng)要求。價格較低。</p><p>  方案二:采用步進電機。步進電機是一種將電脈沖信號轉換成角位移或線位移的精密執(zhí)行原件??刂品奖?,體積小,靈活性和可靠性高,具有瞬時啟動和急速停止的優(yōu)越性,比較適合本系統(tǒng)控制精度高的特點。價格較高。</p><p>  從成本分析,本設計用方案一。(經(jīng)濟條件好時方案二最好。)</

22、p><p><b>  1.1.3調(diào)速系統(tǒng)</b></p><p>  方案一:旋轉變流系統(tǒng)。旋轉變流系統(tǒng)由交流發(fā)電機拖動直流電動機實現(xiàn)變流,由發(fā)電機給需要調(diào)速的直流電動機供電,調(diào)節(jié)發(fā)電機的勵磁電流即可改變其輸出電壓,從而調(diào)節(jié)電動機的轉速。改變勵磁電流的方向則輸出電壓的極性和電動機的轉向都隨著改變,所以旋轉變流系統(tǒng)的可逆運行是很容易實現(xiàn)的。該系統(tǒng)需要旋轉變流機組,至少包含

23、兩臺與調(diào)速電動機容量相當?shù)男D電機,還要一臺勵磁發(fā)電機,設備多、體積大、費用高、效率低、維護不方便等缺點。且技術落后,因此擱置不用。</p><p>  方案二:靜止可控整流器。簡稱V-M系統(tǒng)。V-M系統(tǒng)是當今直流調(diào)速系統(tǒng)的主要形式。它可以是單相、三相或更多相數(shù),半波、全波、半控、全控等類型,可實現(xiàn)平滑調(diào)速。V-M系統(tǒng)的缺點是晶閘管的單向?qū)щ娦?,它不允許電流反向,給系統(tǒng)的可逆運行造成困難。它的另一個缺點是運行條件

24、要求高,維護運行麻煩。最后,當系統(tǒng)處于低速運行時,系統(tǒng)的功率因數(shù)很低,并產(chǎn)生較大的諧波電流危害附近的用電設備。</p><p>  方案三:脈寬調(diào)速系統(tǒng)。采用晶閘管的直流斬波器基本原理與整流電路不同的是,在這里晶閘管不受相位控制,而是工作在開關狀態(tài)。當晶閘管被觸發(fā)導通時,電源電壓加到電動機上,當晶閘管關斷時,直流電源與電動機斷開,電動機經(jīng)二極管續(xù)流,兩端電壓接近于零。脈沖寬度調(diào)制(Pulse Width Modu

25、lation),簡稱PWM。脈沖周期不變,只改變晶閘管的導通時間,即通過改變脈沖寬度來進行直流調(diào)速??稍谛羞M間變速,直道高速,彎道低速。</p><p>  方案四:調(diào)速齒輪組調(diào)速。采用齒輪與齒輪的組合,利用齒輪組半徑比來調(diào)速,能達到本設計的最低要求以低速勻速前進。價格便宜,實現(xiàn)起來簡單。</p><p>  與V-M系統(tǒng)相比,PWM調(diào)速系統(tǒng)有下列優(yōu)點:</p><p&

26、gt; ?。?)由于PWM調(diào)速系統(tǒng)的開關頻率較高,僅靠電樞電感的濾波作用就可以獲得脈動很小的直流電流,電樞電流容易連續(xù),系統(tǒng)的低速運行平穩(wěn),調(diào)速范圍較寬,可達1:10000左右。由于電流波形比V-M系統(tǒng)好,在相同的平均電流下,電動機的損耗和發(fā)熱都比較小。</p><p> ?。?)同樣由于開關頻率高,若與快速響應的電機相配合,系統(tǒng)可以獲得很寬的頻帶,因此快速響應性能好,動態(tài)抗擾能力強。</p>&l

27、t;p>  (3)由于電力電子器件只工作在開關狀態(tài),主電路損耗較小,裝置效率較高。</p><p>  根據(jù)以上綜合比較,以及本設計中受控電機的容量和直流電機調(diào)速的發(fā)展方向,本設計采用了H型單極型可逆PWM變換器進行調(diào)速。</p><p>  脈寬調(diào)速系統(tǒng)的主電路采用脈寬調(diào)制式變換器,簡稱PWM變換器。脈寬調(diào)速也可通過單片機控制繼電器的閉合來實現(xiàn),但是驅(qū)動能力有限。為順利實現(xiàn)電動小汽

28、車的前行與倒車,本設計采用了可逆PWM變換器??赡鍼WM變換器主電路的結構式有H型、T型等類型。我們在設計中采用了常用的雙極式H型變換器,它是由4個三極電力晶體管和4個續(xù)流二極管組成的橋式電路。</p><p>  綜上,考慮到本設計重在尋跡,本設計使用價格便宜,簡單的方案四。(經(jīng)濟條件好時方案三最好。)</p><p>  1.1.4 電機驅(qū)動模塊</p><p>

29、;  方案一:采用集成芯片L9110驅(qū)動直流電機。L9110是為控制和驅(qū)動電機設計的兩通道推挽式功率放大專用集成電路,將分立電路集成在單片IC之中,使外圍器件成本降低,整機可靠性提高。該芯片有兩個TTL/COMS兼容電平的輸入,具有良好的抗干擾性;兩個輸出端能直接驅(qū)動電機的正反向運動,它具有較大的電流驅(qū)動能力,每個通道能通過750~800mA的持續(xù)電流,峰值電流能力可達1.5~2.0;同時它具有較低的輸出飽和壓降;內(nèi)置的鉗位二極管能釋放

30、感性負載的反向沖擊電流,使它在驅(qū)動繼電器、直流電機、步進電機、開關功率管的使用上安全可靠。L9110被廣泛用于玩具汽車電機驅(qū)動、步進電機驅(qū)動和開關功率管等電路上。</p><p>  方案二:用功率管構成驅(qū)動電路來驅(qū)動電機。性能可靠,具有自動保護功能,但結構較復雜多用于交流。</p><p>  綜上分析,本設計選擇方案一。</p><p><b>  1

31、.2 控制模塊</b></p><p>  方案一:采用FPGA作為系統(tǒng)的主控制器。FPGA可以實現(xiàn)各種復雜的邏輯功能,規(guī)模大集,成度高,體積小,穩(wěn)定性好,IO口資源豐富,易于進行功能擴展,處理速度快,但是適用于大規(guī)模實時性要求較高的系統(tǒng),價格高,編程實現(xiàn)難度大。本系統(tǒng)只需要完成信號檢測和電機驅(qū)動的控制,邏輯功能簡單,對控制器的數(shù)據(jù)處理能力要求不高,所以不選擇此方案。</p><p

32、>  方案二:采用嵌入式系統(tǒng)作為主控制器。嵌入式系統(tǒng)工作頻率較高,速度較快,控制能力很強,也有較強的數(shù)據(jù)處理能力。但同樣價格較高,編程實現(xiàn)難度大。</p><p>  方案三:采用AT89S52單片機作為主控制器。AT89S52是一款低功耗,高性能的8位單片機,片內(nèi)含有8KB的Flash片內(nèi)程序存儲器,256 Bytes的RAM,32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級,2層中斷嵌套中斷等。價格

33、便宜,使用方便。編程實現(xiàn)難度低,適合用來實現(xiàn)系統(tǒng)的控制功能。</p><p>  綜上分析,本設計使用方案三。</p><p><b>  1.3 傳感器模塊</b></p><p>  方案一:采用光敏電阻組成光敏傳感器。光敏電阻原理簡單,使用方便,價格低廉,但受光照強度影響很大,可靠性不高。</p><p>  方案

34、二:采用角度傳感器。實用角度傳感器來測量車體水平方向和豎直方向的角度,感測到的傾角信號經(jīng)編碼后傳感給單片機,由單片機控制電動機的運行。角度傳感器靈敏度合適,響應速度好,但使用復雜,價格高昂,且不易購買。</p><p>  方案三:采用光電傳感器。光電傳感器原理簡單,實現(xiàn)方便,價格低廉,可集發(fā)射器和接收器于一體。使用這類光電傳感器電路簡單,工作性能穩(wěn)定,能完成需要的信號檢測功能。</p><p

35、>  綜上分析,本設計選擇方案三。</p><p><b>  1.4 電源模塊</b></p><p>  方案一:電腦USB串口供電。能直接為單片機提供穩(wěn)定的+5V直流電壓。USB串口線又容易得到。需要很長的線,而且要有交流電和電腦配合。</p><p>  方案二:用4節(jié)五號電池串聯(lián)6V直流電源。在不超過單片機工作電壓范圍的情況下,

36、又能驅(qū)動直流電機。且這個電源結構簡單,價格便宜,容易得到。</p><p>  綜上所述,本設計選擇方案二。</p><p><b>  2 硬件設計</b></p><p>  本設計硬件由一下三個模塊組成:1.以驅(qū)動芯片L9110為主的電動小車模塊。2.以AT89S52為控制器的控制器模塊。3.以紅外線傳感器為主的傳感器模塊。整個設計由傳感

37、器模塊向控制模塊提供路面情況,控制模塊根據(jù)情況控制電動小車移動,三個模塊相互合達到設計要求 。</p><p>  2.1 主要元器件的介紹</p><p>  2.1.1 電機驅(qū)動芯片L9110</p><p>  L9110是為控制和驅(qū)動電機設計的兩通道推挽式功率放大專用集成電路,將分立電路集成在單片IC之中,使外圍器件成本降低,整機可靠性提高。該芯片有兩個TT

38、L/COMS兼容電平的輸入,具有良好的抗干擾性;兩個輸出端能直接驅(qū)動電機的正反向運動,它具有較大的電流驅(qū)動能力,每個通道能通過750~800mA的持續(xù)電流,峰值電流能力可達1.5~2.0;同時它具有較低的輸出飽和壓降;內(nèi)置的鉗位二極管能釋放感性負載的反向沖擊電流,使它在驅(qū)動繼電器、直流電機、步進電機、開關功率管的使用上安全可靠。L9110被廣泛用于玩具汽車電機驅(qū)動、步進電機驅(qū)動和開關功率管等電路上。其特點有,低靜態(tài)工作電流;寬電壓電源范

39、圍2.5V~12V;每個通道具有800mA連續(xù)輸出能力;較低的飽和壓降,TTL/COMS輸出電平兼容,可直接連CPU;輸出內(nèi)置鉗位二極管;適用于感性負載,控制驅(qū)動集成于單片IC中;具備管腳高壓保護功能;工作溫度-20℃~80L9110℃。管腳定義:</p><p><b>  OA:A路輸出腳。</b></p><p><b>  VCC:電源電壓。<

40、/b></p><p><b>  VCC:電源電壓。</b></p><p>  OB:B腳輸出管腳。</p><p><b>  GND:地線。</b></p><p>  IA:A路輸入管腳。</p><p>  IB:B路輸入管腳。</p><

41、;p><b>  GND:地線。</b></p><p>  其管腳圖如圖2.1所示。其應用電路如圖2.2 所示。管腳波形圖如圖2.3所示。T=25℃時的參數(shù)如表2.1。電器特性標如表2.2。</p><p>  圖2.1 L9110管腳圖</p><p>  圖2.2 L9110的應用電路圖</p><p>  

42、標2.1 T=25℃時的參數(shù)表</p><p>  表2.2 T=25℃ Vcc=5V時電器特性標</p><p><b>  圖2.3管腳波形圖</b></p><p>  2.1.2 AT89S52</p><p>  AT89S52單片機由以下功能部件組成:微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I/O口、串行口、

43、定時器/計數(shù)器、中斷系統(tǒng)及特殊功能寄存器。它們都是通過片內(nèi)單一總線連接而成,對各種功能部件的控制是采用特殊功能寄存器的集中控制方式。</p><p><b>  1、微處理器:</b></p><p>  該單片機中有一個8位的微處理器,與通用的微處理器基本相同,同樣包括了運算器和控制器兩大部分,只是增加了面向控制的處理功能,不僅可處理數(shù)據(jù),還可以進行位變量的處理。&

44、lt;/p><p><b>  2、數(shù)據(jù)存儲器:</b></p><p>  片內(nèi)為256 Bytes RAM,片外最多可外擴至64K字節(jié),用來存儲程序在運行期間的工作變量、運算的中間結果、數(shù)據(jù)暫存和緩沖、標志位等,所以稱為數(shù)據(jù)存儲器。</p><p><b>  3、程序存儲器:</b></p><p&g

45、t;  由于受集成度限制,片內(nèi)有8KB Flash存儲器,如果片內(nèi)的只讀存儲器的容量不夠,則需用擴展片外的只讀存儲器,片外最多可外擴至64K字節(jié)。</p><p><b>  4、中斷系統(tǒng):</b></p><p>  具有5個中斷源,2級中斷優(yōu)先權。</p><p>  5、定時器/計數(shù)器:</p><p>  片內(nèi)有

46、2個16位的定時器/計數(shù)器, 具有四種工作方式。</p><p><b>  6、串行口:</b></p><p>  1個全雙工的串行口,具有四種工作方式??捎脕磉M行串行通訊,擴展并行I/O口,甚至與多個單片機相連構成多機系統(tǒng),從而使單片機的功能更強且應用更廣。</p><p>  7、輸入/輸出(I/O)口:</p><

47、p>  P1口、P2口、P3口、P4口為4個并行8位I/O口。</p><p>  8、特殊功能寄存器:</p><p>  共有21個,用于對片內(nèi)的個功能的部件進行管理、控制、監(jiān)視。實際上是一些控制寄存器和狀態(tài)寄存器,是一個具有特殊功能的RAM區(qū)。</p><p>  下面對它的進行介紹:</p><p>  P0 口:P0口是一個8

48、位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0不具有內(nèi)部上拉電阻。在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。 </p><p>  P1 口:P1 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出

49、緩沖器能驅(qū)動4 個TTL邏輯電平。對P1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.1分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和定時器/計數(shù)器2 的觸發(fā)輸入(P1.1/T2EX)。在flash編程和校驗時,P1口接收低8位地址字節(jié)。 </p><p><b>  引腳號第二

50、功能 </b></p><p>  P1.0 T2(定時器/計數(shù)器T2的外部計數(shù)輸入),時鐘輸出 </p><p>  P1.1 T2EX(定時器/計數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制) </p><p>  P1.5 MOSI(在系統(tǒng)編程用) </p><p>  P1.6 MISO(在系統(tǒng)編程用) </p>

51、<p>  P1.7 SCK(在系統(tǒng)編程用) </p><p>  P2 口:P2 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動4 個TTL邏輯電平。對P2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR)

52、時,P2 口送出高八位地址。在這種應用中,P2 口使用很強的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。 </p><p>  P3 口:P3 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,p3 輸出緩沖器能驅(qū)動4 個TTL 邏輯電平。對P3 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時

53、可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)使用。在flash編程和校驗時,P3口也接收一些控制信號。 </p><p>  端口引腳 第二功能 </p><p>  P3.0 RXD(串行輸入口) </p><p>  P3.1 TXD(串行輸出口) </p>

54、;<p>  P3.2 INTO(外中斷0) </p><p>  P3.3 INT1(外中斷1) </p><p>  P3.4 TO(定時/計數(shù)器0) </p><p>  P3.5 T1(定時/計數(shù)器1) </p><p>  P3.6 WR(外部數(shù)據(jù)存儲器寫選通) </p><p>  P3.7

55、RD(外部數(shù)據(jù)存儲器讀選通) </p><p>  此外,P3口還接收一些用于FLASH閃存編程和程序校驗的控制信號。</p><p>  RST——復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將是單片機復位。 </p><p>  ALE/PROG——當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般

56、情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。 如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效

57、。 </p><p>  PSEN——程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。 </p><p>  EA/VPP——外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接

58、地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。FLASH存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。 </p><p>  XTAL1:振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。 </p><p>  XTAL2:振蕩器反相放大器的輸出端。 &

59、lt;/p><p>  并不是所有的地址都被定義了。片上沒有定義的地址是不能用的。讀這些地址,一般將得到一個隨機數(shù)據(jù);寫入的數(shù)據(jù)將會無效。用戶不應該給這些未定義的地址寫入數(shù)據(jù)“1”。由于這些寄存器在將來可能被賦予新的功能,復位后,這些位都為“0”。定時器 2 寄存器:寄存器T2CON 和T2MOD 包含定時器2 的控制位和狀態(tài)位(如表2和表3所示),寄存器對RCAP2H和RCAP2L是定時器2的捕捉/自動重載寄存器。

60、 </p><p>  中斷寄存器:各中斷允許位在IE寄存器中,六個中斷源的兩個優(yōu)先級也可在IE中設置。</p><p>  雙數(shù)據(jù)指針寄存器:為了更有利于訪問內(nèi)部和外部數(shù)據(jù)存儲器,系統(tǒng)提供了兩路16位數(shù)據(jù)指針寄存器:位于SFR中82H~83H的DP0和位于84H~85。特殊寄存器AUXR1中DPS=0 選擇DP0;DPS=1 選擇DP1。用戶應該在訪問數(shù)據(jù)指針寄存器前先初始化DPS至合理

61、的值。</p><p>  輔助寄存器 AUXR 地址:8EH 復位值:XXX00XX0B不可位尋址預留擴展用DISALE ALE使能標志位 :</p><p>  DISALE 操作方式 :</p><p>  為0時 ALE 以1/6晶振頻率輸出信號。</p><p>  為1時 ALE 只有在執(zhí)行MOVX 或MOVC指令時激活。<

62、/p><p>  DISRTO 復位輸出標志位:</p><p>  為0時看門狗(WDT)定時結束,Reset 輸出高電平。</p><p>  為1時Reset 只有輸入。</p><p>  WDIDLE 空閑模式下WDT 使能標志位 :</p><p>  為0時空閑模式下,WDT繼續(xù)計數(shù)。</p>

63、<p>  為1時空閑模式下,WDT停止計數(shù)。</p><p>  掉電標志位:掉電標志位(POF)位于特殊寄存器PCON的第四位(PCON.4)。上電期間POF置“1”。POF可以軟件控制使用與否,但不受復位影響。</p><p>  輔助寄存器1:AUXR1地址A2H 復位值:XXXXXXX0B不可位尋址。</p><p>  預留擴展用DPS 數(shù)據(jù)指

64、針選擇位DPS:為0時選擇DPTR寄存器DP0L和DP0H1,為1時選擇DPTR寄存器DP1L和DP1H。</p><p><b>  存儲器結構</b></p><p>  MCS-51器件有單獨的程序存儲器和數(shù)據(jù)存儲器。外部程序存儲器和數(shù)據(jù)存儲器都可以64K尋址。 </p><p>  程序存儲器:如果EA引腳接地,程序讀取只從外部存儲器開

65、始。 </p><p>  對于 89S52,如果EA 接VCC,程序讀寫先從內(nèi)部存儲器(地址為0000H~1FFFH)開始,接著從外部尋址,尋址地址為:2000H~FFFFH。 </p><p>  數(shù)據(jù)存儲器:AT89S52 有256 字節(jié)片內(nèi)數(shù)據(jù)存儲器。高128 字節(jié)與特殊功能寄存器重疊。也就是說高128字節(jié)與特殊功能寄存器有相同的地址,而物理上是分開的。 </p>&

66、lt;p>  當一條指令訪問高于7FH 的地址時,尋址方式?jīng)Q定CPU 訪問高128 字節(jié)RAM 還是特殊功能寄存器空間。直接尋址方式訪問特殊功能寄存器(SFR)。 </p><p>  例如,下面的直接尋址指令訪問0A0H(P2口)存儲單元MOV 0A0H , #data使用間接尋址方式訪問高128 字節(jié)RAM。例如,下面的間接尋址方式中,R0 內(nèi)容為0A0H,訪問的是地址0A0H的寄存器,而不是P2口(它

67、的地址也是0A0H)。 </p><p>  MOV @R0 , #data堆棧操作也是簡介尋址方式。因此,高128字節(jié)數(shù)據(jù)RAM也可用于堆??臻g。</p><p><b>  看門狗定時器</b></p><p>  WDT是一種需要軟件控制的復位方式。WDT 由13位計數(shù)器和特殊功能寄存器中的看門狗定時器復位存儲器(WDTRST)構成。WD

68、T 在默認情況下無法工作;為了激活WDT,用戶必須往WDTRST 寄存器(地址:0A6H)中依次寫入01EH 和0E1H。當WDT激活后,晶振工作,WDT在每個機器周期都會增加。WDT計時周期依賴于外部時鐘頻率。除了復位(硬件復位或WDT溢出復位),沒有辦法停止WDT工作。當WDT溢出,它將驅(qū)動RSR引腳一個高電平輸出。 </p><p>  WDT的使用為了激活WDT,用戶必須向WDTRST寄存器(地址為0A6

69、H的SFR)依次寫入0E1H和0E1H。當WDT激活后,用戶必須向WDTRST寫入01EH和0E1H喂狗來避免WDT溢出。當計數(shù)達到8191(1FFFH)時,13 位計數(shù)器將會溢出,這將會復位器件。晶振正常工作、WDT激活后,每一個機器周期WDT 都會增加。為了復位WDT,用戶必須向WDTRST 寫入01EH 和0E1H(WDTRST 是只讀寄存器)。WDT 計數(shù)器不能讀或?qū)憽?</p><p>  當WDT 計

70、數(shù)器溢出時,將給RST 引腳產(chǎn)生一個復位脈沖輸出,這個復位脈沖持續(xù)96個晶振周期(TOSC),其中TOSC=1/FOSC。為了很好地使用WDT,應該在一定時間內(nèi)周期性寫入那部分代碼,以避免WDT復位。 </p><p>  掉電和空閑方式下的 WDT在掉電模式下,晶振停止工作,這意味這WDT也停止了工作。在這種方式下,用戶不必喂狗。有兩種方式可以離開掉電模式:硬件復位或通過一個激活的外部中斷。通過硬件復位退出掉電

71、模式后,用戶就應該給WDT 喂狗,就如同通常AT89S52 復位一樣。 </p><p>  通過中斷退出掉電模式的情形有很大的不同。中斷應持續(xù)拉低很長一段時間,使得晶振穩(wěn)定。當中斷拉高后,執(zhí)行中斷服務程序。為了防止WDT在中斷保持低電平的時候復位器件,WDT 直到中斷拉低后才開始工作。這就意味著WDT 應該在中斷服務程序中復位。 </p><p>  為了確保在離開掉電模式最初的幾個狀態(tài)

72、WDT不被溢出,最好在進入掉電模式前就復位WDT。 </p><p>  在進入待機模式前,特殊寄存器AUXR的WDIDLE位用來決定WDT是否繼續(xù)計數(shù)。 </p><p>  默認狀態(tài)下,在待機模式下,WDIDLE=0,WDT繼續(xù)計數(shù)。為了防止WDT在待機模式下復位AT89S52,用戶應該建立一個定時器,定時離開待機模式,喂狗,再重新進入待機模式。 </p><p&g

73、t;<b>  UART</b></p><p>  在AT89S52 中,UART 的操作與AT89C51 和AT89C52 一樣。為了獲得更深入的關于UART 的信息,選擇“Products”,然后選擇“8051-Architech Flash Microcontroller”,再選擇“ProductOverview”即可。 </p><p>  定時器 0 和定

74、時器1</p><p>  在AT89S52 中,定時器0 和定時器1 的操作與AT89C51 和AT89C52 一樣。為了獲得更深入的關于UART 的信息,選擇“Products”,然后選擇“8051-Architech Flash Microcontroller”,再選擇“ProductOverview”即可。 </p><p>  定時器2是一個16位定時/計數(shù)器,它既可以做定時器,

75、又可以做事件計數(shù)器。其工作方式由特殊寄存器T2CON中的C/T2位選擇。定時器2有三種工作模式: </p><p>  捕捉方式、自動重載(向下或向上計數(shù))和波特率發(fā)生器。如表3 所示,工作模式由T2CON中的相關位選擇。定時器2 有2 個8位寄存器:TH2和TL2。在定時工作方式中,每個機器周期,TL2 寄存器都會加1。由于一個機器周期由12 個晶振周期構成,因此,計數(shù)頻率就是晶振頻率的1/12。</p&

76、gt;<p>  捕捉方式在捕捉模式下,通過T2CON中的EXEN2來選擇兩種方式。如果EXEN2=0,定時器2時一個16位定時/計數(shù)器,溢出時,對T2CON 的TF2標志置位,TF2引起中斷。如果EXEN2=1,定時器2做相同的操作。除上述功能外,外部輸入T2EX引腳(P1.1)1至0的下跳變也會使得TH2和TL2中的值分別捕捉到RCAP2H和RCAP2L中。除此之外,T2EX 的跳變會引起T2CON 中的EXF2 置位

77、。像TF2 一樣,T2EX 也會引起中斷。在計數(shù)工作方式下,寄存器在相關外部輸入角T2 發(fā)生1 至0 的下降沿時增加1。在這種方式下,每個機器周期的S5P2期間采樣外部輸入。一個機器周期采樣到高電平,而下一個周期采樣到低電平,計數(shù)器將加1。在檢測到跳變的這個周期的S3P1 期間,新的計數(shù)值出現(xiàn)在寄存器中。因為識別1-0的跳變需要2個機器周期(24個晶振周期),所以,最大的計數(shù)頻率不高于晶振頻率的1/24。為了確保給定的電平在改變前采樣到

78、一次,電平應該至少在一個完整的機器周期內(nèi)保持不變。 </p><p>  自動重載當定時器2 工作于16 位自動重載模式,可對其編程實現(xiàn)向上計數(shù)或向下計數(shù)。這一功能可以通過特殊寄存器T2MOD中的DCEN(向下計數(shù)允許位)來實現(xiàn)。通過復位,DCEN 被置為0,因此,定時器2 默認為向上計數(shù)。DCEN 設置后,定時器2就可以取決于T2EX向上、向下計數(shù)。 </p><p>  DCEN=0

79、時,定時器2 自動計數(shù)。通過T2CON 中的EXEN2 位可以選擇兩種方式。如果EXEN2=0,定時器2計數(shù),計到0FFFFH后置位TF2溢出標志。計數(shù)溢出也使得定時器寄存器重新從RCAP2H 和RCAP2L 中加載16 位值。定時器工作于捕捉模式,RCAP2H和RCAP2L的值可以由軟件預設。如果EXEN2=1,計數(shù)溢出或在外部T2EX(P1.1)引腳上的1到0的下跳變都會觸發(fā)16位重載。這個跳變也置位EXF2中斷標志位。 </

80、p><p>  T2EX 上的一個邏輯0 使得定時器2 向下計數(shù)。當TH2 和TL2 分別等于RCAP2H 和RCAP2L中的值的時候,計數(shù)器下溢。計數(shù)器下溢,置位TF2,并將0FFFFH加載到定時器存儲器中。置位DCEN,允許定時器2向上或向下計數(shù)。在這種模式下,T2EX引腳控制著計數(shù)的方向。T2EX上的一個邏輯1使得定時器2向上計數(shù)。定時器計到0FFFFH溢出,并置位TF2。定時器的溢出也使得RCAP2H和RCA

81、P2L中的16位值分別加載到定時器存儲器TH2和TL2中。 </p><p>  定時器2上溢或下溢,外部中斷標志位EXF2 被鎖死。在這種工作模式下,EXF2不能觸發(fā)中斷。</p><p>  T2MOD 地址:0C9H 復位值:XXXXXX00B不可位尋址。</p><p><b>  中斷</b></p><p>

82、  AT89S52 有6個中斷源:兩個外部中斷(INT0 和INT1),三個定時中斷(定時器0、1、2)和一個串行中斷。這些中斷如圖10所示每個中斷源都可以通過置位或清除特殊寄存器IE 中的相關中斷允許控制位分別使得中斷源有效或無效。IE還包括一個中斷允許總控制位EA,它能一次禁止所有中斷。 </p><p>  如表5所示,IE.6位是不可用的。對于AT89S52,IE.5位也是不能用的。用戶軟件不應給這些位寫

83、1。它們?yōu)锳T89系列新產(chǎn)品預留。 </p><p>  定時器2可以被寄存器T2CON中的TF2和EXF2的或邏輯觸發(fā)。程序進入中斷服務后,這些標志位都可以由硬件清0。實際上,中斷服務程序必須判定是否是TF2 或EXF2激活中斷,標志位也必須由軟件清0。 </p><p>  定時器0和定時器1標志位TF0 和TF1在計數(shù)溢出的那個周期的S5P2被置位。它們的值一直到下一個周期被電路捕捉

84、下來。然而,定時器2 的標志位TF2 在計數(shù)溢出的那個周期的S2P2被置位,在同一個周期被電路捕捉下來。</p><p>  2.1.3 紅外線傳感器</p><p>  紅外線傳感器采用反射接收原理。一個紅外線傳感器配置了一個紅外線發(fā)接受器、一個紅外線接受器及其上拉電阻。其應用電路如圖2.4所示。紅外線發(fā)射器通電后不斷會發(fā)射一定強度的紅外線照射物體。紅外線接收器在接受到一定強度的紅外線會

85、后導通。如圖通過在紅外線的正極接出一個信號來觀察紅外線接收器是否導通。當紅外線接收器導通時,輸出信號為0;反之則為1。紅外線在不同顏色的物體上反射程度是不同的,當紅外線傳感器在黑色物體時,黑色物體吸收大量紅外線,反射少量紅外線,紅外線接收其不足以導通,輸出信號為1。當紅外線傳感器在白色物體上時,白色物體吸收的紅外線少,反射的紅外線少,紅外線接收器導通,輸出信號為0。因此本設計采用紅外線傳感器模塊與有黑線的路面組合使用。</p>

86、;<p>  圖2.4紅外線傳感器的應用電路</p><p><b>  2.2 模塊介紹</b></p><p>  2.2.1車頭傳感器模塊</p><p>  圖2.5 車頭傳感器模塊</p><p>  本系統(tǒng)共設計三個紅外線傳感器固定在底盤前沿,貼近地面,分別放置在電動車車頭的正前方、左下方和右下

87、方兩。正常行駛時,發(fā)射管發(fā)射紅外光照射地面,光線經(jīng)白紙反射后被接收管接收,輸出高電平信號;電動車經(jīng)過黑線時,發(fā)射端發(fā)射的光線被黑線吸收,接收端接收不到反射光線,傳感器輸出低電平信號。正前方的傳感器用于檢測障礙物。應用圖如圖2.5所示。</p><p>  2.2.2 電動小車模塊</p><p>  電動小車由兩個直流電機與其驅(qū)動芯片組成。一左一右位于小車前端兩邊。電機通過齒輪組帶動輪胎。

88、后端是用于平衡的輪胎。小車電動機模塊如圖2.6所示</p><p>  圖2.6 電動小車模塊</p><p>  2.2.3 控制模塊</p><p><b>  1、時鐘電路</b></p><p>  AT89S52雖然有內(nèi)部振蕩電路,但要形成時鐘,必須外部附加電路。AT89S52單片機的時鐘產(chǎn)生方法有兩種。內(nèi)部時

89、鐘方式和外部時鐘方式。</p><p>  本設計采用內(nèi)部時鐘方式,利用芯片內(nèi)部的振蕩電路,在XTAL1、XTAL2引腳上外接定時元件,內(nèi)部的振蕩電路便產(chǎn)生自激振蕩。本設計采用最常用的內(nèi)部時鐘方式,即用外接晶體和電容組成的并聯(lián)諧振回</p><p>  路。振蕩晶體可在1.2MHZ到12MHZ之間選擇。電容值無嚴格要求,CX1、CX2可在20pF到100pF之間取值。所以本設計中,振蕩晶體

90、選擇11.0592MHZ,電容選擇30pF。</p><p><b>  2、復位電路</b></p><p>  AT89S52的復位是由外部的復位電路來實現(xiàn)的。復位引腳RST通過在每個機器周期的對復位電路采樣一次,然后才能得到內(nèi)部復位操作所需要的信號。復位電路通常采用上電自動復位和按鈕復位兩種方式。</p><p>  最簡單的上電自動復位

91、電路中上電自動復位是通過外部復位電路的電容充電來實現(xiàn)的。只要VCC的上升時間不超過1ms,就可以實現(xiàn)自動上電復位。時鐘頻率用11.0592MHZ時C取10uF,R取10KΩ。本設計就是用就是最簡單的上電復位。控制器模塊如圖2.7所示。</p><p>  圖2.7 控制器模塊</p><p><b>  2.3 整體方案</b></p><p>

92、;  小車的尋跡原理是當左側傳感器在黑線上時,傳感器輸出高電平,在白色地板上時輸出低電平。電平信號進入單片機P3.5口,同理右側傳感器將電平信號傳送到單片機P3.7口。單片機通過P0.0和P0.1口控制左電機組,通過P0.2和P0.3口控制右電機組。當正前方傳感器檢測出小車前方有物體阻擋時,正前方傳感器輸出低電平信號到單片機的P3.6口,單片機控制小車行動。整體硬件示意圖如圖2.8所示。</p><p>  當左

93、右傳感器都在黑線上時,單片機控制左右電機同時一同速度正向轉動,小車向前行駛。當左側傳感器在黑線外,右側傳感器在黑線上,單片機控制右側的電機停止(或反向轉動),左側的電機正向轉動(或停止)來控制小車向右轉。當右側傳感器在黑線外,左側傳感器在黑線上,單片機控制左側的電機停止(或反向轉動),右側的電機正向轉動(或停止)來控制小車向左轉。從而來實現(xiàn)小車的自動尋跡。當正前方的有物體阻擋時,單片機控制小車停下來。</p><p&

94、gt;  圖2.8 小車整體示意圖</p><p><b>  3 軟件設計</b></p><p><b>  3.1 程序設計</b></p><p>  程序要的任務是,讓單片機查詢傳感器模塊發(fā)出的路面信號,根據(jù)信號作出反應,控制電動機工作實現(xiàn)自動尋跡。其程序流程圖3.1所示。</p><p>

95、;  圖3.1 程序流程圖</p><p>  3.1.1 程序的模塊化設計</p><p>  在進行微機控制系統(tǒng)設計時,除了系統(tǒng)硬件設計外,大量的工作就是如何根據(jù)每個生產(chǎn)對象的實際需要設計應用程序。因此,軟件設計在微機控制系統(tǒng)設計中占重要地位。</p><p>  為了完成要求設計,在進行軟件設計時,通常把整個過程分成若干個部分,每一部分叫做一個模塊。所謂“模塊

96、”,實質(zhì)上就是所完成一定功能,相對獨立的程序段,這種程序設計方法叫模塊程序設計法。</p><p>  模塊程序設計法的主要優(yōu)點是:</p><p>  1、單個模塊比起一個完整的程序易編寫及調(diào)試;</p><p>  2、模塊可以共存,一個模塊可以被多個任務在不同條件下調(diào)用;</p><p>  3、模塊程序允許設計者分割任務和利用已有程序

97、,為設計者提供方便。</p><p>  本系統(tǒng)軟件采用模塊化結構,由主程序﹑延時子程序﹑轉向子程序構成。具體程序見附錄1。

98、</p><p>  3.1.2 部分程序設計</p><p>  1、延時子程序。制作一個延時子程序,讓指令執(zhí)行足夠長的時間。</p><p>  Void Delay()</p><p>  { Unsigned Int DelayTime=50000;</p><p>  while(DelayTime--);

99、</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  2、轉向子程序。</b></p><p>  void ControlCar(unsigned char ConType) </p><

100、p><b>  {</b></p><p>  M1A=0; //將M1電機A端初始化為0</p><p>  M1B=0; //將M1電機B端初始化為0</p><p>  M2A=0; //將M2電機A端初始化為0</p><p>  M2B=0

101、; //將M2電機B端初始化為0</p><p>  switch(ConType) //判斷用戶設定電機形式</p><p><b>  {</b></p><p>  case 1: //前進。判斷用戶是否選擇形式1</p><p>  { M1A=1;

102、 //M1電機正轉</p><p>  M2A=1; //M2電機正轉</p><p><b>  break;</b></p><p><b>  }</b></p><p>  case 2: //后退。判斷用戶是否選擇形式2</p&g

103、t;<p>  { M1B=1; //M1電機反轉</p><p>  M2B=1; //M2電機反轉</p><p><b>  break;</b></p><p><b>  }</b></p><p>  case 3:

104、 //左轉。判斷用戶是否選擇形式3</p><p><b>  { </b></p><p>  M1B=1; //M1電機反轉</p><p>  M2A=1; //M2電機正轉</p><p><b>  break;</b></p><p

105、><b>  }</b></p><p>  case 4: //右轉。判斷用戶是否選擇形式4</p><p>  { M1A=1; //M1電機正轉</p><p>  M2B=1; //M2電機反轉</p><p><b>  break;<

106、;/b></p><p><b>  }</b></p><p>  case 5: //停止。判斷用戶是否選擇形式8</p><p><b>  {</b></p><p>  break; //退出當前選擇</p><p>

107、<b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  3、主程序。</b></p><p>  void main() //主程序

108、入口</p><p><b>  {</b></p><p>  bit RunFlag=0; //定義小車運行標志位</p><p>  RunShow=0; //初始化顯示狀態(tài)</p><p>  while(1)

109、 </p><p><b>  {</b></p><p>  Start: ControlCar(1); //初始化小車運行狀態(tài) </p><p>  LeftLed=LeftIR; //前方左側指示燈指示出前方左側紅外探頭狀態(tài)</p><p&g

110、t;  RightLed=RightIR; //前方右側指示燈指示出前方右側紅外探頭狀態(tài)</p><p>  FontIRState=FontIR; //定義蔽障狀態(tài)位</p><p>  if(FontIR==0) //正前方傳感器接收到了信號</p><p>  {ControlCar(2

111、); //小車向后倒退</p><p>  SB1=!SB1; //揚聲器電平取反 </p><p>  Delay(); //延時一定時間</p><p>  SB1=!SB1; </p><

112、;p>  Delay(); </p><p>  SB1=!SB1; </p><p>  Delay(); </p><p>  SB1=!SB1; </p><p>  Delay

113、(); </p><p>  SB1=!SB1; </p><p>  Delay(); </p><p>  SB1=!SB1; </p><p>  Delay(); </p><p>  SB1=!SB1;

溫馨提示

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

評論

0/150

提交評論