基于單片機(jī)的自動(dòng)往返小車畢業(yè)設(shè)計(jì)1_第1頁(yè)
基于單片機(jī)的自動(dòng)往返小車畢業(yè)設(shè)計(jì)1_第2頁(yè)
基于單片機(jī)的自動(dòng)往返小車畢業(yè)設(shè)計(jì)1_第3頁(yè)
基于單片機(jī)的自動(dòng)往返小車畢業(yè)設(shè)計(jì)1_第4頁(yè)
基于單片機(jī)的自動(dòng)往返小車畢業(yè)設(shè)計(jì)1_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于單片機(jī)的自動(dòng)往返小車摘要:本設(shè)計(jì)以一片單片機(jī)stc89c52作為核心來(lái)控制自動(dòng)往返小車,其中控制芯片l298n和單片機(jī)聯(lián)合控制小車的前進(jìn)與后退。路面的黑帶檢測(cè)使用反射式紅外傳感器,并通過(guò)stc89c52對(duì)輸入的信號(hào)進(jìn)行處理;行駛距離使用霍爾元件進(jìn)行檢測(cè)。最后以動(dòng)態(tài)顯示的形式通過(guò)一個(gè)lcd液晶顯示即時(shí)黑帶個(gè)數(shù),運(yùn)行時(shí)間,實(shí)時(shí)路程等。關(guān)鍵詞: 微控制器 l298n電機(jī)控制 霍爾檢測(cè) 液晶顯示 the automatic round-trip car based on scmabstract:this design use a microcontroller stc89c52 as the co

2、re to control the automatic round-trip car, the control chip l298n and single chip microcomputer to control the car forward and backward together. the reflective infrared sensor detection the black belt on the road surface, then deal with input signal processing through the stc89c52. using the hall

3、element to test the distance. at last displaying instant black belt, running time, real-time distance, etc through a number of lcd liquid crystal in the form of dynamic displaykeywords: mcu l298n motor control hall detection led display i基于單片機(jī)的自動(dòng)往返小車目錄摘要i關(guān)鍵字iabstractikeywordsi0緒論21.1 設(shè)計(jì)任務(wù)31.2方案介紹42.

4、1 系統(tǒng)元器件的選擇與介紹52.1.1stc89c52r芯片52.1.2l298n芯片112.1.3霍耳傳感器(hd3020)142.1.4液晶lcd152.2電路模塊的設(shè)計(jì)182.2.1檢測(cè)系統(tǒng)182.2.2距離計(jì)算系統(tǒng)192.2.3顯示系統(tǒng)202.2.4電機(jī)驅(qū)動(dòng)以及正反轉(zhuǎn)控制模塊203.1主程序213.2中斷程序223.2.1外部中斷0223.2.2外部中斷1233.2.3定時(shí)器中斷0243.2.4定時(shí)器中斷1244總結(jié)25致謝26參考文獻(xiàn)27附錄280緒論當(dāng)今社會(huì),隨著科技發(fā)展的日新月異,特別是計(jì)算機(jī)技術(shù)突飛猛進(jìn)的發(fā)展,計(jì)算機(jī)技術(shù)帶來(lái)了科研和生產(chǎn)的許多重大飛躍,同時(shí)計(jì)算機(jī)也越來(lái)越廣泛的被

5、應(yīng)用到人們的生活、工作領(lǐng)域的各個(gè)方面。單片微型計(jì)算機(jī)以其其體積小、功能強(qiáng)、速度快、價(jià)格低等優(yōu)點(diǎn),在數(shù)據(jù)處理和實(shí)時(shí)控制等應(yīng)用中有著無(wú)以倫比的優(yōu)越性,可廣泛地嵌入到如玩具、家用電器、機(jī)器人、儀器儀表、汽車電子系統(tǒng)、工業(yè)控制單元、辦公自動(dòng)化設(shè)備、金融電子系統(tǒng)、艦船、個(gè)人信息終端及通訊產(chǎn)品中。隨著微控制技術(shù)(以軟件代硬件的高性能控制技術(shù))的日益完善和發(fā)展,單片機(jī)的應(yīng)用必將導(dǎo)致傳統(tǒng)控制技術(shù)發(fā)生巨大的變化。單片微型計(jì)算機(jī)的應(yīng)用廣度和深度,已經(jīng)成為一個(gè)國(guó)家科技水平的一項(xiàng)重要標(biāo)志。此論文的題目是自動(dòng)往返小汽車。要求設(shè)計(jì)一個(gè)能自動(dòng)往返于起跑線與終點(diǎn)線間的小汽車。車輛從起跑線出發(fā)到達(dá)終點(diǎn)線后停留10秒,然后自動(dòng)返

6、回起跑線。在要求的跑道范圍內(nèi)完成快行、慢行、停車等功能。停車后自動(dòng)顯示一次往返的時(shí)間和路程?;谏鲜鲆髮⒃O(shè)計(jì)分為以下幾個(gè)模塊:stc89c52rc、電機(jī)驅(qū)動(dòng)、電機(jī)調(diào)速、里程檢測(cè)、跑道標(biāo)志檢測(cè)、液晶顯示模塊??刂葡到y(tǒng)采用stc89c52rc單片機(jī);顯示系統(tǒng)采用液晶顯示里程數(shù)和時(shí)間;電機(jī)正反轉(zhuǎn)采用橋式驅(qū)動(dòng)控制,2檔電壓調(diào)速;里程記錄采用霍爾傳感器;跑道標(biāo)志線采用光敏管檢測(cè);單片機(jī)、電機(jī)采用獨(dú)立穩(wěn)壓電源供電。本論文將詳細(xì)介紹硬件設(shè)計(jì)和軟件設(shè)計(jì)的思路及方法。由于本人在單片機(jī)的設(shè)計(jì)方面還存在一些不足,在論文的寫作和論證上尚存在一些不足之處,敬請(qǐng)各位老師批評(píng)指正。1設(shè)計(jì)任務(wù)及方案介紹1.1 設(shè)計(jì)任務(wù)設(shè)計(jì)

7、并制作一個(gè)能自動(dòng)往返于起跑線與終點(diǎn)線間的小汽車。跑道寬度0.5m,表面貼有白紙,和黑帶。在跑道的b、c、d、e、f、g各點(diǎn)處畫有2cm寬的黑線,各段的長(zhǎng)度如圖1-1所示。車輛從起跑線出發(fā)到達(dá)終點(diǎn)線后停留10秒,然后自動(dòng)返回起跑線。de間為限速區(qū),車輛往返均要求以低速通過(guò),通過(guò)時(shí)間不得少于8秒,但不允許在限速區(qū)內(nèi)停車。跑道頂視圖如圖1.1。圖1.1 跑道頂視圖 (一)基本要求(a)車輛從起跑線出發(fā)(出發(fā)前,車體不得超出起跑線),到達(dá)終點(diǎn)線后停留10秒,然后自動(dòng)返回起跑線(允許倒車返回)。往返一次的時(shí)間應(yīng)力求最短(從合上汽車電源開(kāi)關(guān)開(kāi)始計(jì)時(shí))。(b)到達(dá)終點(diǎn)線和返回起跑線時(shí),停車位置離起跑線和終點(diǎn)

8、線偏差應(yīng)最小(以車輛中心點(diǎn)與終點(diǎn)線或起跑線中心線之間距離作為偏差的測(cè)量值)。 (c)de間為限速區(qū),車輛往返均要求以低速通過(guò),通過(guò)時(shí)間不得少于8秒, 但不允許在限速區(qū)內(nèi)停車。1.2方案介紹設(shè)計(jì)采用單片機(jī)stc89c52rc作為系統(tǒng)的控制中心。電機(jī)電路采用兩對(duì)互補(bǔ)三極管控制電機(jī)的驅(qū)動(dòng);檢測(cè)電路采用光敏管來(lái)控制小車的快行,慢行,停止;用液晶實(shí)現(xiàn)對(duì)指定行程和所用時(shí)間的顯示。方案方框圖如1.2所示。里程檢測(cè)stc89c52rc液晶顯示電機(jī)驅(qū)動(dòng)電機(jī)調(diào)速跑道標(biāo)志檢測(cè)圖1.2方案方框圖2. 系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)2.1 系統(tǒng)元器件的選擇與介紹 下面介紹stc89c52rc芯片、l298n芯片、霍爾傳感器、液晶

9、等器件。2.1.1 stc89c52r芯片stc89c52是一種帶8k字節(jié)閃爍可編程可檫除只讀存儲(chǔ)器(fperom-flash programable and erasable read only memory )的低電壓,高性能comos8的微處理器,俗稱單片機(jī)。該器件采用atmel搞密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的mcs-51指令集和輸出管腳相兼容。單片機(jī)總控制電路如下圖2.1:圖2.1單片機(jī)總控制電路1.時(shí)鐘電路stc89c52內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳rxd和txd分別是此放大器的輸入端和輸出端。時(shí)鐘可以由內(nèi)部方式產(chǎn)生或外部方式產(chǎn)生。內(nèi)部方式的時(shí)鐘電路如

10、圖2.2 (a) 所示,在rxd和txd引腳上外接定時(shí)元件,內(nèi)部振蕩器就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和電容組成的并聯(lián)諧振回路。晶體振蕩頻率可以在1.212mhz之間選擇,電容值在530pf之間選擇,電容值的大小可對(duì)頻率起微調(diào)的作用。外部方式的時(shí)鐘電路如圖2.2(b)所示,rxd接地,txd接外部振蕩器。對(duì)外部振蕩信號(hào)無(wú)特殊要求,只要求保證脈沖寬度,一般采用頻率低于12mhz的方波信號(hào)。片內(nèi)時(shí)鐘發(fā)生器把振蕩頻率兩分頻,產(chǎn)生一個(gè)兩相時(shí)鐘p1和p2,供單片機(jī)使用。示,rxd接地,txd接外部振蕩器。對(duì)外部振蕩信號(hào)無(wú)特殊要求,只要求保證脈沖寬度,一般采用頻率低于12mhz的方波信號(hào)。片內(nèi)時(shí)鐘

11、發(fā)生器把振蕩頻率兩分頻,產(chǎn)生一個(gè)兩相時(shí)鐘p1和p2,供單片機(jī)使用。rxd接地,txd接外部振蕩器。對(duì)外部振蕩信號(hào)無(wú)特殊要求,只要求保證脈沖寬度,一般采用頻率低于12mhz的方波信號(hào)。片內(nèi)時(shí)鐘發(fā)生器把振蕩頻率兩分頻,產(chǎn)生一個(gè)兩相時(shí)鐘p1和p2,供單片機(jī)使用。(a)內(nèi)部方式時(shí)鐘電路 (b)外部方式時(shí)鐘電路圖2.2時(shí)鐘電路2.復(fù)位及復(fù)位電路(1)復(fù)位操作復(fù)位是單片機(jī)的初始化操作。其主要功能是把pc初始化為0000h,使單片機(jī)從0000h單元開(kāi)始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵重新啟動(dòng)。除pc之外,復(fù)位操作還對(duì)其他一些寄

12、存器有影響,它們的復(fù)位狀態(tài)如表2.1所示。表2.1 一些寄存器的復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)pc0000htcon00hacc00htl000hpsw00hth000hsp07htl100hdptr0000hth100hp0-p3ffhscon00hipxx000000bsbuf不定ie0x000000bpcon0xxx0000btmod00h(2)復(fù)位信號(hào)及其產(chǎn)生rst引腳是復(fù)位信號(hào)的輸入端。復(fù)位信號(hào)是高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩周期(即二個(gè)機(jī)器周期)以上。若使用頗率為6mhz的晶振,則復(fù)位信號(hào)持續(xù)時(shí)間應(yīng)超過(guò)4us才能完成復(fù)位操作。產(chǎn)生復(fù)位信號(hào)的電路邏輯如圖2.3所示:圖2

13、.3復(fù)位信號(hào)的電路邏輯圖整個(gè)復(fù)位電路包括芯片內(nèi)、外兩部分。外部電路產(chǎn)生的復(fù)位信號(hào)(rst)送至施密特觸發(fā)器,再由片內(nèi)復(fù)位電路在每個(gè)機(jī)器周期的s5p2時(shí)刻對(duì)施密特觸發(fā)器的輸出進(jìn)行采樣,然后才得到內(nèi)部復(fù)位操作所需要的信號(hào)。復(fù)位操作有上電自動(dòng)復(fù)位相按鍵手動(dòng)復(fù)位兩種方式。上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的,其電路如圖2.4(a)所示。這佯,只要電源vcc的上升時(shí)間不超過(guò)1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位,即接通電源就成了系統(tǒng)的復(fù)位初始化。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中,按鍵電平復(fù)位是通過(guò)使復(fù)位端經(jīng)電阻與vcc電源接通而實(shí)現(xiàn)的,其電路如圖2.4(b)所示;而按鍵脈沖復(fù)位則是利用rc

14、微分電路產(chǎn)生的正脈沖來(lái)實(shí)現(xiàn)的,其電路如圖2.4(c)所示:(a)上電復(fù)位 (b)按鍵電平復(fù)位 (c)按鍵脈沖復(fù)位圖2.4復(fù)位電路上述電路圖中的電阻、電容參數(shù)適用于6mhz晶振,能保證復(fù)位信號(hào)高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。本系統(tǒng)的復(fù)位電路采用圖2.4(b)上電復(fù)位方式。stc89c52具體介紹如下: 主電源引腳(2根)vcc(pin40):電源輸入,接5v電源gnd(pin20):接地線外接晶振引腳(2根)xtal1(pin19):片內(nèi)振蕩電路的輸入端xtal2(pin20):片內(nèi)振蕩電路的輸出端控制引腳(4根)rst/vpp(pin9):復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位

15、。ale/prog(pin30):地址鎖存允許信號(hào)psen(pin29):外部存儲(chǔ)器讀選通信號(hào)ea/vpp(pin31):程序存儲(chǔ)器的內(nèi)外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從內(nèi)部程序存儲(chǔ)器讀指令。可編程輸入/輸出引腳(32根)stc89c52單片機(jī)有4組8位的可編程i/o口,分別位p0、p1、p2、p3口,每個(gè)口有8位(8根引腳),共32根。po口(pin39pin32):8位雙向i/o口線,名稱為p0.0p0.7p1口(pin1pin8):8位準(zhǔn)雙向i/o口線,名稱為p1.0p1.7 p2口(pin21pin28):8位準(zhǔn)雙向i/o口線,名稱為p2.0p2.7 p3口(p

16、in10pin17):8位準(zhǔn)雙向i/o口線,名稱為p3.0p3.7stc89c52主要功能如表2.2所示。表2.2 stc89c52主要功能主要功能特性兼容mcs51指令系統(tǒng)8k可反復(fù)擦寫flash rom32個(gè)雙向i/o口256x8bit內(nèi)部ram3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷時(shí)鐘頻率0-24mhz2個(gè)串行中斷可編程uart串行通道2個(gè)外部中斷源共6個(gè)中斷源2個(gè)讀寫中斷口線3級(jí)加密位低功耗空閑和掉電模式軟件設(shè)置睡眠和喚醒功能2.1.2 l298n芯片l298是st公司生產(chǎn)的一種高電壓、大電流電機(jī)驅(qū)動(dòng)芯片。該芯片的主要特點(diǎn)是:工作電壓高,最高工作電壓可達(dá)46v;輸出電流大,瞬間峰值電流可達(dá)3

17、a,持續(xù)工作電流為2a;內(nèi)含兩個(gè)h橋的高電壓大電流全橋式驅(qū)動(dòng)器,可以用來(lái)驅(qū)動(dòng)直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī)、繼電器、線圈等感性負(fù)載;采用標(biāo)準(zhǔn)ttl邏輯電平信號(hào)控制;具有兩個(gè)使能控制端,在不受輸入信號(hào)影響的情況下允許或禁止器件工作;有一個(gè)邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作;可以外接檢測(cè)電阻,將變化量反饋給控制電路。(1)l298芯片的引腳圖如下圖2.5。圖2.5 l298芯片引腳圖(2)l298芯片的引腳功能下表2.3表2.3 l298芯片的引腳功能引腳符號(hào)功能115sensing asensing b此兩端與地連接電流檢測(cè)電阻,并向驅(qū)動(dòng)芯片反饋檢測(cè)到的信號(hào)23out 1out 2此兩腳是

18、全橋式驅(qū)動(dòng)器a的兩個(gè)輸出端,用來(lái)連接負(fù)載4vs電機(jī)驅(qū)動(dòng)電源輸入端57in 1in2輸入標(biāo)準(zhǔn)的ttl邏輯電平信號(hào),用來(lái)控制全橋式驅(qū)動(dòng)器a的開(kāi)關(guān)611enable aenable b使能控制端.輸入標(biāo)準(zhǔn)ttl邏輯電平信號(hào);低電平時(shí)全橋式驅(qū)動(dòng)器禁止工作。8gnd接地端,芯片本身的散熱片與8腳相通9vss邏輯控制部分的電源輸人端口1012in 3in 4輸入標(biāo)準(zhǔn)的ttl邏輯電平信號(hào),用來(lái)控制全橋式驅(qū)動(dòng)器b的開(kāi)關(guān)1314out 3out 4此兩腳是全橋式驅(qū)動(dòng)器b的兩個(gè)輸出端,用來(lái)連接負(fù)載(5)l298有mutiwatt15和powerso20兩種封裝 兩種封裝的實(shí)物圖如下圖2.6所示圖2.6 l298兩

19、種封裝的實(shí)物圖本次選用的是mutiwatt15。2.1.3霍耳傳感器(hd3020)霍耳傳感器是利用半導(dǎo)體的磁電效應(yīng)中的霍耳效應(yīng),將被測(cè)物理量轉(zhuǎn)換成霍耳電勢(shì)。(1)、霍耳效應(yīng):將一載流體置于磁場(chǎng)中靜止不動(dòng),若次載流體中的電流方向與磁場(chǎng)方向不相同時(shí),則在此載流體中平行于由電流方向和磁場(chǎng)方向所組成的平面上將產(chǎn)生電勢(shì),此電勢(shì)稱為霍耳電勢(shì),此現(xiàn)象稱為霍耳效應(yīng)。16霍耳電勢(shì) u=bbi/neb式中:b外磁場(chǎng)的磁感應(yīng)強(qiáng)度: i通過(guò)基片的電流; n基片材料中的載流子濃度; e電子電荷量; b基片寬度; d基片厚度。 (2)、 霍耳元件一般采用具有n型的鍺、銻化銦和砷化銦等半導(dǎo)體單晶材料造成。銻化銦元件的輸出

20、較大,但受溫度的影響也較大。鍺元件的輸入雖小,但它的溫度性能和線性度卻比較好。砷化銦元件的輸出信號(hào)沒(méi)有銻化銦元件大,但是受溫度的影響卻比銻化銦要小,而且線性度也較好,因此,采用砷化銦做霍耳元件的材料受到普遍重視。一般地,在高精度測(cè)量中,大多采用鍺和砷化銦元件;作為敏感元件時(shí),材料采用銻化銦元件?;舳慕Y(jié)構(gòu)很簡(jiǎn)單,它由霍耳片、引線和殼體組成?;舳且粔K矩形半導(dǎo)體薄片。在長(zhǎng)邊的兩個(gè)端面上焊上兩根控制電流端引線,在元件短邊的中間以點(diǎn)的形式焊上兩根霍耳輸出端引線,在焊接處要求接觸電阻小,而且呈純電阻性質(zhì)?;舳话阌梅谴判越饘佟⑻沾苫颦h(huán)氧樹(shù)脂封裝。2.1.4液晶lcd 帶中文字庫(kù)的128x64是

21、一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為12864, 內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ascii字符集.利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示84行1616點(diǎn)陣的漢字. 也可完成圖形顯示.低電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡(jiǎn)潔得多,且該模塊的價(jià)格也略低于相同點(diǎn)陣的圖形液晶模塊。17(1)基本特性(1)低電源電壓(vdd:+3.0-+5.5v)(2)顯示分辨率

22、:12864點(diǎn) (3)內(nèi)置漢字字庫(kù),提供8192個(gè)1616點(diǎn)陣漢字(簡(jiǎn)繁體可選) (4)內(nèi)置 128個(gè)168點(diǎn)陣字符 (5)2mhz時(shí)鐘頻率 (6)顯示方式:stn、半透、正顯 (7)驅(qū)動(dòng)方式:1/32duty,1/5bias (8)視角方向:6點(diǎn)(9)背光方式:側(cè)部高亮白色led,功耗僅為普通led的1/51/10 (10)通訊方式:串行、并口可選 (11)內(nèi)置dc-dc轉(zhuǎn)換電路,無(wú)需外加負(fù)壓 (12)無(wú)需片選信號(hào),簡(jiǎn)化軟件設(shè)計(jì)(13)工作溫度: 0 - +55 ,存儲(chǔ)溫度: -20 - +60(2)模塊接口說(shuō)明如下表2.4所示管腳號(hào)管腳名稱電平管腳功能描述4rs(cs)h/lrs=“h”,

23、表示db7db0為顯示數(shù)據(jù)rs=“l(fā)”,表示db7db0為顯示指令數(shù)據(jù)5r/w(sid)h/lr/w=“h”,e=“h”,數(shù)據(jù)被讀到db7db0r/w=“l(fā)”,e=“hl”, db7db0的數(shù)據(jù)被寫到ir或dr6e(sclk)h/l使能信號(hào)714db0h/l三態(tài)數(shù)據(jù)線15psbh/lh:8位或4位并口方式,l:串口方式(見(jiàn)注釋1)16nc-空腳17/reseth/l復(fù)位端,低電平有效(見(jiàn)注釋2)18vout-lcd驅(qū)動(dòng)電壓輸出端表2.4模塊接口說(shuō)明*注釋1:如在實(shí)際應(yīng)用中僅使用串口通訊模式,可將psb接固定低電平,也可以將模塊上的j8和“gnd”用焊錫短接。*注釋2:模塊內(nèi)部接有上電復(fù)位電路,

24、因此在不需要經(jīng)常復(fù)位的場(chǎng)合可將該端懸空。(3)rs,r/w的配合選擇決定控制界面的4種模式:rsr/w功能說(shuō)明llmpu寫指令到指令暫存器(ir)lh讀出忙標(biāo)志(bf)及地址記數(shù)器(ac)的狀態(tài)hlmpu寫入數(shù)據(jù)到數(shù)據(jù)暫存器(dr)hhmpu從數(shù)據(jù)暫存器(dr)中讀出數(shù)據(jù)表2.5控制界面的4種模式(4)e信號(hào)e狀態(tài)執(zhí)行動(dòng)作結(jié)果高低i/o緩沖dr配合/w進(jìn)行寫數(shù)據(jù)或指令高dri/o緩沖配合r進(jìn)行讀數(shù)據(jù)或指令低/低高無(wú)動(dòng)作表2.6 e信號(hào)2.2電路模塊的設(shè)計(jì)2.2.1檢測(cè)系統(tǒng)檢測(cè)系統(tǒng)主要是黑帶采樣模塊,黑帶采樣模塊我們采用反射式光電檢測(cè)電路對(duì)跑道上的黑線進(jìn)行檢測(cè),并用兩個(gè)遮光套管套住發(fā)光管和接收管

25、以一定的角度緊貼跑道,這樣可以消除外界光線的干擾。為了加強(qiáng)可靠性采用槽型光耦檢測(cè)輪子轉(zhuǎn)動(dòng)的行程。用lm358電壓比較器輸出高低電平檢測(cè)信號(hào)。如圖所示2.7:圖2.72.2.2距離計(jì)算系統(tǒng)采用霍爾元件感應(yīng)磁場(chǎng)產(chǎn)生脈沖的原理,再對(duì)脈沖進(jìn)行計(jì)數(shù),所以我們?cè)谛≤嚨那拜喩习惭b了一塊小磁鐵并計(jì)算出車輪旋轉(zhuǎn)一圈的路程。通過(guò)mcu編程后檢測(cè)到一個(gè)脈沖后顯示自動(dòng)上加一個(gè)輪子的路程,再通過(guò)液晶hj12864m1顯示出來(lái)下圖為霍爾元件的工作原理如圖2.8所示:圖2.8霍爾元件的工作原理霍爾傳感器實(shí)際電路圖如圖2.9所示:圖2.9霍爾傳感器實(shí)際電路圖2.2.3顯示系統(tǒng) 用到單片機(jī)控制的液晶顯示17,液晶用到能顯示漢字

26、、數(shù)字、字母和圖像的hj12864m1液晶。通過(guò)液晶我們可以很清楚顯示出小車在運(yùn)行是的時(shí)間、檢測(cè)的黑帶的條數(shù)、運(yùn)行的速度以及運(yùn)行的路程。使得一個(gè)很機(jī)械化的小車變得人性化,更好的了解小車的運(yùn)動(dòng)情況和穩(wěn)定性。液晶的實(shí)圖(2.10)和液晶的控制電路(2.11)如下: 圖2.10液晶的實(shí)圖 圖2.11液晶的控制電路2.2.4電機(jī)驅(qū)動(dòng)以及正反轉(zhuǎn)控制模塊 考慮到小車的往返以及小車到達(dá)限速區(qū)時(shí)要減速行駛的要求,我們用到了專門的電機(jī)驅(qū)動(dòng)模塊l298驅(qū)動(dòng)電路。該電路采用電動(dòng)機(jī)驅(qū)動(dòng)芯片l298來(lái)控制電動(dòng)機(jī)的正轉(zhuǎn)與反轉(zhuǎn),加以第二路電機(jī)電源保證了電動(dòng)機(jī)啟動(dòng)時(shí)有足夠的電流。在試驗(yàn)中控制電壓為單片機(jī)輸出的高低電平直接控制

27、。電路連接如圖2.12所示:圖2.12 l298驅(qū)動(dòng)電路連接圖3系統(tǒng)的軟件設(shè)計(jì)單片機(jī)控制電路主要由一片stc89c52組成,通過(guò)p3口控制小車正轉(zhuǎn)與反轉(zhuǎn),剎車,加速減速,通過(guò)兩個(gè)四聯(lián)數(shù)碼管控制顯示時(shí)間和里程以及小車行駛的時(shí)間。其中p0口進(jìn)行位選,p2口進(jìn)行顯示段碼輸出。該系統(tǒng)采用上電復(fù)位加上手動(dòng)復(fù)位聯(lián)合復(fù)位系統(tǒng)進(jìn)行初始化,單片機(jī)通過(guò)p3.0,p3.1輸出脈沖控制電機(jī)正轉(zhuǎn)反轉(zhuǎn)以及剎車,當(dāng)p3.0,p3.1分別輸出01是電動(dòng)機(jī)正轉(zhuǎn),輸出10時(shí)電動(dòng)機(jī)反轉(zhuǎn),輸出00時(shí)電動(dòng)機(jī)兩邊短路,小車立即剎車。3.1主程序主要完成初始化工作,設(shè)定小汽車的初始運(yùn)行狀態(tài),最后循環(huán)調(diào)用顯示子程序, 流程圖如3-1所示。

28、開(kāi)始前進(jìn)檢測(cè)黑帶調(diào)用顯示子程序打開(kāi)電源圖3.1 主程序流程圖3.2中斷程序3.2.1外部中斷0車輪每轉(zhuǎn)一次,霍爾元件產(chǎn)生一個(gè)脈沖p3.14,通過(guò)下降沿觸發(fā)外部中斷0,并且在每進(jìn)行一次外部中斷記錄圈數(shù)的變量加1,具體流程圖如圖3.2所示:開(kāi)始車輪每轉(zhuǎn)一圈霍爾元件產(chǎn)生一個(gè)脈沖外部中斷int0圈數(shù)quanshu+圖3.2 外部中斷0流程圖3.2.2外部中斷1光電檢測(cè)每檢測(cè)到一條黑帶就產(chǎn)生一個(gè)脈沖輸入p3.2口,通過(guò)下降沿的方式觸發(fā)外中斷1,每中斷一次記錄黑帶的變量加1,當(dāng)檢測(cè)到第五條黑帶時(shí),p1.0=1,p1.1=1,小車的電動(dòng)機(jī)由于短路剎車,當(dāng)檢測(cè)到第九條黑帶時(shí),小車再次剎車同時(shí)關(guān)掉所有中斷。具體

29、流程圖如圖3.3所示:開(kāi)始p3.0=1,p3.1=1ea=0,剎車退出第5條?第9條?黑帶數(shù)加1y yyn圖3.3 外部中斷1流程圖3.2.3定時(shí)器中斷0使用定時(shí)器t0產(chǎn)生5ms定時(shí)中斷,每次執(zhí)行該中斷前要先給定時(shí)器0賦初值,定時(shí)器中斷每執(zhí)行一次,變量加1。當(dāng)i=200時(shí),即每當(dāng)計(jì)時(shí)1秒時(shí),時(shí)間變量t加1,速度等于一秒轉(zhuǎn)的圈數(shù)和小車車輪的周長(zhǎng)相乘。具體流程圖如圖3.4所示:開(kāi)始控制一秒定時(shí),i+轉(zhuǎn)的總?cè)?shù)q;路程=周長(zhǎng)*圈數(shù)q產(chǎn)生5ms中斷退出一秒定時(shí)是否到y(tǒng)圖3.4 定時(shí)器中斷0流程圖3.2.4定時(shí)器中斷1主要用來(lái)產(chǎn)生不同的占空比的波型進(jìn)行高低速控制,每次執(zhí)行時(shí),定時(shí)器1要賦初值。4總結(jié)本系

30、統(tǒng)以單片機(jī)stc89c52芯片為核心部件,在玩具小車上進(jìn)行改裝利用光電檢測(cè)、傳感器檢測(cè)技術(shù)并配合軟件實(shí)現(xiàn)了小車的黑線檢測(cè)、里程檢測(cè)、時(shí)間顯示等功能,最終使小車完成設(shè)計(jì)題目要求的各項(xiàng)任務(wù)。該系統(tǒng)還有許多值得改進(jìn)的地方:比如小車兩側(cè)可以同樣加上傳感器來(lái)檢測(cè)路沿,是的小車在固定的軌道上行駛,不至于偏出;另外還可以加上遙控裝置更加方便人的控制操作。經(jīng)過(guò)三個(gè)多月時(shí)間的畢業(yè)設(shè)計(jì)鍛煉,我覺(jué)得自己對(duì)單片機(jī)知識(shí)有了一定的了解。對(duì)單片機(jī)硬件結(jié)構(gòu)的研究和軟件編程的興趣增加不少。歸納起來(lái),主要有以下兩點(diǎn):(1)我經(jīng)過(guò)這次系統(tǒng)的畢業(yè)設(shè)計(jì),熟悉了對(duì)一項(xiàng)課題進(jìn)行研究、設(shè)計(jì)和實(shí)驗(yàn)的過(guò)程中要注意團(tuán)隊(duì)合作;要有了嚴(yán)肅認(rèn)真和實(shí)事求

31、是的科學(xué)態(tài)度同時(shí)還要有吃苦耐勞的精神以及相對(duì)應(yīng)的工程意識(shí)。,這些在我們?cè)趯?lái)的工作和學(xué)習(xí)當(dāng)中都會(huì)有很大的幫助。(2)學(xué)會(huì)了怎樣查閱資料和利用工具書。學(xué)習(xí)知識(shí)不能局限于一本書,應(yīng)多看幾本,這樣既可以進(jìn)行比較又增加了見(jiàn)識(shí)。另外平時(shí)課堂上所學(xué)習(xí)的知識(shí)大多比較陳舊,作為電子科學(xué)與技術(shù)的學(xué)生,由于專業(yè)特點(diǎn)自己更要積極查閱當(dāng)前的最新電子資料。要及時(shí)地有針對(duì)性地查閱資料,然后加以吸收利用,以提高自己的應(yīng)用能力,增長(zhǎng)自己見(jiàn)識(shí),補(bǔ)充最新的專業(yè)知識(shí)。在本次設(shè)計(jì)過(guò)程中,遇到了許多突發(fā)事件和各種困難,但通過(guò)仔細(xì)分析和請(qǐng)教無(wú)線電小組的同學(xué),指導(dǎo)老師老師,問(wèn)題逐一得到了解決。在這個(gè)過(guò)程中我深刻體會(huì)到共同協(xié)作和團(tuán)隊(duì)精神的重

32、要性,提高了自己解決問(wèn)題的能力。在科學(xué)上需要一個(gè)嚴(yán)謹(jǐn)認(rèn)真的態(tài)度,這點(diǎn)對(duì)于我以后的學(xué)習(xí)和工作,都有著非常重要的作用。致謝誠(chéng)摯感謝指導(dǎo)老師戴新宇的關(guān)心、指導(dǎo)和教誨,戴新宇老師嚴(yán)謹(jǐn)治學(xué)、追求真理的科研作風(fēng)和嚴(yán)于利己、寬以待人的崇高品質(zhì)對(duì)學(xué)生將是永遠(yuǎn)的鞭策。還要感謝我的同學(xué)許康康,他曾是我們?cè)簾o(wú)線電小組的副組長(zhǎng),在電路設(shè)計(jì)、編程、電路焊接方面有很強(qiáng)的能力。在制作的過(guò)程中給與我很大的幫助,最后小車一些問(wèn)題他也參與改進(jìn)。有了他的幫助,設(shè)計(jì)才能更順利地完成。同時(shí)感謝我的母校江蘇師范大學(xué)四年來(lái)對(duì)我的教育和關(guān)心,在這里我不僅學(xué)習(xí)到了專業(yè)的知識(shí)還學(xué)習(xí)到了厚重篤實(shí),勵(lì)志敏行。這使我端正了態(tài)度,明確了方向,樹(shù)立了正確

33、的人生觀和價(jià)值觀,使我受用終身!最后衷心的感謝我的父母多年來(lái)對(duì)我的養(yǎng)育之恩和在生活上無(wú)微不至的關(guān)懷,沒(méi)有他們就有我的今天。四年來(lái)父母辛勤工作為我支付昂貴的學(xué)費(fèi)和生活費(fèi),噓寒問(wèn)暖,看似簡(jiǎn)單平凡但這其中又包含著樸素偉大和最無(wú)私的愛(ài),使我得以安心學(xué)習(xí)文化知識(shí),成為一個(gè)對(duì)社會(huì)有用的人。這份養(yǎng)育之恩我將永遠(yuǎn)銘記與心.在此謹(jǐn)向他們致以深深的謝意!參考文獻(xiàn)1田立,代方震.2007. 51單片機(jī)c語(yǔ)言程序設(shè)計(jì)快速入門.北京.人民郵電出版社2李朝青.2005.單片機(jī)原理及接口技術(shù)(第3版).北京.北京航天航空大學(xué)出版社.3郭天祥.編著.51單片機(jī)c語(yǔ)言教程入門,提高,開(kāi)發(fā).拓展全攻略4李忠國(guó).陳剛.編著.單片機(jī)

34、應(yīng)用技能實(shí)訓(xùn)5劉南平.主編.朱鳳芝.歐觸靈.副主編.現(xiàn)代電子設(shè)計(jì)與制作技術(shù)6楊翠南.楊碧石.主編 . 數(shù)字電子技術(shù)與邏輯設(shè)計(jì)教程7余發(fā)山,王福忠.單片機(jī)原理及應(yīng)用技術(shù).徐州:中國(guó)礦業(yè)大學(xué)出版社,20038陳權(quán)昌 李興富 單片機(jī)原理及應(yīng)用. 廣東:華南理工大學(xué)出版社,20079黃智偉. 凌陽(yáng)單片機(jī)課程設(shè)計(jì)指導(dǎo).北京:北京航空航天大學(xué)出版社,200610李光飛 .單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo) .北京:北京航空航天大學(xué)出版,200411 張友德.單片微型機(jī)原理、應(yīng)用與實(shí)踐m.上海:復(fù)旦大學(xué)出版社,199212 李華.mcs-51系列單片機(jī)實(shí)用接口技術(shù)m,北京:北京航空航天大學(xué)出版社13求是科技. 單片機(jī)典

35、型模塊設(shè)計(jì)實(shí)例導(dǎo)航. 北京:人民郵電出版社. 2005.814徐淑華, 程退安等.單片微型機(jī)原理及應(yīng)用. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社.15孫余凱. 精選實(shí)用電子電路260例. 北京:電子工業(yè)出版社. 2007.616殷春浩, 崔亦飛. 電磁測(cè)量原理及應(yīng)用. 徐州:中國(guó)礦業(yè)大學(xué)出版社. 2003.717lcd1602a數(shù)據(jù)手冊(cè)附錄:源程序代碼#includesbit cs=p11; sbit sid=p12; sbit sclk=p13;sbit dj_in1=p27;sbit dj_in2=p26;sbit dj_in3=p25;sbit dj_in4=p24;sbit hd=p32;#de

36、fine uint unsigned int#define uchar unsigned charuchar code dis1=黑帶: 條;uchar code dis2=路程: cm; uchar code dis3=時(shí)間: s;uchar code dis4=作者: 0931 王楠;uchar dis53;uchar dis63;uchar dis73;char heidai;uint i;uint miao,num,num1;uint j,quan;uint lucheng;uint ge1,shi1,bai1,ge2,shi2,bai2,ge3,shi3,bai3;void dela

37、yms(uint x)uint i,j; for(i=x;i0;i-) for(j=110;j0;j-);/每次操作由三個(gè)字節(jié)組成void write_cmd(uchar command_data) /寫指令 uchar i; uchar i_data; i_data=0xf8; /第一個(gè):命令控制字,寫指令發(fā)0xf8 cs=1;/cs必須是高電平 sclk=0; for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i_data1; i_data=command_data; i_data&=0xf0;/第二個(gè)字節(jié)的高4位為

38、指令或數(shù)據(jù)的高4位,第二個(gè)字節(jié)的低4位補(bǔ)0 for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i_data1; i_data=command_data; i_data=4;/第三個(gè)字節(jié)的高4位為指令或數(shù)據(jù)的低4位,第三個(gè)字節(jié)的低4位補(bǔ)0 for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i_data1; cs=0; delayms(10); void write_data(uchar command_data) /寫數(shù)據(jù) uchar i; ucha

39、r i_data; i_data=0xfa; cs=1; for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i_data1; i_data=command_data; i_data&=0xf0; for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i_data1; i_data=command_data; i_data=4; for(i=0;i8;i+) sid=(bit)(i_data&0x80); sclk=0; sclk=1; i_data=i

40、_data1; cs=0; delayms(10); void lcd_pos(uchar x,uchar y)uchar pos;if(x=0) x=0x80;else if(x=1) x=0x90;else if(x=2) x=0x88;else if(x=3) x=0x98;pos=x+y;write_cmd(pos);void lcd_init()write_cmd(0x30);delayms(5);write_cmd(0x0c);delayms(5);write_cmd(0x01);delayms(5);void display1()lcd_pos(0,0);i=0;while(di

41、s1i!=0) write_data(dis1i); i+;lcd_pos(1,0); i=0;while(dis2i!=0) write_data(dis2i); i+;lcd_pos(2,0);i=0;while(dis3i!=0) write_data(dis3i); i+;lcd_pos(3,0);i=0;while(dis4i!=0) write_data(dis4i); i+; void display()uint k;lcd_pos(0,3);bai1=heidai/100;shi1=heidai%100/10;ge1=heidai%10;dis50=bai1+0x30;/dis

42、50=bai1+0;dis51=shi1+0x30;dis52=ge1+0x30;for(k=0;k3;k+) write_data(dis5k);lcd_pos(1,3);bai2=lucheng/100;shi2=lucheng%100/10;ge2=lucheng%10;dis60=bai2+0x30;dis61=shi2+0x30;dis62=ge2+0x30;for(k=0;k3;k+) write_data(dis6k); lcd_pos(2,3);bai3=miao/100;shi3=miao%100/10;ge3=miao%10;dis70=bai3+0x30;dis71=sh

43、i3+0x30;dis72=ge3+0x30;for(k=0;k3;k+) write_data(dis7k);void main()lcd_init();ea=1;tmod=0x11;th0=(65535-50000)/256;tl0=(65535-50000)%256;th1=(65535-50000)/256;tl1=(65535-50000)%256;et0=1;et1=1;tr0=1;ex0=1;it0=1;ex1=1;it1=1;display1();while(1)switch(heidai) case 0: case 1: case 2: case 4: case 5:dj_in1=1;dj_in2=0;dj_in3=0;dj_in4=1;break; case 3:dj_in1=1;dj_in2=0;dj_in3=0;dj_in4=1;delayms(100);dj_in1=0;dj_in

溫馨提示

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

評(píng)論

0/150

提交評(píng)論