畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的出租車?yán)锍瘫碓O(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的出租車?yán)锍瘫碓O(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的出租車?yán)锍瘫碓O(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的出租車?yán)锍瘫碓O(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的出租車?yán)锍瘫碓O(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(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、目 錄1緒論12總體硬件電路22.1硬件設(shè)計(jì)原理22.2系統(tǒng)總體概述23硬件模塊設(shè)計(jì)43.1速度傳感測(cè)量模塊43.1.1霍爾傳感器設(shè)計(jì)原理43.1.2霍爾傳感器簡(jiǎn)介43.1.3傳感器原理圖設(shè)計(jì)53.2單片機(jī)最小系統(tǒng)模塊73.2.1單片機(jī)at89s52簡(jiǎn)介73.2.2單片機(jī)at89s52功能特性73.2.3單片機(jī)最小系統(tǒng)原理圖83.2.4單片機(jī)at89s52編程方法93.3液晶顯示模塊93.3.1液晶lcd1602參數(shù)93.3.2液晶原理圖設(shè)計(jì)113.4掉電存儲(chǔ)模塊113.4.1主要參數(shù)113.4.2硬件原理圖123.5鍵盤模塊133.6聲光報(bào)警模塊134系統(tǒng)軟件設(shè)計(jì)144.1系統(tǒng)程序總體流程圖

2、144.2主要模塊程序設(shè)計(jì)154.2.1頻率測(cè)量模塊程序設(shè)計(jì)154.2.2液晶顯示程序的設(shè)計(jì)174.2.3速度、里程計(jì)算程序的設(shè)計(jì)175結(jié)束語(yǔ)18參考文獻(xiàn)19附錄20致謝23摘要汽車是現(xiàn)代生活中不可或缺的一種重要交通工具,里程表又是汽車不可缺少的部分,傳統(tǒng)的車速表是機(jī)械式的,這種里程表簡(jiǎn)單實(shí)用,被廣泛應(yīng)用于各種類型汽車上。隨著電子技術(shù)發(fā)展,現(xiàn)在很多轎車已經(jīng)使用電子車速表。新概念的速度里程表最大的變化就是用大屏幕的液晶代替了以前的指針式表盤,直接用數(shù)字顯示,速度,里程,以及其他一些比如油耗,時(shí)鐘等參數(shù),最直觀的呈現(xiàn)給用戶。本設(shè)計(jì)采用單片機(jī)實(shí)現(xiàn)的里程表,是從變速器上的速度傳感器獲取信號(hào),通過(guò)脈沖頻

3、率的變化來(lái)獲取速度和里程。本設(shè)計(jì)可嵌入到汽車產(chǎn)品內(nèi)部,取代老式的機(jī)械零件,不僅體積小,功能強(qiáng),而且實(shí)現(xiàn)了智能化,使用方便。關(guān)鍵詞:里程表;單片機(jī);速度傳感器abstractcar is an indispensable modern life is a kind of important traffic tools, milestones is car essential part, the traditional speed is the table, the mechanical odometer is simple, practical, and is widely used in va

4、rious types of cars. as the electronic technology development, now a lot of cars have used the electronic speed table. the new concept of speed milestones the biggest change is a big screen with the liquid crystal replaces the previous pointer type directly dial, with digital display, speed, mileage

5、, and other such as oil consumption, the clock, the most intuitive parameters such as the present to the users. this design uses the single chip microcomputer milestones, the speed sensor from transmission for signal, through the pulse frequency changes to get the speed and mileage. this design can

6、embed to cars, replacing old inside the product of mechanical parts, not only small volume, the function is strong, and realize the intellectualized, easy to use. key words:milestones;mcu;speed sensor1緒論汽車是現(xiàn)代生活中不可或缺的一種重要交通工具,里程表又是汽車不可缺少的部分,傳統(tǒng)的車速表是機(jī)械式的,典型的機(jī)械式里程表連接一根軟軸,軟軸內(nèi)有一根鋼絲纜,軟軸另一端連接到變速器某一個(gè)齒輪上,齒輪旋轉(zhuǎn)

7、帶動(dòng)鋼絲纜旋轉(zhuǎn),鋼絲纜帶動(dòng)里程表罩內(nèi)一塊磁鐵旋轉(zhuǎn),罩圈與指針連接并通過(guò)游絲將指針置于零位,磁鐵旋轉(zhuǎn)速度的快慢引起磁力線大小的變化,平衡被打破,指針因此被帶動(dòng)。這種里程表簡(jiǎn)單實(shí)用,被廣泛應(yīng)用于各種類型汽車上。隨著電子技術(shù)發(fā)展,現(xiàn)在很多轎車已經(jīng)使用電子車速表。本設(shè)計(jì)的出租車?yán)锍瘫碓O(shè)計(jì)以單片機(jī)和速度傳感器為核心。傳感器將不同車速轉(zhuǎn)變成的不同頻率的脈沖信號(hào)輸入到單片機(jī)進(jìn)行控制和計(jì)算,在采用lcd模塊進(jìn)行顯示,使得汽車的速度與里程等數(shù)據(jù)能直接顯示給使用者。該設(shè)計(jì)能實(shí)時(shí)地將所測(cè)的速度與累計(jì)里程數(shù)顯示出來(lái),主要是將傳感器輸入到單片機(jī)的脈沖信號(hào)的頻率(傳感器將不同車速轉(zhuǎn)變成不同頻率的脈沖信號(hào))實(shí)時(shí)地測(cè)量出來(lái),

8、考慮到信號(hào)的衰減、干擾等影響,在信號(hào)送入單片機(jī)前應(yīng)對(duì)其進(jìn)行放大整形,然后通過(guò)單片機(jī)計(jì)算出速度和里程,再將所得的數(shù)據(jù)存儲(chǔ)到串口數(shù)據(jù)存儲(chǔ)器,并由lcd顯示模塊交替顯示所測(cè)速度與里程。本設(shè)計(jì)的里程數(shù)的算法是一種大概的算法(假設(shè)在一定時(shí)間內(nèi)自行車是勻速行進(jìn))。設(shè)計(jì)時(shí),應(yīng)綜合考慮測(cè)速精度和系統(tǒng)反應(yīng)時(shí)間。本設(shè)計(jì)用測(cè)量脈沖頻率來(lái)計(jì)算速度,因而具有較高的測(cè)速精度。在計(jì)算里程時(shí)取了汽車的理想狀態(tài)。實(shí)際中,誤差控制在幾米之內(nèi),相對(duì)于整個(gè)里程來(lái)說(shuō)不是很大。為了保證系統(tǒng)的實(shí)時(shí)性,系統(tǒng)的速度轉(zhuǎn)換模塊和顯示數(shù)據(jù)轉(zhuǎn)bcd碼模塊都采用快速算法。另外,還應(yīng)盡量保證其他子模塊在編程時(shí)的通用性和高效性。本設(shè)計(jì)的速度和里程值采用lc

9、d顯示,并包含兩個(gè)小數(shù)位。2總體硬件電路2.1硬件設(shè)計(jì)原理為了更好的實(shí)現(xiàn)系統(tǒng)得功能,硬件電路的設(shè)計(jì)應(yīng)該遵循以下原則:優(yōu)化硬件電路采用軟件設(shè)計(jì)與硬件設(shè)計(jì)相結(jié)合的方法;盡管采用軟件來(lái)實(shí)現(xiàn)硬件系統(tǒng)的功能時(shí),也許響應(yīng)時(shí)間會(huì)比單純使用硬件時(shí)長(zhǎng),而且還要占用微處理器(mcu)的時(shí)間;但是,用軟件實(shí)現(xiàn)硬件的功能可以簡(jiǎn)化硬件結(jié)構(gòu),提高電路的可靠性。所以,在設(shè)計(jì)本系統(tǒng)得時(shí)候,在滿足可靠性和實(shí)時(shí)性的前提下,盡可能的通過(guò)軟件來(lái)實(shí)現(xiàn)硬件功能??煽啃约翱垢蓴_設(shè)計(jì)根據(jù)可靠性設(shè)計(jì)理論,系統(tǒng)所用芯片數(shù)量越少,系統(tǒng)的平均無(wú)故障時(shí)間越長(zhǎng)。而且,所用芯片數(shù)量越少,地址和數(shù)據(jù)總線在電路板上受干擾的可能性也就越小。因此,系統(tǒng)的設(shè)計(jì)思想

10、是在滿足功能的情況下力爭(zhēng)使用較少數(shù)量的芯片。靈活的功能擴(kuò)展功能擴(kuò)展是否靈活是衡量一個(gè)系統(tǒng)優(yōu)劣的重要指標(biāo)。一次設(shè)計(jì)往往不能完全考慮到系統(tǒng)的各個(gè)方面,系統(tǒng)需要不斷完善以及進(jìn)行功能升級(jí)。進(jìn)行功能擴(kuò)展時(shí),應(yīng)該在原有設(shè)計(jì)的基礎(chǔ)上,通過(guò)修改軟件程序和少量硬件完成。對(duì)于本系統(tǒng)而言,就是要求在系統(tǒng)硬件不變的情況下,能夠通過(guò)修改軟件程序,完成功能的升級(jí)和擴(kuò)展。根據(jù)第提出的系統(tǒng)設(shè)計(jì)方案,結(jié)合以上三條原則,確定了系統(tǒng)硬件的設(shè)計(jì)。出租車?yán)锍瘫碇饕梢韵乱恍┕δ苣K構(gòu)成:鍵盤模塊、lcd液晶顯示屏模塊、掉電存儲(chǔ)模塊、里程檢測(cè)模塊、聲光報(bào)警模塊等。該系統(tǒng)的硬件設(shè)計(jì)采用了模塊化的設(shè)計(jì)方法。at89s52單片機(jī)、lcd液晶顯

11、示電路、里程檢測(cè)單元是整個(gè)電路的核心,它們實(shí)現(xiàn)系統(tǒng)的功能要求。2.2系統(tǒng)總體概述本系統(tǒng)由信號(hào)采集處理模塊、單片機(jī)at89s52、系統(tǒng)化lcd顯示模塊、聲光報(bào)警模塊、掉電存儲(chǔ)模塊、系統(tǒng)軟件組成。其中信號(hào)采集處理模塊以霍爾傳感器為核心的速度傳感器,將不同的轉(zhuǎn)速信號(hào)轉(zhuǎn)換成相應(yīng)的脈沖信號(hào),并送到單片機(jī)的外部中斷0引腳;對(duì)單片機(jī)進(jìn)行設(shè)置,使內(nèi)部的定時(shí)器/計(jì)數(shù)器timer0工作在定時(shí)狀態(tài),timer1工作在計(jì)數(shù)狀態(tài),利用內(nèi)部定時(shí)器t0對(duì)脈沖輸入引腳外部中斷0進(jìn)行控制,這樣就能精確地檢測(cè)到設(shè)定時(shí)間內(nèi)加到外部中斷0引腳的脈沖數(shù),一個(gè)脈沖即代表著車子前進(jìn)一個(gè)輪長(zhǎng),對(duì)脈沖數(shù)進(jìn)行處理就可得到里程和速度的數(shù)據(jù);將數(shù)據(jù)

12、送到lcd1602顯示模塊進(jìn)行顯示;如果速度超過(guò)一定的設(shè)定值,將實(shí)現(xiàn)聲光報(bào)警。根據(jù)系統(tǒng)功能要求,首先要進(jìn)行的是總體方案的設(shè)計(jì)于論證,構(gòu)思一個(gè)符合實(shí)際要求的系統(tǒng),經(jīng)過(guò)驗(yàn)證后,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。該系統(tǒng)由速度傳感測(cè)量模塊、鍵盤模塊、lcd顯示模塊、掉電存儲(chǔ)模塊、聲光報(bào)警模塊和單片機(jī)小系統(tǒng)構(gòu)成。功能選擇后啟動(dòng)測(cè)量,大片及實(shí)時(shí)采集、處理后顯示。單片機(jī)鍵盤控制里程檢測(cè)單元掉電存儲(chǔ)單元lcd顯示聲光報(bào)警圖 1 系統(tǒng)總體結(jié)構(gòu)框圖3硬件模塊設(shè)計(jì)3.1速度傳感測(cè)量模塊3.1.1霍爾傳感器設(shè)計(jì)原理霍爾效應(yīng):1879年e.h.霍爾發(fā)現(xiàn),如果對(duì)位于磁場(chǎng)(b)中的導(dǎo)體(d)施加一個(gè)電壓(v),該磁場(chǎng)的方向垂直于所施

13、加電壓的方向,那么則在既與磁場(chǎng)垂直又和所施加電流方向垂直的方向上會(huì)產(chǎn)生另一個(gè)電壓(),人們將這個(gè)電壓叫做霍爾電壓,產(chǎn)生的這種現(xiàn)象被稱為霍爾效應(yīng)?;魻栃?yīng)從本質(zhì)上講是運(yùn)動(dòng)的帶電粒子在磁場(chǎng)中受洛侖茲力作用而引起的偏轉(zhuǎn)。當(dāng)帶電粒子(電子或空穴)被約束在固體材料中,這種偏轉(zhuǎn)就導(dǎo)致在垂直電流和磁場(chǎng)的方向上產(chǎn)生正負(fù)電荷的積累,從而形成附加的橫向電場(chǎng)。 通有電流i的金屬或半導(dǎo)體板置于磁感強(qiáng)度為b的均勻磁場(chǎng)中,磁場(chǎng)的方向和電流方向垂直,在金屬板的第三對(duì)表面間就顯示出橫向電勢(shì)差 的現(xiàn)象稱為霍爾效應(yīng)。 就稱為霍爾電勢(shì)差。 實(shí)驗(yàn)測(cè)定,霍爾電勢(shì)差的大小,和電流i及磁感強(qiáng)度b成正比,而與板的厚度d成反比。即霍爾電勢(shì)差。

14、3.1.2霍爾傳感器簡(jiǎn)介霍爾傳感器是對(duì)磁敏感的傳感元件,常用于開(kāi)關(guān)信號(hào)采集的有cs3020、cs3040等,這種傳感器是一個(gè)3端器件,外形與三極管相似,只要接上電源、地,即可工作,輸出通常是集電極開(kāi)路(oc)門輸出,工作電壓范圍寬,使用非常方便。如圖2所示是cs3020的外形圖,將有字面對(duì)準(zhǔn)自己,三根引腳從左向右分別是電源,地,輸出。圖 2 cs3020外形圖使用霍爾傳感器獲得脈沖信號(hào),其機(jī)械結(jié)構(gòu)也可以做得較為簡(jiǎn)單,只要在轉(zhuǎn)軸的圓周上粘上一粒磁鋼,讓霍爾開(kāi)關(guān)靠近磁鋼,就有信號(hào)輸出,轉(zhuǎn)軸旋轉(zhuǎn)時(shí),就會(huì)不斷地產(chǎn)生脈沖信號(hào)輸出。如果在圓周上粘上多粒磁鋼,可以實(shí)現(xiàn)旋轉(zhuǎn)一周,獲得多個(gè)脈沖輸出。在粘磁鋼時(shí)要

15、注意,霍爾傳感器對(duì)磁場(chǎng)方向敏感,粘之前可以先手動(dòng)接近一下傳感器,如果沒(méi)有信號(hào)輸出,可以換一個(gè)方向再試。這種傳感器不怕灰塵、油污,在工業(yè)現(xiàn)場(chǎng)應(yīng)用廣泛。3.1.3傳感器原理圖設(shè)計(jì)霍爾轉(zhuǎn)速傳感器:霍爾轉(zhuǎn)速傳感器的外形圖和與磁場(chǎng)的作用關(guān)系如圖3所示。磁場(chǎng)由磁鋼提供,所以霍爾傳感器和磁鋼需要配對(duì)使用。圖 3 霍爾轉(zhuǎn)速傳感器的外形圖霍爾傳感器檢測(cè)轉(zhuǎn)速示意圖如圖4。在非磁材料的圓盤邊上粘貼一塊磁鋼,霍爾傳感器固定在圓盤外緣附近。圓盤每轉(zhuǎn)動(dòng)一圈,霍爾傳感器便輸出一個(gè)脈沖。通過(guò)單片機(jī)測(cè)量產(chǎn)生脈沖的頻率就可以得出圓盤的轉(zhuǎn)速。圖 4 霍爾傳感器檢測(cè)轉(zhuǎn)速示意圖霍爾電流傳感器本身已經(jīng)存在濾波電路,輸出無(wú)須再加裝濾波,可

16、直接供單片機(jī)的05v的 ad采集或直接送到單片機(jī)的中斷輸入引腳,信號(hào)非常穩(wěn)定,而且抗干擾能力很強(qiáng)。 霍爾電流傳感器反應(yīng)速度一般在7us,不用考慮單片機(jī)循環(huán)判斷的時(shí)間.若在圓盤上貼上多塊磁鋼,則圓盤每轉(zhuǎn)一圈,輸出的脈沖信號(hào)將相應(yīng)增加,單位時(shí)間內(nèi)測(cè)到的脈沖數(shù)將增多,測(cè)出的轉(zhuǎn)速也將更加精細(xì)。本設(shè)計(jì)建模時(shí)采用一個(gè)圓盤上貼一個(gè)磁鋼進(jìn)行模擬。實(shí)際制作中可以貼上多塊磁鋼,即可以克服因車輪轉(zhuǎn)速太慢而在設(shè)定時(shí)間內(nèi)測(cè)不到脈沖的問(wèn)題。根據(jù)系統(tǒng)要求設(shè)計(jì)原理圖如圖5所示:圖 5 傳感器原理圖設(shè)計(jì)3.2單片機(jī)最小系統(tǒng)模塊3.2.1單片機(jī)at89s52簡(jiǎn)介單片機(jī)是為了工業(yè)控制需要滿足而誕生的,是自動(dòng)控制系統(tǒng)的核心部件,因而

17、也主要用于工業(yè)控制、智能化儀器儀表、家用電器中。它具有體積小,功能多、價(jià)格低、使用方便、系統(tǒng)設(shè)計(jì)靈活等優(yōu)點(diǎn),應(yīng)用領(lǐng)域不斷擴(kuò)大,除了工業(yè)控制,智能化儀表,通訊,家用電器外,在智能化高檔電子玩具產(chǎn)品中也大量采用單片機(jī)芯片作為核心控制部件。單片機(jī)at89s52實(shí)物圖如圖5所示:圖 6 單片機(jī)at89s523.2.2單片機(jī)at89s52功能特性at89s52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)flash,256字節(jié)ram,32位i/o口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。此外,at89s52可降至0hz靜態(tài)邏輯操作,支持2種軟件可選

18、擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8位微控制器8k字節(jié)在系統(tǒng)可編程flash。同時(shí)該芯片還具有pdip、tqfp和plcc等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。下面是at89s52的pdip的封裝圖如圖7所示:圖 7 單片機(jī)at89s52的pdip封裝圖3.2.3單片機(jī)最小系統(tǒng)原理圖單片機(jī)能正常運(yùn)行的最少器件構(gòu)成的系統(tǒng),就是單片機(jī)最小系統(tǒng)。at89s52片內(nèi)有4kb的程序存儲(chǔ)器,因此只需要外接晶體振蕩器和復(fù)位電路就可以構(gòu)成最小系統(tǒng)。則設(shè)計(jì)的單

19、片機(jī)最小系統(tǒng)原理圖如圖8所示。該最小系統(tǒng)可供使用的資源有以下4種:由于片外沒(méi)有擴(kuò)展存儲(chǔ)器和外設(shè),p0、p1、p2、p3都可以作為用戶i/o接口使用。片內(nèi)數(shù)據(jù)存儲(chǔ)器有128b,地址空間為00h 7fh。內(nèi)部有4kb程序存儲(chǔ)器,地址空間為0000h 0fffh。有兩個(gè)定時(shí)器/計(jì)數(shù)器t0和t1、一個(gè)全雙工的串行通信接口、5個(gè)中斷源。圖 8 單片機(jī)最小系統(tǒng)3.2.4單片機(jī)at89s52編程方法編程前,須按編程模式表設(shè)置好地址、數(shù)據(jù)及控制信號(hào);順序如下: 在地址線上加上要編程單元的地址信號(hào)。 在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。 激活相應(yīng)的控制信號(hào)。 將端加上+5v編程電壓。 每對(duì)flash存儲(chǔ)陣列寫入一個(gè)

20、字節(jié)或每寫入一個(gè)程序機(jī)密位,加上一個(gè)編程脈沖。每個(gè)字節(jié)寫入周期是自身定時(shí)的,大多數(shù)約為50 。改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)步驟,直到全部文件編程結(jié)束。3.3液晶顯示模塊3.3.1液晶lcd1602參數(shù)主要技術(shù)參數(shù):表 1 液晶lcd1602技術(shù)參數(shù)顯示容量:162個(gè)字符芯片工作電壓:4.55.5v工作電流:ma(5.0v)模塊最佳工作電流:5.0v字符尺寸:2.954.35(wh)mm接口信號(hào)說(shuō)明:表 2 液晶lcd1602引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1vss電源地9d2data i/o2vdd電源正極10 d3data i/o3vl液晶顯示編壓信號(hào)11 d4data i/

21、o4rs數(shù)據(jù)/命令選擇端(h/l)12 d5data i/o5r/w讀寫數(shù)據(jù)選擇端(h/l)13 d6data i/o6e使能信號(hào)14 d7data i/o7d0data i/o15bla背光電源正極8d1data i/o16blk背光電源負(fù)極外形尺寸:圖 9 液晶lcd1602外形尺寸3.3.2液晶原理圖設(shè)計(jì)本設(shè)計(jì)的顯示部分采用lcd1602,該模塊與單片機(jī)的接口電路如圖10所示。lcd1602是8位段碼式液晶顯示模塊,它內(nèi)部集成有l(wèi)cd控制器、lcd驅(qū)動(dòng)器和ram,因而可方便顯示數(shù)據(jù)的編程。圖 10 液晶lcd1602原理圖3.4掉電存儲(chǔ)模塊3.4.1主要參數(shù)特性:與400khz i2總線

22、兼容1.8到6.0伏工作電壓范圍低功耗cmos技術(shù)寫保護(hù)功能當(dāng):wp為高電平時(shí)進(jìn)入寫保護(hù)狀態(tài)頁(yè)寫緩沖器自定時(shí)擦寫周期1,000,000編程/擦除周期可保存數(shù)據(jù)100年8腳dip、soic封裝溫度范圍:商業(yè)級(jí)、工業(yè)級(jí)和汽車級(jí)概述:24c02是一個(gè)2k位串行cmos的,內(nèi)部含有256個(gè)8位字節(jié),24c02運(yùn)用先進(jìn)的cmos技術(shù)實(shí)質(zhì)上減少了器件的功耗,24c02有一個(gè)16字節(jié)頁(yè)寫緩沖器,該器件通過(guò)總線接口進(jìn)行操作,有一個(gè)專門的寫保護(hù)功能。管腳配置:圖 11 24c02管腳配置管腳描述:表3 24c02管腳描述管腳名稱功能a0、a1、a2器件地址選擇sda串行數(shù)據(jù)/地址scl串行時(shí)鐘wp寫保護(hù)vcc+

23、1.8v6.0v工作電壓vss地3.4.2硬件原理圖24c02與單片機(jī)的接口電路及電路設(shè)計(jì)如圖12所示:圖 12 24c02硬件原理圖3.5鍵盤模塊硬件設(shè)計(jì)時(shí),為了更好實(shí)現(xiàn)系統(tǒng)功能,應(yīng)采用軟件設(shè)計(jì)和硬件設(shè)計(jì)相結(jié)合的方法,硬件設(shè)計(jì)時(shí)應(yīng)充分考慮軟件的編寫和優(yōu)化系統(tǒng)反應(yīng)時(shí)間。根據(jù)以上要求,設(shè)計(jì)鍵盤時(shí)不應(yīng)該使用查詢方式,而使用中斷方式,這樣設(shè)計(jì)可以大大優(yōu)化系統(tǒng)反應(yīng)時(shí)間,不用在沒(méi)有按鍵按下時(shí),對(duì)鍵盤進(jìn)行掃描;而只需在有按鍵按下時(shí)進(jìn)入中斷中進(jìn)行處理。根據(jù)系統(tǒng)功能要求,只需在鍵盤上加入一個(gè)四輸入與門,則按鍵原理圖如圖13所示。圖 13 鍵盤原理圖3.6聲光報(bào)警模塊在該設(shè)計(jì)中,當(dāng)速度超過(guò)一定設(shè)定值時(shí),會(huì)發(fā)出聲

24、光報(bào)警。該聲光報(bào)警由8個(gè)不同顏色的發(fā)光二極管和蜂鳴器構(gòu)成;當(dāng)速度超過(guò)設(shè)定值時(shí),不同顏色發(fā)光二極管之間閃爍,同時(shí)蜂鳴器發(fā)出聲音,進(jìn)行報(bào)警,提醒車主車速超過(guò)設(shè)定值。則該設(shè)計(jì)的原理圖如圖14所示。圖 14 聲光報(bào)警模塊電路4系統(tǒng)軟件設(shè)計(jì)4.1系統(tǒng)程序總體流程圖本系統(tǒng)軟件采用模塊化設(shè)計(jì)方法。整個(gè)系統(tǒng)有初始化模塊,頻率測(cè)量模塊,速度,里程顯示模塊,漢字顯示以及其它功能模塊組成。本設(shè)計(jì)中的速度和里程計(jì)算都采取了近似處理。系統(tǒng)軟件總體流程如圖13所示。否是 開(kāi)始初始化顯示漢字 延時(shí)清屏顯示漢字鍵盤控制速度、里程檢測(cè)計(jì)算數(shù)據(jù)存儲(chǔ)速度、里程顯示速度大于設(shè)定值?聲光報(bào)警圖 15 系統(tǒng)軟件總體流程4.2主要模塊程序

25、設(shè)計(jì)4.2.1頻率測(cè)量模塊程序設(shè)計(jì)霍爾傳感器產(chǎn)生的脈沖被送到單片機(jī)的外部中斷0。內(nèi)部定時(shí)/計(jì)數(shù)器timer0工作在定時(shí)狀態(tài),timer1工作在計(jì)數(shù)狀態(tài)。timer0和timer1均工作在模式1。本設(shè)計(jì)中timer0產(chǎn)生0.5秒的定時(shí)。timer1將對(duì)0.5秒內(nèi)對(duì)加到外部中斷0腳的脈沖進(jìn)行計(jì)數(shù)。假設(shè)0.5秒內(nèi)timer1計(jì)數(shù)到n個(gè)脈沖。則圓盤的轉(zhuǎn)動(dòng)頻率為每秒。timer0工作在模式1時(shí),tl0、th0計(jì)數(shù)寄存器各使用8位,而28=256,設(shè)置計(jì)數(shù)初值時(shí),把計(jì)數(shù)起點(diǎn)的值處以256,將余數(shù)放入tl0計(jì)數(shù)寄存器,將商數(shù)放入th0計(jì)數(shù)寄存器。本設(shè)計(jì)所采用12mhz的晶振,定時(shí)器所計(jì)數(shù)的脈沖的周期為1us

26、。設(shè)計(jì)每50ms產(chǎn)生一次定時(shí)中斷,需計(jì)數(shù)50000個(gè)脈沖,則裝入計(jì)數(shù)寄存器的計(jì)數(shù)初值為65536-50000=15536,裝入th0計(jì)數(shù)寄存器的初值為15536/256=60(03ch), 裝入tl0計(jì)數(shù)寄存器的初值為176(0b0h)。程序流程圖如下圖14所示:f1=0timer0中斷子程序開(kāi)始初始化設(shè)定計(jì)數(shù)器初值,并啟動(dòng)定時(shí)器賦初值,并啟動(dòng)f1=0?是否40h加140h=9 ?否是停止計(jì)數(shù),取出計(jì)數(shù)值將計(jì)數(shù)值累加到data2cy=0 ?是否data3加1返回主程序主程序timer關(guān)閉定時(shí)器f1=1返回圖 16 頻率測(cè)量模塊流程圖4.2.2液晶顯示程序的設(shè)計(jì)本設(shè)計(jì)中速度、里程的數(shù)據(jù)由液晶顯示

27、模塊顯示,所用的液晶顯示模塊是lcd1602,首先必須對(duì)液晶顯示模塊進(jìn)行初始化,編寫相應(yīng)的字庫(kù),編寫讀寫程序等。液晶顯示程序的設(shè)計(jì)包括了初始化程序、清屏程序、寫指令代碼子程序、寫顯示數(shù)據(jù)子程序、讀顯示數(shù)據(jù)子程序、中文顯示子程序、數(shù)字顯示程序以及中文字庫(kù)和數(shù)字字庫(kù)等的編寫。4.2.3速度、里程計(jì)算程序的設(shè)計(jì)本設(shè)計(jì)中霍爾傳感器產(chǎn)生的脈沖被送到單片機(jī)的外部中斷0。內(nèi)部定時(shí)計(jì)數(shù)器timer0工作在定時(shí)狀態(tài),timer1工作在計(jì)數(shù)狀態(tài)。timer0和timer1均工作在模式1。本設(shè)計(jì)中timer0產(chǎn)生0.5秒的定時(shí)。timer1將對(duì)0.5秒內(nèi)對(duì)加到t1腳的脈沖進(jìn)行計(jì)數(shù)。假設(shè)0.5秒內(nèi)timer1計(jì)數(shù)到n

28、個(gè)脈沖。則圓盤的轉(zhuǎn)動(dòng)頻率為。若是將磁鋼貼于汽車的輪軸上,則汽車輪子每轉(zhuǎn)一圈,霍爾器件產(chǎn)生一個(gè)脈沖。對(duì)脈沖頻率進(jìn)行處理,即可轉(zhuǎn)化為車速。對(duì)脈沖數(shù)進(jìn)行累加再乘以輪子的長(zhǎng)度,即可得到里程數(shù)據(jù)。本程序?qū)ζ囘\(yùn)行的實(shí)際情況進(jìn)行模擬。設(shè)計(jì)程序時(shí)可假設(shè)汽車輪子的周長(zhǎng)l,最后在顯示屏顯示的速度單位是km/h,里程單位是km。速度的計(jì)算如下:若0.5秒計(jì)數(shù)到n個(gè)脈沖,則輪子的轉(zhuǎn)動(dòng)頻率為2n,車速為2n2m/s,也即2n23.6km/h 。設(shè)計(jì)中作近似處理。顯示時(shí)先顯示百位,再依次顯示十位、個(gè)位。data2,data3存儲(chǔ)計(jì)數(shù)到的脈沖總數(shù),data2能存儲(chǔ)255個(gè)脈沖,每次計(jì)數(shù)溢出,則data3加1,data3里

29、的數(shù)據(jù)權(quán)重為256.這樣兩個(gè)字節(jié)的數(shù)據(jù)能計(jì)數(shù)最多65536個(gè)脈沖,也即131072 米 。130多公里。實(shí)際制作里程表時(shí)只要適當(dāng)增加數(shù)據(jù)緩沖區(qū)的數(shù)量,即可對(duì)最大顯示里程進(jìn)行擴(kuò)充。程序設(shè)計(jì)過(guò)程中,對(duì)里程數(shù)據(jù)的顯示作了近似處理。5結(jié)束語(yǔ)本設(shè)計(jì)以at89s52為核心,通過(guò)霍爾傳感器來(lái)檢測(cè)汽車的運(yùn)轉(zhuǎn)情況進(jìn)而實(shí)現(xiàn)檢測(cè)汽車的速度,里程的計(jì)算及里程的累計(jì),存儲(chǔ),最后用液晶lcd1602能直觀的將速度與里程顯示給用戶,并且在速度高于一定的值時(shí)可自動(dòng)向用戶報(bào)警,從而達(dá)到智能速度里程表。設(shè)計(jì)的過(guò)程中,遇到的最大問(wèn)題就是時(shí)間相對(duì)而言比較緊湊,主要還是因?yàn)樽约簺](méi)有把時(shí)間把握好,顯得有些手忙腳亂的,本設(shè)計(jì)的成果還遠(yuǎn)遠(yuǎn)沒(méi)有達(dá)到實(shí)際應(yīng)用中需要的理想效果,還可以有許多功能可以添加,如24時(shí)間時(shí)間顯示,手動(dòng)秒表,省電模式(顯示屏無(wú)信號(hào)自動(dòng)關(guān)閉)。通過(guò)這次設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,進(jìn)而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。整個(gè)設(shè)計(jì)過(guò)程可以說(shuō)不是很順利,因?yàn)橛泻芏嘀R(shí)已經(jīng)淡忘,還有很多新的東西沒(méi)有掌握,所以這次設(shè)計(jì)在不斷的復(fù)習(xí)、學(xué)習(xí)中度過(guò),使我受益匪淺,也使我對(duì)單片機(jī)的運(yùn)用有了進(jìn)一步的了解和掌握,也為

溫馨提示

  • 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)論