出租車(chē)計(jì)價(jià)器畢業(yè)論文設(shè)計(jì)說(shuō)明_第1頁(yè)
出租車(chē)計(jì)價(jià)器畢業(yè)論文設(shè)計(jì)說(shuō)明_第2頁(yè)
出租車(chē)計(jì)價(jià)器畢業(yè)論文設(shè)計(jì)說(shuō)明_第3頁(yè)
出租車(chē)計(jì)價(jià)器畢業(yè)論文設(shè)計(jì)說(shuō)明_第4頁(yè)
出租車(chē)計(jì)價(jià)器畢業(yè)論文設(shè)計(jì)說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

.⑤LED顯示屏中的單個(gè)元素的反應(yīng)速度也比LCD液晶屏快很多,快了1000倍左右,這樣不僅可以在強(qiáng)光下看得清楚,而且還可以適應(yīng)零下40攝氏度的低溫。簡(jiǎn)而言之,LED與LCD是兩種不同類(lèi)型的顯示技術(shù),LED顯示屏是由發(fā)光二極管排列組成的,LCD顯示屏則是由液態(tài)晶體組成的。因?yàn)樵谠O(shè)計(jì)上要有單價(jià)〔2位、路程〔2位、總金額〔3位顯示輸出,加上另外擴(kuò)展的時(shí)鐘顯示〔包含時(shí)分秒的顯示,如果采用LCD液晶斷碼顯示的話,在距離頻幕一米之外就無(wú)法看清數(shù)據(jù),影響出租車(chē)司機(jī)和乘客的查看,不能滿足要求,而且在白天其對(duì)比度也不能夠滿足要求,因此采用6位LED數(shù)碼管的分頻顯示。LED顯示器是由發(fā)光二極管顯示字段的單片機(jī)輸出設(shè)備。單片機(jī)應(yīng)用系常采用7段LED數(shù)碼管作為顯示器,這種顯示器具有耗電低、配置靈活、線路簡(jiǎn)單、安裝方便、耐振動(dòng)、價(jià)格低廉且壽命長(zhǎng)等優(yōu)點(diǎn),因此廣泛應(yīng)用。在單片機(jī)的應(yīng)用系統(tǒng)中,動(dòng)態(tài)掃描顯示和靜態(tài)顯示是顯示器常用的兩種顯示方法。每一個(gè)顯示器都需要占用單獨(dú)的并且具有鎖存功能的I/O接口來(lái)用于筆畫(huà)段字形代碼,這就是靜態(tài)顯示。這樣單片機(jī)只需要把需要顯示的字形代碼直接發(fā)送到接口電路就可以了,等到需要顯示新的數(shù)據(jù)的時(shí)后,然后再繼續(xù)發(fā)送新的字形碼,所以單片機(jī)使用靜態(tài)掃描的方法的話,CPU的開(kāi)銷(xiāo)較小、編程也比較簡(jiǎn)單,更便于監(jiān)視和控制,缺點(diǎn)是占用的接口線多,硬件電路也比較復(fù)雜,成本也相對(duì)要高。而所謂的動(dòng)態(tài)顯示就是利用單片機(jī)依次輸出每一位數(shù)碼管的段選碼和對(duì)應(yīng)于該位數(shù)碼管的位選控制信號(hào),一位一位輪流點(diǎn)亮各段數(shù)碼管[20]。LED數(shù)碼顯示器可以分為共陰極和共陽(yáng)極兩種結(jié)構(gòu),共陰極結(jié)構(gòu)就是將所有的發(fā)光二極管的陰極接在一起,共陽(yáng)極結(jié)構(gòu)則相反為將所有的發(fā)光二極管的陽(yáng)極接在一起,在出租車(chē)計(jì)價(jià)器設(shè)計(jì)中,我采用的是共陽(yáng)極動(dòng)態(tài)顯示方式,其結(jié)構(gòu)如下圖3.5所示。abcdefgdp圖3.5共陽(yáng)極結(jié)構(gòu)圖所以根據(jù)設(shè)計(jì)要求,我將數(shù)碼管顯示電路設(shè)計(jì)如圖3.6所示。圖3.6數(shù)碼管顯示電路在上圖3.6數(shù)碼管顯示電路中,數(shù)碼管的A、B、C、D、E、F、G、DP為數(shù)碼管的數(shù)據(jù)位接口,我們將它們與單片機(jī)的P0口相連接,數(shù)碼管的1、2、3、4、5、6為數(shù)碼管的位選接口,我們將它們與單片機(jī)的P1.0、P1.1、P1.2、P1.3、P1.4、P1.5相連接,因?yàn)?1單片機(jī)的特殊結(jié)構(gòu),P0口為集電極開(kāi)路〔集電極開(kāi)路的原因:因?yàn)樘幱诠?jié)能的的考慮,我們有很多的元件的額定電壓是3.3V的,而單片機(jī)的電壓是5V的,這樣我們直接用單片機(jī)的5V電壓去驅(qū)動(dòng)元件的話,會(huì)變得很不方便,所以集電極開(kāi)路,我們?cè)O(shè)置一個(gè)上拉電阻,就可以在上拉電阻中設(shè)置元件的驅(qū)動(dòng)電壓。,不能正常的輸出邏輯電平,所以需要弄一個(gè)上拉電阻,將P0口的輸出信號(hào)通過(guò)一個(gè)電阻鉗位在高電平,這樣我們的數(shù)碼管就可以正常顯示我們的數(shù)字信號(hào)了。3.4AT24C02掉電存儲(chǔ)電路設(shè)計(jì)存儲(chǔ)電路的作用是在電源斷開(kāi)的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息,這樣就不用斷電的時(shí)候每次都要重新進(jìn)行基本信息的設(shè)置。在本次出租車(chē)計(jì)價(jià)器設(shè)計(jì)中,我采用的是AT24C02芯片。AT24C02是一個(gè)2字節(jié)串行CMOSEEPROM,部含有256個(gè)8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實(shí)質(zhì)上減少了器件的功耗。AT24C02具有一個(gè)8字節(jié)的頁(yè)寫(xiě)緩沖器,此器件是通過(guò)IIC總線接口進(jìn)行讀/寫(xiě)操作的,它還具有一個(gè)專(zhuān)門(mén)的寫(xiě)保護(hù)功能[21]。其引腳圖如圖3.7所示。圖3.7AT24C02管腳圖其各引腳的功能如表3.2所示。表3.2AT24C02的管腳功能管腳名稱(chēng)功能A0、A1、A2器件地址選擇SDA串行數(shù)據(jù)/地址SLC串行時(shí)鐘WP寫(xiě)保護(hù)VCC+1.8~6.0V工作電壓GND接地根據(jù)AT24C02各引腳的功能,將掉電存儲(chǔ)電路設(shè)計(jì)如圖3.8所示。圖3.8掉電存儲(chǔ)電路如上圖3.7所示,將地址選擇端口A0、A1、A2接在低電平上,WP也接在低電平上,因?yàn)閃P寫(xiě)保護(hù)是對(duì)高電平有效,如果我們接在高電平上,那樣就不能對(duì)AT24C02進(jìn)行寫(xiě)操作了。因?yàn)锳T24C02要與單片機(jī)相連接,所以我們將AT24C02的SCL和SDA兩個(gè)通信接口接到單片機(jī)的P3.5和P3.6口。R7和R8為上拉電阻,因?yàn)镾DA和SCL都需要和正電源間各接一個(gè)5.1k的電阻上拉。3.5按鍵電路的設(shè)計(jì)單片機(jī)組成的小系統(tǒng)中,有的需要人機(jī)交互的功能,按鍵是最常見(jiàn)的輸入方式。最常見(jiàn)的按鍵電路大致有一對(duì)一的直接連接和動(dòng)態(tài)掃描的矩陣式連接兩種[22]。一對(duì)一的直接連接就是一個(gè)按鍵直接對(duì)應(yīng)一個(gè)CPU的輸入口,這樣的電路簡(jiǎn)單直接,一個(gè)按鍵獨(dú)占一個(gè)端口,在按鍵的數(shù)量較少、端口數(shù)量富裕時(shí)可以直接使用。矩陣式連接就是將按鍵按行列矩陣的方式排列,其中每一行公用一根行線,每一列公用一根列線,這樣就可以大大減少端口數(shù)量,滿足了按鍵多、端口少的情況。根據(jù)出租車(chē)計(jì)價(jià)器應(yīng)該需要有分屏顯示切換功能的開(kāi)關(guān)、白天/晚上切換功能的開(kāi)關(guān)、功能設(shè)定開(kāi)關(guān)和中途等待開(kāi)關(guān),所以我們使用一對(duì)一的直接連接按鍵電路,設(shè)計(jì)4個(gè)開(kāi)關(guān)按鍵,設(shè)計(jì)電路如圖3.9所示。圖3.9按鍵電路S1:分屏顯示按鍵。出租車(chē)在行駛的時(shí)候,顯示屏只顯示總金額和單價(jià)信息,當(dāng)出租車(chē)到達(dá)終點(diǎn)時(shí),可以按下S1鍵,進(jìn)行分屏顯示,顯示出路程信息。S2:功能設(shè)定按鍵??梢园创随I對(duì)出則車(chē)計(jì)價(jià)器進(jìn)行功能設(shè)定。S3:白天/晚上切換按鍵。因?yàn)榘滋旌屯砩系膯蝺r(jià)信息有所不同,等到夜班時(shí),可以按下此鍵對(duì)單價(jià)信息進(jìn)行切換。S4:中途等待開(kāi)關(guān)鍵。當(dāng)遇上紅燈、堵車(chē)等情況時(shí),按下此鍵,開(kāi)始中途等待計(jì)費(fèi)。R1、R2、R3、R4為10k的上拉電阻,因?yàn)樵谠O(shè)計(jì)中,為了防止按鍵不靈敏的情況發(fā)生,所以我們?cè)O(shè)置上拉電阻,這樣就可以增大電路的驅(qū)動(dòng)電流,是增加按鍵的靈敏度。3.6時(shí)鐘電路的設(shè)計(jì)3.6.1DS1302簡(jiǎn)介DS1302是一種實(shí)時(shí)時(shí)鐘芯片,由美國(guó)DALLAS公司推出的,具有高性能、低功耗的特點(diǎn),它附加31Byte靜態(tài)RAM,這種芯片能夠給單片機(jī)系統(tǒng)提供精確的時(shí)間與日期顯示。它采用了CPU和SPI三線接口進(jìn)行同步通信,還可以利用突發(fā)方式一次傳送很多個(gè)字節(jié)的RAM數(shù)據(jù)與時(shí)鐘信號(hào)。實(shí)時(shí)時(shí)鐘可以提供時(shí)、分、秒、日、年、月、星期,如果有一個(gè)月的天數(shù)小于31天的時(shí)候,還可以自動(dòng)的進(jìn)行調(diào)整,而且還具有閏年補(bǔ)償功能[23]。它的工作電壓圍在2.5~5.5V之間,采用了主電源和備用電源兩個(gè)電源供電,不僅可以設(shè)置備用電源的充電方式,還提高了對(duì)備用電源進(jìn)行充電的能力。它所顯示的時(shí)間格式〔24小時(shí)或者12小時(shí)是通過(guò)AM/PM的標(biāo)準(zhǔn)位來(lái)進(jìn)行時(shí)鐘操作決定的。DS1302只需要三根I/O端口線〔串行時(shí)鐘〔SCLK、I/O數(shù)據(jù)線、復(fù)位〔RST就可以與單片機(jī)采用同步串行的通信方式進(jìn)行通信。DS1302工作時(shí)功耗很低,保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí),功耗小于1mW。DS1302在數(shù)據(jù)記錄方面,能夠?qū)崿F(xiàn)把數(shù)據(jù)與顯示數(shù)據(jù)的時(shí)間同時(shí)記錄下來(lái),這樣就對(duì)記錄一些有著特殊意義的數(shù)據(jù)點(diǎn)有很大的用處[24],因此它廣泛的應(yīng)用在我們的測(cè)量系統(tǒng)之中。DS1302的外部引腳圖如圖3.10所示。圖3.10DS1302引腳圖DS1302各個(gè)引腳的功能為:VCC1:主電源。VCC2:備份電源。當(dāng)VCC2>VCC1+0.2V時(shí),由VCC2向DS1302供電,當(dāng)VCC2<VCC1時(shí),由VCC1向DS1302供電;GND:接地;X1,X2:外接32.768kHz的晶振引腳;SCLK:串行時(shí)鐘,輸入,控制數(shù)據(jù)的輸入與輸出;I/O:三線接口時(shí)的雙向數(shù)據(jù)線;RST:復(fù)位/片選線,數(shù)據(jù)傳送需要把RST的輸入驅(qū)動(dòng)置于在高電平。RST有兩種功能控制輸入,第一,RST接通邏輯控制,允許命令序列/地址送入移位寄存器;第二,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作。如果在傳送過(guò)程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí)在VCC32.5V之前,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。3.6.2電路設(shè)計(jì)時(shí)鐘電路一般由晶體振蕩器、晶振控制芯片、和電容組成,所以我們可以將時(shí)鐘電路設(shè)計(jì)如圖3.11所示。圖3.11時(shí)鐘電路VCC1、VCC2接電源,DS1302的RST、SCLK、I/O接口與單片機(jī)的P3.4、P3.5、P3.6相連,DS1302的時(shí)鐘電路所使用的晶振是一個(gè)32.768KHz的晶振,晶振外部不需要額外添加其它的電容或者電阻電路了。3.7電源電路的設(shè)計(jì)考慮到單片機(jī)所需要的工作電壓是+5V電壓,而由于計(jì)價(jià)器的工作條件不是很好,它需要有抗電磁干擾、抗潮濕、抗高低溫、抗振動(dòng)等能力,尤其是在電源方面的干擾,例如在出租車(chē)啟動(dòng)的時(shí)候,由于電瓶充電、發(fā)動(dòng)機(jī)打火等操作會(huì)造成輸入計(jì)價(jià)器的電源不能穩(wěn)定在+5V,所以出租車(chē)提供的電壓是+12V電壓,因此需要采用具有濾波功能的電源穩(wěn)壓芯片7805使之得到穩(wěn)定的+5V輸出電壓,以此來(lái)保證整個(gè)出租車(chē)計(jì)價(jià)器系統(tǒng)能夠在額定電壓下正常工作。設(shè)計(jì)電路圖如圖3.11所示。圖3.12電源模塊設(shè)計(jì)圖在上圖3.12中,因?yàn)槌鲎廛?chē)上的車(chē)載電源為+12V,所以P1為+12V電壓輸出,U1為7805穩(wěn)壓管,將+12V的電壓穩(wěn)壓到+5V,C4為0.33uF,C5為0.1uF,它們是匹配電容,起濾波作用,具體表現(xiàn)為C4為去耦〔濾除輸入信號(hào)的干擾,C5為旁路〔濾除輸出信號(hào)的高頻噪聲。R1為10K,與D1串聯(lián)在一起除了續(xù)流的作用,最主要的還是起電路保護(hù)作用,而且LED還可以用于通電顯示作用。第四章軟件設(shè)計(jì)根據(jù)出租車(chē)計(jì)價(jià)器的功能,在這次設(shè)計(jì)中,將系統(tǒng)分為六大模塊,分別為:主程序模塊、里程中斷程序模塊、定時(shí)中斷程序模塊、中途等待服務(wù)程序模塊、顯示子程序服務(wù)程序模塊、鍵盤(pán)服務(wù)程序模塊。4.1主程序模塊在這個(gè)模塊中,我們需要完成對(duì)出租車(chē)起步的價(jià)格和單價(jià)進(jìn)行初始化、對(duì)各個(gè)接口芯片進(jìn)行初始化設(shè)置、設(shè)計(jì)循環(huán)等待以及對(duì)中斷向量的設(shè)計(jì)、開(kāi)中斷設(shè)計(jì)等工作。此外,在主程序模塊之中還需要對(duì)里程寄存器和價(jià)格寄存器、設(shè)置啟動(dòng)/清除標(biāo)志寄存器進(jìn)行設(shè)置和初始化。接著,主程序?qū)?huì)根據(jù)各個(gè)寄存器的容,來(lái)分別完成計(jì)算價(jià)格、計(jì)算路程、清除、啟動(dòng)等不同的操作。當(dāng)按下按鍵S1的時(shí)時(shí)候,單片機(jī)就會(huì)啟動(dòng),然后開(kāi)始計(jì)價(jià),通過(guò)計(jì)算里程寄存器里面的容來(lái)判斷目前行駛的路程是不是已經(jīng)超過(guò)了設(shè)置的起步價(jià)格的里程。沒(méi)有超過(guò),則保持目前的單價(jià)不變,假如超過(guò),就要根據(jù)目前行駛的路程、起步價(jià)格和起步的路程、每千米需要的金額來(lái)計(jì)算出當(dāng)前的乘車(chē)費(fèi)用,然后再將這個(gè)結(jié)果存儲(chǔ)在價(jià)格寄存器當(dāng)中,接著就會(huì)把當(dāng)前的乘車(chē)費(fèi)用和所行駛的路程通過(guò)LED數(shù)碼管顯示電路來(lái)顯示給出租車(chē)司機(jī)和乘客看。等到到達(dá)目的地的時(shí)候,出租車(chē)停車(chē),車(chē)輪不再轉(zhuǎn)動(dòng),這樣霍爾傳感器A44E就不會(huì)產(chǎn)生低電平,單片機(jī)的P3.2口就接受不到脈沖信號(hào),于是計(jì)價(jià)停止,LED顯示屏顯示當(dāng)前的乘車(chē)費(fèi)用和行駛的路程,等到再次有乘客時(shí),按下復(fù)位開(kāi)關(guān)按鍵,系統(tǒng)復(fù)位,顯示清零,并重新初始化進(jìn)行計(jì)價(jià)。主程序圖如圖4.1所示。YNYNNYYNYNYNYN圖4.1主程序流程圖.4.2里程計(jì)數(shù)中斷程序在里程計(jì)數(shù)中斷服務(wù)程序中,車(chē)輪每轉(zhuǎn)一圈〔我們?cè)O(shè)車(chē)輪的周長(zhǎng)是1米,霍爾開(kāi)關(guān)就檢測(cè)并輸出信號(hào),引起單片機(jī)的中斷,對(duì)脈沖計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到1000

次時(shí),也就是1

公里,單片機(jī)就控制將金額自動(dòng)的加增加,送數(shù)據(jù)到相應(yīng)的顯示緩沖單元,并調(diào)用顯示子程序顯示[25]。里程計(jì)數(shù)中斷服務(wù)程序流程圖如下圖4.2所示。開(kāi)始開(kāi)始保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)重置計(jì)數(shù)初值重置計(jì)數(shù)初值中斷1000次中斷1000次NY數(shù)據(jù)送顯示緩沖單元數(shù)據(jù)送顯示緩沖單元調(diào)用顯示子程序調(diào)用顯示子程序恢復(fù)現(xiàn)場(chǎng)并中斷返回恢復(fù)現(xiàn)場(chǎng)并中斷返回圖4.2里程計(jì)數(shù)中斷程序流程圖4.3定時(shí)中斷服務(wù)程序在定時(shí)中斷服務(wù)程序中,每100ms產(chǎn)生一次中斷,當(dāng)產(chǎn)生10次中斷的時(shí)候,也就到了一秒,送數(shù)據(jù)到相應(yīng)的顯示緩沖單元,并調(diào)用顯示子程序?qū)崟r(shí)顯示[26]。定時(shí)中斷服務(wù)程序流程圖如下圖4.3所示。中斷10次N中斷10次Y圖4.3定時(shí)中斷服務(wù)程序流程圖4.4中途等待服務(wù)程序當(dāng)遇到紅燈或者堵車(chē)等情況下導(dǎo)致出租車(chē)停止,霍爾傳感器A44E監(jiān)測(cè)不到信號(hào),單片機(jī)沒(méi)有脈沖計(jì)數(shù),這時(shí)按下S4鍵,啟動(dòng)單片機(jī)的片定時(shí)器,當(dāng)定時(shí)器的計(jì)時(shí)有5分鐘的時(shí)候,就會(huì)在當(dāng)前的乘車(chē)費(fèi)用的基礎(chǔ)上加上中途等待的費(fèi)用,在等待時(shí)間5分鐘之后的每1分鐘會(huì)加上每分鐘的中途等待費(fèi)用。當(dāng)結(jié)束中途等待的時(shí)候,再次按下S4鍵,就會(huì)切換到正常計(jì)價(jià)的狀態(tài)。中途等待服務(wù)程序流程圖如下圖4.3所示:YNYN圖4.4中途等待服務(wù)程序流程圖4.5顯示服務(wù)子程序因?yàn)槭且制溜@示金額、路程、時(shí)間等數(shù)據(jù),所以要用到DP_DIS〔路程單價(jià)顯示子程序、CP_DIS<金額單價(jià)顯示子程序>、HMS_DIS〔時(shí)分秒顯示子程序3個(gè)顯示子程序。顯示服務(wù)程序流程圖如下圖4.5所示。NY圖4.5顯示服務(wù)子程序流程圖.4.6鍵盤(pán)服務(wù)程序鍵盤(pán)服務(wù)程序放在主程序中,采用查詢(xún)的方式,當(dāng)按鍵沒(méi)有按下的時(shí)候,系統(tǒng)就只在主程序中循環(huán),當(dāng)有按鍵按下的時(shí)候,就會(huì)轉(zhuǎn)到該按鍵對(duì)應(yīng)下的子程序中去,處理完子程序后再返回到主程序中繼續(xù)循環(huán)[27]。鍵盤(pán)服務(wù)程序如下圖4.6所示。NYYNNNY、NY圖4.6鍵盤(pán)服務(wù)程序流程圖第五章系統(tǒng)仿真5.1protues簡(jiǎn)介Protues的ISIS是一款Labcenter出產(chǎn)的用于電路仿真的系統(tǒng),可以用來(lái)仿真IC和各種電路[28],還支持單片機(jī)仿真,它的元件庫(kù)齊全,使用也是很方便,對(duì)于我們學(xué)生來(lái)說(shuō),是一個(gè)非常實(shí)用的單片機(jī)軟件仿真系統(tǒng)。該軟件的特點(diǎn):①符合單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn)[29],并且在同一類(lèi)的產(chǎn)品中具有很明顯的優(yōu)勢(shì)。②不僅可以進(jìn)行鍵盤(pán)和LCD系統(tǒng)仿真、SPI調(diào)試器、IC調(diào)試器、RS-232動(dòng)態(tài)仿真、單片機(jī)系統(tǒng)仿真、數(shù)字和模擬電路等等的仿真,還有信號(hào)發(fā)生器、示波器、邏輯分析儀等各種虛擬儀器。③當(dāng)前可以支持的單品機(jī)類(lèi)型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列和很多種外圍芯片。④支持很多個(gè)外圍芯片和存儲(chǔ)器同時(shí)仿真??傊?Protues軟件是一款功能強(qiáng)大并且集SPICE分析和單片機(jī)于一體的單片機(jī)仿真軟件,可以用來(lái)仿真51、AVR、PIC。5.2KeilC51簡(jiǎn)介Keil

C51是一個(gè)編譯程序的軟件,是單片機(jī)C語(yǔ)言的主要編譯工具[30]。KeilC51集成開(kāi)發(fā)環(huán)境的主要功能有以下幾點(diǎn):RTX-51實(shí)時(shí)操作系統(tǒng):使實(shí)時(shí)應(yīng)用軟件項(xiàng)目的設(shè)計(jì)變得簡(jiǎn)化了。C5交叉編譯器:可以從C源代碼中產(chǎn)生目標(biāo)模塊,這個(gè)目標(biāo)模塊可以重定位。LIB51庫(kù)管理器:可以從目標(biāo)模塊中生成庫(kù)文件,這個(gè)庫(kù)文件可以被連接器使用。BL51器/定位器:通過(guò)組合目標(biāo)模塊從而生成絕對(duì)的目標(biāo)模塊。A51宏匯編器:從89C51匯編源代碼之中產(chǎn)生可以重定位的目標(biāo)模塊。HEX格式的轉(zhuǎn)換器:可以輸出一個(gè)Hex文件。μVision4forWindows:是一個(gè)集成開(kāi)發(fā)環(huán)境,它將項(xiàng)目管理、程序調(diào)試、源代碼編輯等組合在一個(gè)功能強(qiáng)大的環(huán)境中。μVision4支持所有的Keil89C51的工具軟件,其中包括C51宏匯編器、編譯器、器/定位器和目標(biāo)文件至HEX格式轉(zhuǎn)換器,μVision4可以自動(dòng)地完成編譯、匯編、程序等基本的操作。還可以在編譯之后進(jìn)行模擬仿真調(diào)試,清楚的顯示出每個(gè)變量的變化[31]。5.3系統(tǒng)仿真原理圖本設(shè)計(jì)的軟件都是在

Keil

μVision4上進(jìn)行編寫(xiě),編譯,調(diào)試以及運(yùn)行操作。

單片機(jī)仿真軟件在線調(diào)試—PROTEUS:打開(kāi)Proteus軟件。

2.選擇file菜單下的

open

design選項(xiàng),找到所需的元器件,元器件上單擊右鍵選中,再單擊左鍵對(duì)其進(jìn)行命名和賦值,接著在編輯器左邊的一欄中,找出并繪制設(shè)計(jì)所要的各種元器件,按照電路圖連接后并保存。

3.將用keil編譯產(chǎn)生的hex文件下載到單片機(jī)中:雙擊51單片機(jī),在對(duì)話框中把保存過(guò)的hex文件打開(kāi),再單擊確定。4.單擊左下角運(yùn)行按鈕,進(jìn)行軟件仿真調(diào)試,直到出現(xiàn)正確的結(jié)果[32]。

下圖5.1則是通過(guò)在Keil

C中編譯通過(guò),并生成Hex文件,在PROTEUS中仿真通過(guò)的系統(tǒng)原理圖。圖5.1系統(tǒng)仿真原理圖因?yàn)樵诜抡嬷?我們無(wú)法像在實(shí)際生活中樣,將霍爾傳感器安裝在車(chē)輪里,所以我們?cè)趩纹瑱C(jī)的P3.2口接入信號(hào)源,進(jìn)行模擬仿真。根據(jù)霍爾傳感器在靠近磁場(chǎng)時(shí),會(huì)產(chǎn)生一個(gè)低電平,觸發(fā)單片機(jī)產(chǎn)生中斷,所以我們控制信號(hào)源低電平的數(shù)量,從而實(shí)現(xiàn)中斷的次數(shù)。如上圖5.1所示,由左向右,由上到下,分別為:復(fù)位電路、掉電存儲(chǔ)電路、6位7段數(shù)碼管顯示電路、晶振電路、單片機(jī)、接P3.2口相接的矩形波信號(hào)源、時(shí)鐘電路、按鍵電路。5.4仿真結(jié)果假設(shè)車(chē)輪的周長(zhǎng)為1米,車(chē)輪每轉(zhuǎn)一次,單片機(jī)P3.2口則接受一次低電平,引起一次中斷,所以中斷1000次就是1km。白天計(jì)價(jià):3km〔含3km以6.0元,3km以外,每千米2.0元。晚上計(jì)價(jià):3km〔含3km以7.0元,3km以外,每千米2.4元。5.4.1復(fù)位顯示仿真按下復(fù)位開(kāi)關(guān)RESET,單片機(jī)進(jìn)行復(fù)位操作,數(shù)碼管顯示初始值,仿真圖如下圖5.2所示。圖5.2復(fù)位顯示仿真圖在上圖5.2復(fù)位顯示仿真圖中,數(shù)碼管左邊三位作為路程顯示,按下復(fù)位鍵后顯示結(jié)果為00.0〔km,數(shù)碼管右三位作為總金額顯示,按下復(fù)位鍵后顯示結(jié)果為00.0〔元。5.4.2時(shí)鐘顯示仿真結(jié)果按下分屏顯示按鍵S1,則進(jìn)行時(shí)鐘分屏顯示,仿真結(jié)果如圖5.3所示。圖5.3時(shí)鐘顯示仿真圖在上圖5.3時(shí)鐘顯示仿真圖中,數(shù)碼管左邊兩位是小時(shí)數(shù),數(shù)碼管中間兩位是分鐘數(shù),數(shù)碼管右邊兩位是秒數(shù),所以現(xiàn)在的時(shí)間是17點(diǎn)18分20秒。5.4.3白天仿真結(jié)果我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出1800個(gè)低電平,這樣單片機(jī)則中斷1800次,相當(dāng)于行駛了1.8km,仿真結(jié)果如下圖5.4所示圖5.4白天1.8km仿真結(jié)果圖因?yàn)橹袛?800次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了1.8km,根據(jù)白天的計(jì)價(jià),3km以,價(jià)格為6.0元,在上圖5.4中,數(shù)碼管顯示行駛路程1.8km,顯示金額為06.0元,所以仿真結(jié)果與實(shí)際一致。.我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出2600個(gè)低電平,這樣單片機(jī)則中斷2600次,相當(dāng)于行駛了2.6km,仿真結(jié)果如圖5.5所示。圖5.5白天2.6km仿真結(jié)果圖因?yàn)橹袛?600次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了2.6km,根據(jù)白天的計(jì)價(jià),3km以,價(jià)格為6.0元,在上圖5.5中,數(shù)碼管顯示行駛路程2.6km,顯示金額為06.0元,所以仿真結(jié)果與實(shí)際一致。.我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出5800個(gè)低電平,這樣單片機(jī)則中斷5800次,相當(dāng)于行駛了5.8km,仿真結(jié)果如圖5.6所示圖5.6白天5.8km仿真結(jié)果圖因?yàn)橹袛?800次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了5.8km,根據(jù)白天的計(jì)價(jià),3km以外,價(jià)格為每公里2.0元,那么總金額為6.0+〔5.8-3*2=11.6元,在上圖5.6中,數(shù)碼管顯示行駛路程5.8km,顯示金額為11.6元,所以仿真結(jié)果與實(shí)際一致。

我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出12500個(gè)低電平,這樣單片機(jī)則中斷12500次,相當(dāng)于行駛了12.5km,仿真如圖5.7所示。圖5.7白天12.5km仿真結(jié)果圖因?yàn)橹袛?2500次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了12.5km,根據(jù)白天的計(jì)價(jià),3km以外,價(jià)格為每公里2.0元,那么總金額為6.0+〔12.5-3*2=25.0元,在上圖5.7中,數(shù)碼管顯示行駛路程12.5km,顯示金額為25.0元,所以仿真結(jié)果與實(shí)際一致。我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出24000個(gè)低電平,這樣單片機(jī)則中斷24000次,相當(dāng)于行駛了24km,仿真如圖5.8所示。圖5.8白天24.0km仿真結(jié)果圖因?yàn)橹袛?4000次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了24.0km,根據(jù)白天的計(jì)價(jià),3km以外,價(jià)格為每公里2.0元,那么總金額為6.0+〔24.0-3*2=48.0元,在上圖5.8中,數(shù)碼管顯示行駛路程24.0km,顯示金額為48.0元,所以仿真結(jié)果與實(shí)際一致。.5.4.4晚上仿真結(jié)果我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出2300個(gè)低電平,這樣單片機(jī)則中斷2300次,相當(dāng)于行駛了2.3km,仿真結(jié)果如圖5.9所示。圖5.9晚上2.3km仿真結(jié)果圖因?yàn)橹袛?300次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了2.3km,根據(jù)晚上的計(jì)價(jià),3km以,價(jià)格為7.0元,在上圖5.9中,數(shù)碼管顯示行駛路程2.3km,顯示金額為07.0元,所以仿真結(jié)果與實(shí)際一致。我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出2800個(gè)低電平,這樣單片機(jī)則中斷2800次,相當(dāng)于行駛了2.8km,仿真結(jié)果如圖5.10所示。圖5.10晚上2.8km仿真結(jié)果圖因?yàn)橹袛?800次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了2.8km,根據(jù)晚上的計(jì)價(jià),3km以,價(jià)格為7.0元,在上圖5.10中,數(shù)碼管顯示行駛路程2.8km,顯示金額為07.0元,所以仿真結(jié)果與實(shí)際一致。.我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出8500個(gè)低電平,這樣單片機(jī)則中斷8500次,相當(dāng)于行駛了8.5km,仿真如圖5.11所示。圖5.11晚上8.5km仿真結(jié)果圖因?yàn)橹袛?500次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了8.5km,根據(jù)晚上的計(jì)價(jià),3km以外,價(jià)格為每公里2.4元,那么總金額為7.0+〔8.5—3*2.4=20.2元,在上圖5.11中,數(shù)碼管顯示行駛路程8.5km,顯示金額為20.2元,所以仿真結(jié)果與實(shí)際一致。.我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出10600個(gè)低電平,這樣單片機(jī)則中斷10600次,相當(dāng)于行駛了10.6km,仿真如圖5.12所示。圖5.12晚上10.6km仿真結(jié)果圖因?yàn)橹袛?0600次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了10.6km,根據(jù)晚上的計(jì)價(jià),3km以外,價(jià)格為每公里2.4元,那么總金額為7.0+〔10.6-3*2.4=25.2元,在上圖5.12中,數(shù)碼管顯示行駛路程10.6km,顯示金額為25.2元,所以仿真結(jié)果與實(shí)際一致。我們通過(guò)控制信號(hào)源,使信號(hào)源發(fā)出18000個(gè)低電平,這樣單片機(jī)則中斷18000次,相當(dāng)于行駛了18.0km,仿真如圖5.13所示。圖5.13晚上18.0km仿真結(jié)果圖因?yàn)橹袛?8000次,車(chē)輪的周長(zhǎng)為1m,車(chē)輪每轉(zhuǎn)動(dòng)一次單片機(jī)就中斷一次,那么這就表示走了18.0km,根據(jù)晚上的計(jì)價(jià),3km以外,價(jià)格為每公里2.4元,那么總金額為7.0+〔18.0-3*2.4=43.0元,在上圖5.13中,數(shù)碼管顯示行駛路程18.0km,顯示金額為43.0元,所以仿真結(jié)果與實(shí)際一致。第六章結(jié)論在本次設(shè)計(jì)中,我成功的完成了出租車(chē)計(jì)價(jià)器的設(shè)計(jì),并且通過(guò)仿真測(cè)試證明該出租車(chē)計(jì)價(jià)器系統(tǒng)是可以運(yùn)用到我們的生活之中的。該計(jì)價(jià)器系統(tǒng)具有以下幾個(gè)功能:1通過(guò)安裝在車(chē)子身上的霍爾傳感器接收信號(hào)從而引起單片機(jī)中斷,能夠準(zhǔn)確的測(cè)量出租車(chē)行駛的距離并且通過(guò)單片機(jī)程序來(lái)計(jì)算出金額;2采用LED數(shù)碼管顯示屏,這樣在1m之外也能夠看清屏幕上顯示的路程和金額數(shù);3有掉電存儲(chǔ)電路,在電源斷開(kāi)的時(shí)候,也能夠存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息,就不用每次斷電重連的時(shí)候就要對(duì)計(jì)價(jià)器重新進(jìn)行單價(jià)設(shè)定了;4通過(guò)按鍵,可以實(shí)現(xiàn)白天和晚上的計(jì)價(jià)切換;5因?yàn)橛袝r(shí)鐘電路,可以準(zhǔn)確的顯示出時(shí)鐘和日期。通過(guò)這個(gè)畢業(yè)設(shè)計(jì),我熟悉了AT89S51單片機(jī)功能及工作特性,掌握其接口擴(kuò)展的方法,采用面向?qū)ο蟮姆椒?分層次、分模塊構(gòu)建設(shè)計(jì)的總體框架。對(duì)霍爾傳感器也有了進(jìn)一步的認(rèn)識(shí),懂得了霍爾傳感器的工作原理,知道了霍爾傳感器將信號(hào)傳送到單片機(jī)的方法。而且也學(xué)會(huì)了數(shù)碼管和時(shí)鐘芯片等等的使用,拓展了基本編程的知識(shí),所以成功的做出了本次畢業(yè)設(shè)計(jì)。但是在其中還不是很完美,系統(tǒng)設(shè)計(jì)還不夠優(yōu)化,還是會(huì)出現(xiàn)許多問(wèn)題,比如有時(shí)候在電路設(shè)計(jì)中忽略了上拉電阻的設(shè)計(jì),影響了我們的仿真調(diào)試,所以在其中需要經(jīng)過(guò)反復(fù)的檢查和修改。還有就是最重要的一點(diǎn),因?yàn)橹R(shí)的欠缺和仿真軟件的限制,我們無(wú)法像在實(shí)際中一樣將等待計(jì)價(jià)這一部分仿真出來(lái),這就是我們這次設(shè)計(jì)中美中不足之處,但是沒(méi)關(guān)系,這就是我今后繼續(xù)努力的動(dòng)力,我相信這次設(shè)計(jì)為我今后的學(xué)習(xí)和工作留下了積極的影響。參考文獻(xiàn)常用參考文獻(xiàn)編寫(xiě)項(xiàng)目和順序規(guī)定如下:[1]友德,志英,涂時(shí)亮.單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn)[M].:復(fù)旦大學(xué),2005.[2]群芳,肖看.單片機(jī)原理接口與應(yīng)用[M].:清華大學(xué),2005.[3]廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)[M]<第3版>.:航空航天大學(xué),2007.[4]馬淑華,王鳳文,美金.單片機(jī)原理與接口技術(shù)[M].:郵電大學(xué),2005.[5]永昌,單片機(jī)外圍電路設(shè)計(jì)[M].:電子工業(yè),2006.[6]鑫,華臻,書(shū)謙.單片機(jī)原理及應(yīng)用[M].電子工業(yè)出版,2005.[7]丁向榮,永平.單片微機(jī)原理與接口技術(shù)[M].:電子工業(yè),2013.[8]林伸茂.8051單片機(jī)徹底研究〔入門(mén)篇[M].:中國(guó)電力,2007.[9]洪永強(qiáng),王一菊,顏黃蘋(píng).微機(jī)原理與接口技術(shù)〔第二版[M].:科學(xué),2009.[10]忠國(guó),剛.單片機(jī)應(yīng)用技能實(shí)訓(xùn)[M].人民郵電,2006.[11]唐文彥.傳感器〔第五版[M].:機(jī)械工業(yè),2014.[12]周真,苑惠娟.傳感器原理與應(yīng)用[M].:清華大學(xué),2011.[13]何希才.傳感器及其應(yīng)用電路[M].:電子工業(yè),2001.[14]金篆芷,王明石.現(xiàn)代傳感技術(shù)[M].:電子工業(yè),1995.[15]強(qiáng)錫富.傳感器[M].:機(jī)械工業(yè),1994.[16]樊尚春,廣玉.現(xiàn)代傳感技術(shù)[M].:航空航天大學(xué),2001.[17]林玉池,曾周末.現(xiàn)代傳感技術(shù)與系統(tǒng)[M].:科學(xué),2009.[18]丁元杰,吳大偉.單片微機(jī)實(shí)題集與實(shí)驗(yàn)指導(dǎo)書(shū)[M].機(jī)械工業(yè),2004.[19]賴(lài)壽宏.微型計(jì)算機(jī)控制技術(shù)[M].:機(jī)械工業(yè),1996.[20]何立民.單片機(jī)高級(jí)教程[M].:航空航天大學(xué),2004.[21]新民.微型計(jì)算機(jī)控制技術(shù)[M].:人民郵電,1999.[22]顧德英.計(jì)算機(jī)控制技術(shù)[M].:郵電大學(xué),2007.[23]朱清慧,鳳蕊,翟天嵩,王志奎.Protues教程--電子線路設(shè)計(jì)制版與仿真[M].:清華大學(xué),2011.[24]風(fēng)元.Protues在單片機(jī)教學(xué)中的應(yīng)用實(shí)例[J].管理學(xué)家,2013.[25]單成祥.傳感器的理論與設(shè)計(jì)基礎(chǔ)及其應(yīng)用[M].:國(guó)防工業(yè),1999.[26]周潤(rùn)景,蔡雨恬.Protues入門(mén)實(shí)用教程〔第二版[M].:機(jī)械工業(yè),2011.[27]董普松.Protues在單片機(jī)系統(tǒng)設(shè)計(jì)中的應(yīng)用[J].現(xiàn)代電子技術(shù),2008.[28]海宴.51單片機(jī)原理及應(yīng)用:基于KeilC與Protues[M].:航空航天大學(xué),2010.[29]賀敬凱.單片機(jī)系統(tǒng)設(shè)計(jì)、仿真與應(yīng)用:基于Keil和Protues仿真平臺(tái)[M].:電子科技大學(xué),2010.[30]丁明亮,唐前輝.51單片機(jī)應(yīng)用設(shè)計(jì)與仿真:基于KeilC與Protues[M].:航空航天大學(xué),2009.[31]偉.單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)例100例:基于PIC+Protues[M].:電子工業(yè),2011.[32]國(guó)鋼.Protues原理圖設(shè)計(jì)與電路仿真就這么簡(jiǎn)單[M].:電子工業(yè),2014.致匆匆忙忙,從大一的稚嫩到大四的成熟,馬上就要畢業(yè),進(jìn)入工作了。畢業(yè)設(shè)計(jì)是將我們四年所學(xué)到的相關(guān)知識(shí)運(yùn)用到實(shí)例之中,在這幾個(gè)月期間無(wú)疑是辛苦的,但是我卻感覺(jué)是我這段時(shí)間過(guò)得最充實(shí)的日子,在這期間,我也是快樂(lè)的,因?yàn)槲矣惺驴勺?有了目標(biāo),就會(huì)朝著目標(biāo)方向去努力、去奮斗。剛接觸這個(gè)設(shè)計(jì)題目的時(shí)候,不知道該怎么去著手,一切都是那么的迷茫,在我們最迷茫的時(shí)候,導(dǎo)師及時(shí)出現(xiàn)在了我們面前,感導(dǎo)師告訴了我們?cè)O(shè)計(jì)的方向和設(shè)計(jì)論文的總體結(jié)構(gòu),讓我們知道該干什么,讓我們從迷茫中解脫出來(lái),為我們指明了設(shè)計(jì)方向。就這樣,我一步一

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論