版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 學(xué)士學(xué)位畢業(yè)設(shè)計(論文)</p><p> 基于單片機(jī)出租車測速計價系統(tǒng)</p><p><b> 學(xué)生姓名:劉銘航</b></p><p> 學(xué) 號:20094073336</p><p><b> 指導(dǎo)教師:孟潔</b></p><p>
2、; 所在學(xué)院:信息技術(shù)學(xué)院</p><p> 專 業(yè):電氣工程及其自動化</p><p><b> 中國·大慶</b></p><p><b> 2013年05月</b></p><p><b> 黑龍江八一農(nóng)墾大學(xué)</b></p>&l
3、t;p> 本科畢業(yè)設(shè)計(論文)任務(wù)書</p><p><b> 摘要</b></p><p> 本次設(shè)計的是出租車測速計價系統(tǒng)。本次設(shè)計出租車計價測速系統(tǒng)不但能實現(xiàn)計價的功能,還可以通過電機(jī)的轉(zhuǎn)動模擬汽車輪胎轉(zhuǎn)動,通過A44E霍爾傳感器對模擬出的輪胎轉(zhuǎn)數(shù)進(jìn)行計數(shù),實現(xiàn)對出租車?yán)锍痰臏y量,間接的獲得車速,并最終計算出總金額。顯示界面采用的是LCD1602液晶
4、屏,其內(nèi)部有復(fù)位電路,時鐘電路,鍵盤電路,空車時可以顯示系統(tǒng)時間,還能實現(xiàn)根據(jù)時鐘芯片自動調(diào)整白天、黑天計價模式,能自動處理中途等待等功能。</p><p> 關(guān)鍵詞: 單片機(jī)AT89S52 1602液晶 出租車計費器 A44E霍爾傳感器</p><p><b> ABSTRACT</b></p><p> This design
5、is a taxi speed valuation system.This design can not only achieve the pricing function, can also be rotated simulation of automobile tire using the rotation of the motor, by the A44E Holzer sensor to simulate tire rotati
6、on pulse induction.it realize the measurement of the taxi mileage, indirect access speed, and finally calculates the total amount. Display use the LCD1602 LCD screen.The internal structure is reset circuit, clock circuit
7、, keyboard circuit. When the empty, it can displ</p><p> Keywords: single-chip AT89S52 LCD1602 Taximeter A44E Holzer sensor</p><p><b> 目錄</b></p><p><b> 摘要
8、I</b></p><p> ABSTRACTII</p><p><b> 前言1</b></p><p><b> 1 緒論2</b></p><p> 1.1國內(nèi)外出租車計價器的研究現(xiàn)狀2</p><p> 1.2國內(nèi)外出租車計價器的發(fā)展趨
9、勢2</p><p> 2出租車計價測速系統(tǒng)的設(shè)計要求與設(shè)計方案3</p><p> 2.1出租車計價測速系統(tǒng)設(shè)計要求3</p><p> 2.2系統(tǒng)主要功能3</p><p> 2.3方案論證與比較4</p><p> 3出租車計價系統(tǒng)的硬件設(shè)計5</p><p> 3
10、.1 單片機(jī)的介紹5</p><p> 3.2 霍爾傳感器簡介7</p><p> 3.3 里程計算、計價單元設(shè)計8</p><p> 3.4 間接測速單元設(shè)計9</p><p> 3.5 時鐘單元設(shè)計9</p><p> 3.5.1 DS1302引腳說明10</p><p&g
11、t; 3.5.2 DS1302控制字和讀寫時序說明11</p><p> 3.5.3 DS1302片內(nèi)寄存器說明12</p><p> 3.6按鍵單元設(shè)計14</p><p> 3.7顯示模塊設(shè)計16</p><p> 3.7.1液晶顯示原理16</p><p> 3.7.2 LCD液晶顯示器的優(yōu)
12、點21</p><p> 3.8 555電機(jī)調(diào)速單元設(shè)計21</p><p> 3.8.1 555定時器的應(yīng)用21</p><p> 3.8.2 555時基電路的電路結(jié)構(gòu)和邏輯功能22</p><p> 4 出租車計價測速系統(tǒng)的軟件設(shè)計25</p><p> 4.1系統(tǒng)主程序設(shè)計25</p&
13、gt;<p> 4.2中斷服務(wù)程序26</p><p> 4.3顯示子程序27</p><p> 4.4鍵盤服務(wù)程序28</p><p> 5系統(tǒng)安裝與調(diào)試29</p><p> 5.1 程序的檢測與調(diào)試29</p><p> 5.1.1程序的查錯手段29</p>&
14、lt;p> 5.1.2源程序的檢測29</p><p> 5.1.3源程序的調(diào)試30</p><p><b> 結(jié)論31</b></p><p><b> 參考文獻(xiàn)32</b></p><p><b> 致謝34</b></p><
15、p><b> 附錄35</b></p><p><b> 前言</b></p><p> 隨著我們國家的經(jīng)濟(jì)水平日益的提高,我們的生活水平也顯著的改善,交通日益完善。汽車也成為了我們平時出行的使用比較普遍的交通工具。雖然我們居民不少都擁有私家車,但是出租車在我們?nèi)粘=煌üぞ咧幸廊徽加兄匾奈恢?。出租車計價器是伴隨著出租車的出現(xiàn)應(yīng)運而
16、生,作為一種衡量司機(jī)和乘客的交易中的公平秤在出租車行業(yè)廣泛的應(yīng)用。</p><p> 近年來,隨著我國出租汽車行業(yè)發(fā)飛速的發(fā)展,出租車已經(jīng)成為了我們工作、生活中不可缺少的交通工具。出租汽車服務(wù)行業(yè)和出租汽車計價器的使用緊密相關(guān)。出租汽車計價器是一種能根據(jù)乘客乘坐汽車行駛距離和等候時間的長度短進(jìn)行計價的一種儀器,同時也可以直接顯示車費值的計量器具。計價器是出租汽車的經(jīng)營者和乘坐出租汽車的消費者之間用于公平交易結(jié)算
17、的工具,因而計價器計價準(zhǔn)確與否,直接關(guān)系到經(jīng)營者和消費者的經(jīng)濟(jì)利益。依據(jù)國家有關(guān)法律、法規(guī),出租汽車計價器是列入國家首批強(qiáng)制檢定的工作計量器具之一,也是近年來國家質(zhì)量技術(shù)監(jiān)督部門強(qiáng)化管理的六類重點計量器具之一。</p><p><b> 1 緒論</b></p><p> 1.1國內(nèi)外出租車計價器的研究現(xiàn)狀</p><p> 出租車行業(yè)在
18、我國是八十年代初興起的一項新興行業(yè),隨著我國國民經(jīng)濟(jì)的高速發(fā)展,出租汽車已成為城市公共交通的重要組成部分。多年來國內(nèi)普遍使用的出租車計價器僅僅具備單一的計量功能。目前全世界的計價器中有90%為臺灣所生產(chǎn)。現(xiàn)在我國生產(chǎn)出租車計價器的企業(yè)有上百家,主要是集中在北京,上海,沈陽和廣州等地。</p><p> 隨著科學(xué)技術(shù)的發(fā)展創(chuàng)新,產(chǎn)生了第二代計價器。它采用了手搖計算機(jī)與機(jī)械結(jié)構(gòu)相結(jié)合的方式,實現(xiàn)了半機(jī)械半電子化。此
19、時它在計程的同時還可以完成計價的工作。</p><p> 大規(guī)模集成電路的發(fā)展又產(chǎn)生出了第三代計價器,也就是全電子化的計價器。它的功能也在不斷完善,當(dāng)單片機(jī)出現(xiàn)并應(yīng)用于計價器后,現(xiàn)代出租車計價器的模型也就基本具備了,它可以完成計程,計價,顯示等基本工作。單片機(jī)以及外圍芯片的不斷發(fā)展促進(jìn)了計價器的發(fā)展。出租車計價器在最初使用時具備的主要功能是根據(jù)行駛里程計價,要求精度高,可靠性好。</p><
20、p> 1.2國內(nèi)外出租車計價器的發(fā)展趨勢</p><p> 大規(guī)模集成電路的發(fā)展又產(chǎn)生了新一代出租車計價器,也就是全電子化的計價器。它的功能也在不斷完善,當(dāng)單片機(jī)出現(xiàn)并應(yīng)用于計價器后,它可以完成計程,計價,顯示等基本工作。單片機(jī)以及外圍芯片的不斷發(fā)展促進(jìn)了計價器的發(fā)展。隨著單片機(jī)性能不斷提高而價格卻不斷下降,單片機(jī)控制得到更廣泛的應(yīng)用,外圍芯片的不斷發(fā)展,使得計價器的功能更加強(qiáng)大,性能更加穩(wěn)定。隨著電子
21、技術(shù)的發(fā)展以及對計價器的不斷改進(jìn)和完善,于是,便產(chǎn)生了諸多的附加功能。例如:(1)LCD顯示功能,液晶屏的使用讓計價器實現(xiàn)多屏顯示的功能,可同時顯示各項營運數(shù)據(jù),使乘客一目了然;(2)永久時鐘功能,在非營運狀態(tài)下,日歷時鐘芯片的使用使計價器可以顯示永久的時鐘;(3)存儲功能,可存儲多項營運數(shù)據(jù),便于查詢。新型數(shù)據(jù)存儲器的應(yīng)用使得計價器的營運數(shù)據(jù)在掉電情況下還可以保存10年之久。</p><p> 2出租車計價測
22、速系統(tǒng)的設(shè)計要求與設(shè)計方案</p><p> 2.1出租車計價測速系統(tǒng)設(shè)計要求</p><p> 設(shè)計一個出租車自動計費測速器,計費包括起步價、行車?yán)锍逃嬞M、等待時間計費等部分,并可以通過電機(jī)轉(zhuǎn)動模擬輪胎轉(zhuǎn)動,用A44E霍爾傳感器對模擬出的輪胎轉(zhuǎn)數(shù)進(jìn)行計數(shù),實現(xiàn)對出租車?yán)锍痰臏y量,間接的獲得車速,用1602液晶顯示總金額,運行時間,暫停時間。同時,在機(jī)器不使用時候顯示系統(tǒng)時間。<
23、/p><p><b> ?。ㄒ唬┗疽?lt;/b></p><p> 不同情況具有不同的收費標(biāo)準(zhǔn)。</p><p> 白天、晚上、途中等待(>3S 開始收費)</p><p> 1、具有數(shù)據(jù)的復(fù)位功能。</p><p> IO 口分配的簡易要求。</p><p>
24、 距離檢測使用霍爾開關(guān)A44E</p><p> 白天/晚上收費標(biāo)準(zhǔn)的轉(zhuǎn)換開關(guān)</p><p> 2、數(shù)據(jù)輸出(采用LCD1602)。 </p><p><b> 單價輸出2位</b></p><p><b> 路程輸出2位</b></p><p>&
25、lt;b> 總金額輸出 3位</b></p><p><b> 3、按鍵。</b></p><p><b> 等待</b></p><p><b> 時鐘調(diào)節(jié)</b></p><p><b> 白天/晚上轉(zhuǎn)換</b></p
26、><p><b> ?。ǘ┌l(fā)揮部分</b></p><p> 能夠獲得行駛總路程,間接獲得車速。</p><p> 能夠顯示當(dāng)前的當(dāng)?shù)貢r間。</p><p><b> 能夠?qū)崿F(xiàn)計價功能。</b></p><p><b> 2.2系統(tǒng)主要功能</b>
27、</p><p> 本課程設(shè)計所設(shè)計的出租車計價器的主要功能有:數(shù)據(jù)的復(fù)位、白天/晚上轉(zhuǎn)換、數(shù)據(jù)輸出、計時計價、單價輸出、路程輸出數(shù)據(jù)信息。輸出采用1602液晶顯示屏。本次設(shè)計的計價車速系統(tǒng)不但能實現(xiàn)基本的計價和間接計算出車速,而且還能根據(jù)白天、黑夜、中途等待來調(diào)節(jié)單價,同時在不計價的時候還能作為時鐘為司機(jī)同志提供方便。</p><p> 2.3方案論證與比較</p>&
28、lt;p> 方案一:采用EDA技術(shù),根據(jù)層次化設(shè)計理論,該設(shè)計問題自頂向下可分為分頻模塊,控制模塊 計量模塊、譯碼和動態(tài)掃描顯示模塊,其系統(tǒng)框圖如圖1所示:</p><p><b> 圖1方案一</b></p><p> 方案二:計價器的單片機(jī)控制方案。它由以下部件組成:AT89C52、總金額及單價顯示部件、鍵盤控制部件,里程計算單元,1302時鐘顯示模塊
29、。</p><p> 利用單片機(jī)豐富的IO端口,實現(xiàn)基本的里程計價功能和價格調(diào)節(jié)、時鐘顯示功能。不但能實現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對系統(tǒng)進(jìn)行升級。如圖2所示: </p><p><b> 圖2方案二</b></p><p> 方案總結(jié):通過各個方案的比較,本次采用方案二,不但控制簡單,而且成本低廉,設(shè)計電
30、路簡單。</p><p> 3出租車計價系統(tǒng)的硬件設(shè)計</p><p> 3.1 單片機(jī)的介紹</p><p> 在眾多的51系列單片機(jī)中,要算 ATMEL公司的AT89C51、AT89S52更實用,因他不但和8051指令、管腳完全兼容,而且其片內(nèi)的4kB程序存儲器是FLASH工藝的,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫,一般專為 ATMEL AT
31、89xx 做的編程器均帶有這些功能。顯而易見,這種單片機(jī)對開發(fā)設(shè)備的要求很低,開發(fā)時間也大大縮短。寫入單片機(jī)內(nèi)的程序還可以進(jìn)行加密,這又很好地保護(hù)了你的勞動成果。AT89C51、AT89S51目前的售價比8031還低,市場供應(yīng)也很充足。AT89C52是一個低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失
32、性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。</p><p> AT89S52有40個引腳,與MCS—51系列單片機(jī)引腳完全兼容</p><p><b> 如圖3所示:</b></p><p> 圖3 AT89S52的引腳結(jié)構(gòu)</p>
33、;<p> AT89S52的引腳功能說明:</p><p> AT89C52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。將其通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。</p>
34、<p> P0口:P0口是一組8 位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時,每位能吸收電流的方式驅(qū)動8個TTL邏輯門電路,對端口P0寫“1”時,可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8 位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash 編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。</p>
35、<p> P1口:P1是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。與AT89C51不同之處是,P1.0 和P1.1 還可分別作為定時/計數(shù)器2 的外部計數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX),F(xiàn)las
36、h 編程和程序校驗期間,P1接收低8 位地址。</p><p> P2口:P2 是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個TTL邏輯門電路。對端口P2寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。Flash 編程或校驗時,P2亦接收高位地址和一些控制信號。<
37、/p><p> P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3口將用上拉電阻。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能P3口還接收一些用于Flash 閃速存儲器編程和程序校驗的控制信號。</p><p> RST:復(fù)
38、位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。</p><p> ALE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE 仍以時鐘振蕩頻率的1/6 輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。對Flash 存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。MOVX和MOVC指令才能將ALE激活
39、。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ALE禁止位無效。</p><p> PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89C52 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。</p><p> EA/VPP:外部訪問允許。欲使CPU僅訪問外部程
40、序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。</p><p> XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 特殊功能寄存器:在AT89C52片內(nèi)存儲器中,80H-FFH共128個單
41、元為特殊功能寄存器(SFE)。</p><p> 3.2霍爾傳感器簡介</p><p> 霍爾傳感器是利用霍爾效應(yīng)實現(xiàn)磁電轉(zhuǎn)換的一種傳感器,它具有靈敏度高,線性度好,穩(wěn)定性高、體積小和耐高溫等特點,在機(jī)車控制系統(tǒng)中占有非常重要的地位。對測速裝置的要求是分辨能力強(qiáng)、高精度和盡可能短的檢測時間。</p><p> 霍爾器件具有許多優(yōu)點,它們的結(jié)構(gòu)牢固,體積小,重量
42、輕,壽命長,安裝方便,功耗小,頻率高(可達(dá)1MHZ),耐震動,不怕灰塵、油污、水汽及鹽霧等的污染或腐蝕。 </p><p> 按照霍爾器件的功能可將它們分為: 霍爾線性器件和霍爾開關(guān)器件 。前者輸出模擬量,后者輸出數(shù)字量。 </p><p> 霍爾線性器件的精度高、線性度好;霍爾開關(guān)器件無觸點、無磨損、輸出波形清晰、無抖動、無回跳、位置重復(fù)精度高(可達(dá)µm級)。取用了各種補(bǔ)償
43、和保護(hù)措施的霍爾器件的工作溫度范圍寬,可達(dá)-55℃~150℃。 </p><p> 按被檢測的對象的性質(zhì)可將它們的應(yīng)用分為:直接應(yīng)用和間接應(yīng)用。前者是直接檢測出受檢測對象本身的磁場或磁特性,后者是檢測受檢對象上人為設(shè)置的磁場,用這個磁場作為被檢測的信息的載體,通過它,將許多非電、非磁的物理量例如力、力矩、應(yīng)力以及工作狀態(tài)發(fā)生變化的時間等,轉(zhuǎn)變成電量來進(jìn)行檢測和控制。</p><p>
44、霍爾傳感器A44E工作原理,A44E集成霍耳開關(guān)由穩(wěn)壓器A、霍耳電勢發(fā)生器(即硅霍耳片)B、差分放大器C、施密特觸發(fā)器D和OC門輸出E 五個基本部分組成。在輸入端輸入電壓,經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍耳電勢發(fā)生器的兩端,根據(jù)霍耳效應(yīng)原理,當(dāng)霍耳片處在磁場中時,在垂直于磁場的方向通以電流,則與這二者相垂直的方向上將會產(chǎn)生霍耳電勢差HV輸出,該HV信號經(jīng)放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到OC門輸出。當(dāng)施加的磁場達(dá)到工作點時,觸發(fā)器
45、輸出高電壓(相對于地電位)使三極管導(dǎo)通,此時OC門輸出端輸出低電壓,通常稱這種狀態(tài)為“開”。當(dāng)施加的磁場達(dá)到釋放點時,觸發(fā)器輸出低電壓,三極管截止,使OC門輸出高電壓,這種狀態(tài)為“關(guān)”。這樣兩次電壓變換,使霍耳開關(guān)完成了一次開關(guān)動作。</p><p> 集成開關(guān)型霍爾傳感器原理如圖4所示。</p><p> 圖4 集成開關(guān)型霍耳傳感器原理圖</p><p>
46、 其集成霍耳開關(guān)外形及接線如圖5所示。</p><p> 圖5 集成霍耳開關(guān)外形及接線</p><p> 3.3 里程計算、計價單元設(shè)計 </p><p> 里程計算是通過安裝在車輪上的霍爾傳感器A44E檢測到的信號,送到單片機(jī),經(jīng)處理計算,送給顯示單元的。其原理如圖6所示(見下頁)。</p><p> 圖6 傳感器測距示意圖<
47、/p><p> 由于A44E 屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(4.5~18V),其輸出的信號符合TTL電平標(biāo)準(zhǔn),可以直接接到單片機(jī)的I/O 端口上,而且其最高檢測頻率可達(dá)到1MHZ。</p><p> 我們選擇了P3.2 口作為信號的輸入端,內(nèi)部采用外部中斷0(這樣可以減少程序設(shè)計的麻煩),車輪每轉(zhuǎn)一圈(我們設(shè)車輪的周長是1 米),霍爾開關(guān)就檢測并輸出信號,引起單片機(jī)的中斷,對
48、脈沖計數(shù),當(dāng)計數(shù)達(dá)到500次時,也就是1 公里,單片機(jī)就控制將金額自動的增加。計算公式如下:3公里以內(nèi),金額=起步價;3公里以外,金額=起步價+(公里數(shù)-3)*單價。例如:設(shè)行駛里程為5里,起步價為6元,超出3公里后按每公里一元收費,則金額=6+(5-3)*1=8(元)</p><p> 3.4 間接測速單元設(shè)計 </p><p> 霍爾傳感器A44E在本次設(shè)計的主要作用是對車輪轉(zhuǎn)動時
49、產(chǎn)生出的脈沖信號采集。車輪每轉(zhuǎn)一周,磁鐵經(jīng)過傳感器兩次?;魻杺鞲衅鰽44E的第3腳就輸出一個脈沖信號作為單片機(jī)AT89S52的外中斷信號,從P3.2口輸入。 P3.2 口作為信號的輸入端,內(nèi)部采用外部中斷0(這樣可以減少程序設(shè)計的麻煩),車輪每轉(zhuǎn)一圈(我們假設(shè)車輪的周長是1 米),霍爾開關(guān)就檢測并輸出信號,引起單片機(jī)的中斷,對脈計數(shù),當(dāng)計數(shù)達(dá)到500 次時,也就是1 公里。單片機(jī)處理計算的接收到的脈沖信號,在顯示屏上顯示出總里程和這段路
50、程花費的總時間,根據(jù)脈沖信號的周期,顯示出的里程數(shù)和這段路程花費的時間間接可得計算出車速。</p><p> 3.5 時鐘單元設(shè)計</p><p> DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、星期、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送
51、多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后備電源雙電源引腳,同時提供了對后背電源進(jìn)行涓細(xì)電流充電的能力。</p><p> 主要特點是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。DS1302的外接晶振采用普通32.768kHz晶振。<
52、;/p><p> 3.5.1 DS1302引腳說明</p><p> DS1302封裝和引腳參照圖如圖7。</p><p> 圖7 DS1302封裝和引腳圖</p><p> DS1302的引腳排列,其中Vcc1為后備電源,Vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。
53、X1和X2是振蕩源,外接32.768kHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc2>2.0V
54、之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK為時鐘輸入端。具體的引腳說明如表1。</p><p> 表1 DS1302引腳功能說明</p><p> 3.5.2 DS1302控制字和讀寫時序說明</p><p> 在編程過程中要注意DS1302的讀寫時序,DS1302
55、是SPI總線驅(qū)動方式,它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。要想與DS1302通信,首先要先了解DS1302的控制字。</p><p> DS1302的控制字如表2:</p><p> 表2 DS1302的控制字節(jié)</p><p> 控制字的作用是設(shè)定DS1302的工作方式,傳送字節(jié)數(shù)等。每次數(shù)據(jù)的傳輸都是由控制字開始[9]。</p&g
56、t;<p> 1. 第7 位:最高有效位,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。</p><p> 2. 第6位:如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù)。</p><p> 3.第5位:(A4~A0)用A4~A0表示,定義片內(nèi)寄存器和RAM的地址。</p><p><b> 其定義如下:</b>&
57、lt;/p><p> 當(dāng)?shù)?位為0時,定義時鐘和其他寄存器的地址。A4~A0=0~6,順序為秒、分、時、日、月、星期、年的寄存器。當(dāng)A4~A0=7,為芯片寫保護(hù)寄存器地址。當(dāng)A4~A0=8,為慢速充電參數(shù)選擇寄存器。當(dāng)A4~A0=31,為時鐘字節(jié)方式選擇寄存器。</p><p> 當(dāng)?shù)?位為1時,定義RAM的地址,A4~A0=0~30,對應(yīng)各子地址的RAM,地址31對應(yīng)的是RAM多字節(jié)方式
58、選擇寄存器。</p><p> 4. 第0位:如果為0,表示進(jìn)行寫操作,為1表示進(jìn)行讀操作。</p><p> 控制字總是從最低位開始輸出。在控制字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302.數(shù)據(jù)輸入從最低位(0位)開始。同樣,在緊跟8位的控制字指令后的下一個SCLK脈沖的下降沿,讀出DS1302的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。</p><
59、p> DS1302的數(shù)據(jù)讀寫方式有兩種,一種是單字節(jié)操作方式,一種是多字節(jié)操作方式。每次僅寫入一個字節(jié)數(shù)據(jù)稱為單字節(jié)操作,每次對時鐘/日歷的8字節(jié)或31字節(jié)RAM進(jìn)行全體寫入或讀出的操作稱為多字節(jié)操作方式。當(dāng)以多字節(jié)方式寫時鐘寄存器時,必須按數(shù)據(jù)傳送的順序依次寫入8個寄存器。但是,當(dāng)以多字節(jié)方式寫RAM時,不必寫所有31字節(jié),不管是否寫了全部31字節(jié),所寫的第一個字節(jié)都將傳送到RAM。</p><p>
60、 為了啟動數(shù)據(jù)的傳輸,CE引腳信號應(yīng)由低變高,當(dāng)把CE驅(qū)動到邏輯1的狀態(tài)時,SCLK必須為邏輯0,數(shù)據(jù)在SCLK的上升沿串行輸入,無論是讀同期還是寫周期,也無論傳送方式是單字節(jié)還是多字節(jié),都要通過控制字指定40字節(jié)的哪個將被訪問,在開始8個時鐘同期把命令字(具有地址和控制信息的8位數(shù)據(jù))裝入移位寄存器之后,另外的時鐘在讀操作時輸出 數(shù)據(jù),在寫操作時輸入數(shù)據(jù),所有的數(shù)據(jù)在時鐘的下降沿變化。所有寫入或讀出操作都是向芯片發(fā)送一個命令字節(jié)。對于
61、單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2個字節(jié),需要16個時鐘,對于時鐘/日歷多字節(jié)模式操作,每次為7個字節(jié),需要72個時鐘,而對于RAM多字節(jié)模式操作,每次則為32字節(jié),需要多達(dá)256個時鐘,這里僅給出單字節(jié)讀寫時序,如圖,多字節(jié)操作方式與其類似,只是且而跟的字不止一個。</p><p> 圖8 DS1302 單字節(jié)讀寫時序</p><p> 3.5.3 DS1302片內(nèi)寄存器說明&l
62、t;/p><p> 通過控制字對DS1302片內(nèi)的寄存器進(jìn)行尋址之后,即可就所選中寄存器的各位進(jìn)行操作。片內(nèi)各寄存器用各位的功能定義如表3(見下頁)</p><p> 表3 片內(nèi)各寄存器各位的功能定義表</p><p> DS1302有關(guān)日歷、時間的寄存器共有10個,時鐘/日歷包含在其中的7個寫/讀寄存器內(nèi),這個寄存器分別是秒、分、小時、日、月、星期和年。<
63、/p><p> 小時寄存器(85H、84H)的位7用于定義DS1302是運行于12小時模式還是24小時模式。當(dāng)為12小時制式時,位5為“0”表示AM,為“1”表示PM。在24小時制式下,位5是第二個10小時位(20~23時)。</p><p> 該硬件電路設(shè)計簡單,抗干擾能力強(qiáng)。AT89C52單片機(jī)P2.2接DS1302的RST端,上電后,AT89C52的P2.2腳自動輸出高電平。P2.0
64、作為串行時鐘接口,P2.1作為時鐘數(shù)據(jù)的I/O。DS1302采用雙電源供電,平時由+5V電源供電,當(dāng)+5V電源之后,由圖中+3V備用電源供電。特別需要注意X1和X2兩端連接的晶振,該晶振頻率為32.768KHz。如圖9所示(見下頁)</p><p> 圖9 單片機(jī)與時鐘芯片DS1302連接圖</p><p><b> 3.6按鍵單元設(shè)計</b></p>
65、<p> 按鍵部分采用6個獨立按鍵,如圖所示。(見下頁)</p><p> 圖10 鍵盤調(diào)整按鍵電路</p><p> K1:在顯示時間的情況下,可以對時間進(jìn)行修改,按一次可以調(diào)節(jié)秒,按下兩次可以調(diào)節(jié)分,依次可以調(diào)節(jié)時,日,月,年。</p><p> K3:可以對年月日 時分秒進(jìn)行增大調(diào)整。</p><p> K4:可
66、以對年月日 時分秒進(jìn)行減小調(diào)整。</p><p> K5:頁面切換顯示鍵,在顯示計費的情況下 ,按下可以顯示時間,在顯示時間的情況下,按下可以顯示計費情況。</p><p> K6:白天 夜晚計費模式切換鍵。</p><p> K7:中途等待按鍵,按鍵按下后,進(jìn)入等待模式,再按下,可以解除等待.</p><p><b> 3
67、.7顯示模塊設(shè)計</b></p><p> 顯示部分要求顯示單價、里程、總金額等各種信息。在應(yīng)用系統(tǒng)中,使用的顯示器主要是LCD(液晶顯示器)。這種顯示器成本低廉,配置靈活。LCD顯示器的工作原理就是利用液晶的物理特性:通電時排列變得有序,使光線容易通過;不通電時排列混亂,阻止光線通過,說簡單點就是讓液晶如閘門般地阻隔或讓光線穿透。液晶屏功能強(qiáng)大,可顯示各種字體的數(shù)字、漢字、圖像,還可以自定義顯示內(nèi)
68、容,顯示內(nèi)容也較豐富;方便操作者讀取信息及一些擴(kuò)展功能的實現(xiàn)。占用系統(tǒng)I/O口較少,有效地節(jié)約系統(tǒng)資源,使整個系統(tǒng)更加人性化。</p><p> 3.7.1液晶顯示原理</p><p> 液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動、易于實現(xiàn)全彩色顯示的特點,目前已經(jīng)被廣泛應(yīng)用在
69、便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動通信工具等眾多領(lǐng)域.其中的字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。下面以長沙太陽人電子有限公司的1602字符型液晶顯示器為例,介紹其用法。一般1602字符型液晶顯示器1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無差別,兩者尺寸差別如圖11所示:&l
70、t;/p><p> 圖11 1602LCD尺寸圖</p><p> 其中1602LCD的主要技術(shù)參數(shù)是:</p><p> 顯示容量:16×2個字符</p><p> 芯片工作電壓:4.5—5.5V</p><p> 工作電流:2.0mA(5.0V)</p><p> 模塊最佳
71、工作電壓:5.0V</p><p> 字符尺寸:2.95×4.35(W×H)mm</p><p> 1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表4所示:</p><p> 表4 各引腳接口說明如表</p><p> 第1腳:VSS為地電源。</p><p&g
72、t; 第2腳:VDD接5V正電源。</p><p> 第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。</p><p> 第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。</p><p> 第5腳:R/W為讀寫信號線,高電平時進(jìn)行讀
73、操作,低電平時進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。</p><p> 第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命</p><p><b> 令。</b></p><p> 第7~14腳:D0~D7為
74、8位雙向數(shù)據(jù)線。</p><p> 第15腳:背光源正極。</p><p> 第16腳:背光源負(fù)極。</p><p> 1602LCD的指令說明及時序:1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表5所示(見下頁):</p><p><b> 表5 控制命令表</b></p><p>
75、; 1602LCD液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平)</p><p> 指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。</p><p> 指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。</p><p> 指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字
76、是否左移或者右移。高電平表示有效,低電平則無效。</p><p> 指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。</p><p> 指令5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。</p><p
77、> 指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。</p><p> 指令7:字符發(fā)生器RAM地址設(shè)置。</p><p> 指令8:DDRAM地址設(shè)置。</p><p> 指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電
78、平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。</p><p><b> 指令10:寫數(shù)據(jù)。</b></p><p><b> 指令11:讀數(shù)據(jù)。</b></p><p> HD44780相兼容的芯片時序表如下表6基本操作時序表</p><p><b> 表6基本操
79、作時序表</b></p><p> 讀寫操作時序如圖12和13所示:</p><p><b> 圖12 讀操作時序</b></p><p><b> 圖13 寫操作時序</b></p><p> 顯示電路總連接圖如圖14所示:</p><p> 圖14
80、顯示電路總電路連接圖</p><p> 3.7.2 LCD液晶顯示器的優(yōu)點</p><p> 在應(yīng)用系統(tǒng)中,使用的顯示器主要是LCD(液晶顯示器)。這種顯示器成本低廉,配置靈活。LCD顯示器的工作原理就是利用液晶的物理特性:通電時排列變得有序,使光線容易通過;不通電時排列混亂,阻止光線通過,說簡單點就是讓液晶如閘門般地阻隔或讓光線穿透。</p><p> 液晶
81、屏功能強(qiáng)大,可顯示各種字體的數(shù)字、漢字、圖像,還可以自定義顯示內(nèi)容,顯示內(nèi)容也較豐富;方便操作者讀取信息及一些擴(kuò)展功能的實現(xiàn)。占用系統(tǒng)I/O口較少,有效地節(jié)約系統(tǒng)資源,使整個系統(tǒng)更加人性化。</p><p> 3.8 555電機(jī)調(diào)速單元設(shè)計</p><p> 555 定時器是一種模擬和數(shù)字功能相結(jié)合的中規(guī)模集成器件。一般用雙極性工藝制作的稱為 555,用 CMOS 工藝制作的稱為755
82、5,除單定時器外,還有對應(yīng)的雙定時器556/7556。555 定時器的電源電壓范圍寬,可在 4.5V~16V 工作,7555 可在 3~18V 工作,輸出驅(qū)動電流約為200mA,因而其輸出可與 TTL、CMOS 或者模擬電路電平兼容。</p><p> 555 定時器成本低,性能可靠,只需要外接幾個電阻、電容,就可以實現(xiàn)多諧振蕩器、單穩(wěn)態(tài)觸發(fā)器及施密特觸發(fā)器等脈沖產(chǎn)生與變換電路。它也常作為定時器廣泛應(yīng)用于儀器儀
83、表、家用電器、電子測量及自動控制等方面。它內(nèi)部包括兩個電壓比較器,三個等值串聯(lián)電阻,一個 RS 觸發(fā)器,一個放電管 T 及功率輸出級。它提供兩個基準(zhǔn)電壓VCC /3 和 2VCC /3。</p><p> 555 定時器的功能主要由兩個比較器決定。兩個比較器的輸出電壓控制 RS 觸發(fā)器和放電管的狀態(tài)。在電源與地之間加上電壓,當(dāng) 5 腳懸空時,則電壓比較器 A1 的反相輸入端的電壓為 2VCC /3,A2 的同相
84、輸入端的電壓為VCC /3。若觸發(fā)輸入端 TR 的電壓小于VCC /3,則比較器 A2 的輸出為 1,可使 RS 觸發(fā)器置 1,使輸出端 OUT=1。如果閾值輸入端 TH 的電壓大于 2VCC/3,同時 TR 端的電壓大于VCC /3,則 A1 的輸出為 1,A2 的輸出為 0,可將 RS 觸發(fā)器置 0,使輸出為 0 電平。兩個比較器 C1和 C2各有一個輸入端連接到三個電阻R組成的分壓器上,比較器的輸出接到RS觸發(fā)器上。此外還有輸出級
85、和放電管。輸出級的驅(qū)動電流可達(dá)200mA。比較器C1和C2的參考電壓分別為UA和UB,根據(jù)C1和C2的另一個輸入端——觸發(fā)輸入和閾值輸入,可判斷出RS觸發(fā)器的輸出狀態(tài)。當(dāng)復(fù)位端為低電平時,RS觸發(fā)器被強(qiáng)制復(fù)位。若無需復(fù)位操作,復(fù)位端應(yīng)接高電平。</p><p> 3.8.1 555定時器的應(yīng)用</p><p> (1)構(gòu)成施密特觸發(fā)器,用于TTL系統(tǒng)的接口,整形電路或脈沖鑒幅等;<
86、;/p><p> ?。?)構(gòu)成多諧振蕩器,組成信號產(chǎn)生電路;</p><p> ?。?)構(gòu)成單穩(wěn)態(tài)觸發(fā)器,用于定時延時整形及一些定時開關(guān)中。</p><p> 555應(yīng)用電路采用這3種方式中的1種或多種組合起來可以組成各種實用的電子電路,如定時器、元件參數(shù)和電路檢測電路、玩具游戲機(jī)電路、音響告警電路、電源交換電路、頻率變換電路、自動控制電路等。</p>
87、<p> 555時基電路是一種將模擬功能與邏輯功能巧妙地結(jié)合在同一硅片上的組合集成電路。該電路可以在最基本的典型應(yīng)用方式的基礎(chǔ)上,根據(jù)實際需要,經(jīng)過參數(shù)配置和電路的重新組合,與外接少量的阻容元件就能構(gòu)成不同的電路,因而555電路在波形的產(chǎn)生與變換、測量與控制、家用電器、電子玩具等許多領(lǐng)域中都得到了廣泛應(yīng)用。 </p><p> 3.8.2 555時基電路的電路結(jié)構(gòu)和邏輯功能</p>
88、<p> 由圖15(見下頁)可知555電路由電阻分壓器、電壓比較器、基本RS觸發(fā)器、放電管和輸出緩沖器5個部分組成。它的各個引腳功能如下:</p><p> 圖15 555時基電路的電路結(jié)構(gòu)和引腳圖</p><p> 1腳:GND(或Vss)外接電源負(fù)端VSS或接地,一般情況下接地。</p><p> 2腳:TR低觸發(fā)端。</p>
89、<p> 3腳:OUT(或Vo)輸出端。</p><p> 4腳:R是直接清零端。當(dāng)R端接低電平,則時基電路不工作,此時不論TR、TH處于何電平,時基電路輸出為“0”,該端不用時應(yīng)接高電平。</p><p> 5腳:CO(或VC)為控制電壓端。若此端外接電壓,則可改變內(nèi)部兩個比較器的基準(zhǔn)電壓,當(dāng)該端不用時,應(yīng)將該端串入一只0.01μF電容接地,以防引入干擾。</p&
90、gt;<p> 6腳:TH高觸發(fā)端。</p><p> 7腳:D放電端。該端與放電管集電極相連,用做定時器時電容的放電。電阻分壓器由三個5kΩ的等值電阻串聯(lián)而成。電阻分壓器為比較器C1、C2提供參考電壓,比較器C1的參考電壓為2/3Vcc,加在同相輸入端,比較器C2的參考電壓為1/3Vcc,加在反相輸入端。比較器由兩個結(jié)構(gòu)相同的集成運放C1、C2組成。高電平觸發(fā)信號加在C1的反相輸入端,與同相輸
91、入端的參考電壓比較后,其結(jié)果作為基本RS觸發(fā)器R端的輸入信號;低電平觸發(fā)信號加在C2的同相輸入端,與反相輸入端的參考電壓比較后,其結(jié)果作為基本RS觸發(fā)器S端的輸入信號?;綬S觸發(fā)器的輸出狀態(tài)受比較器C1、C2的輸出端控制。</p><p> 8腳:VCC(或VDD)外接電源VCC,雙極型時基電路VCC的范圍是4.5~16V,CMOS型時基電路VCC的范圍為3~18V。一般用5V。</p><
92、;p> 在1腳接地,5腳未外接電壓,兩個比較器C1、C2基準(zhǔn)電壓分別為2/3Vcc,1/3Vcc的情況下,555時功能表如下表所示:</p><p> 表7 555時功能表</p><p> 此系統(tǒng)設(shè)計中主要應(yīng)用555定時器進(jìn)行電機(jī)的調(diào)速 ,如圖16所示</p><p> 圖16 555調(diào)速電路</p><p> 4 出租車計
93、價測速系統(tǒng)的軟件設(shè)計</p><p> 4.1 系統(tǒng)主程序設(shè)計</p><p> 本系統(tǒng)的軟件設(shè)計主要可分為主程序模塊、定時計數(shù)中斷程序、里程計數(shù)中斷服務(wù)程序、中途等待中斷服務(wù)程序、顯示子程序服務(wù)程序、鍵盤服務(wù)程序六大模塊。下面對各部分模塊作介紹。</p><p> 在主程序模塊中,需要完成對各接口芯片的初始化、啟動計價,將根據(jù)里程寄存器中的內(nèi)容計算和判斷出行
94、駛里程是否已超過起價公里數(shù)。若已超過,則根據(jù)里程值、每公里的單價數(shù)和起價數(shù)來計算出當(dāng)前的累計價格,并將結(jié)果存于價格寄存器中,然后將時間和當(dāng)前累計價格送顯示電路顯示出來。見圖17(見下頁)</p><p><b> 圖17主程序流程圖</b></p><p><b> 4.2中斷服務(wù)程序</b></p><p> 里程
95、等待中斷服務(wù)程序,當(dāng)計數(shù)器對里程計滿1000 次時,使微機(jī)中斷服務(wù)程序。在該程序中,需要完成當(dāng)前行駛里程數(shù)和總額的累加操作,并將結(jié)果存入里程和總額寄存器中。 中途等待中斷服務(wù)程序,當(dāng)?shù)却I按下,每當(dāng)計時到達(dá)3分鐘后,就對當(dāng)前金額加上中途等待的單價。如圖18所示(見下頁) :</p><p> 圖 18 中斷服務(wù)程序</p><p><b> 4.3顯示子程序</b>
96、;</p><p> 本次設(shè)計所用的是1602液晶是字符型液晶,它的內(nèi)部自帶字符庫,它可以寫兩行的字符,同時每行可以寫40個字符,在寫顯示程序的時候,我們先寫命令,再設(shè)定字符顯示,最后寫數(shù)據(jù),在每寫一次命令或數(shù)據(jù)都需要判斷液晶是否忙。液晶顯示程序流程圖如圖19所示(見下頁):</p><p> 圖19 顯示服務(wù)程序流程圖</p><p> 4.4 鍵盤服務(wù)程序
97、</p><p> 其中包括單價調(diào)整、顯示和調(diào)整當(dāng)前的系統(tǒng)時間、黑白天切換、電機(jī)調(diào)速、屏幕亮度調(diào)節(jié)等功能的控制按鍵設(shè)定。出租車計價測速系統(tǒng)還具有性能可靠、電路簡單、成本低、實用性強(qiáng)等特點,加上經(jīng)過優(yōu)化的程序,使其有很高的智能化水平。</p><p><b> 5系統(tǒng)安裝與調(diào)試</b></p><p> 5.1 程序的檢測與調(diào)試</p
98、><p> 5.1.1程序的查錯手段</p><p> 單片機(jī)的應(yīng)用系統(tǒng)均需借助對應(yīng)的開發(fā)系統(tǒng)(或裝置)進(jìn)行在線仿真,對應(yīng)用系統(tǒng)的軟,硬件進(jìn)行全面地檢測與調(diào)試。各種開發(fā)系統(tǒng)或裝置均提供以下查錯手段。</p><p><b> (1)單步執(zhí)行</b></p><p> 采用單步執(zhí)行操作可對應(yīng)用程序每步執(zhí)行一條指令,可逐
99、條檢查這一段程序的執(zhí)行過程是否符合原設(shè)計要求??芍苯硬槌鲥e誤所在。宏單步可執(zhí)行一段程序,如一步就可執(zhí)行完整個循環(huán)程序段。</p><p> ?。?)斷點設(shè)置全速運行</p><p> 可在程序有疑慮的地方設(shè)置斷點,從設(shè)置的起始地址開始,以全速或非全速方式向設(shè)定的斷點處運行。如果這段程序無語法或邏輯上的錯誤,則連續(xù)運行到設(shè)置的斷點處停止運行,返回監(jiān)控狀態(tài)。如果有錯誤,則在錯誤處停止運行,如
100、果進(jìn)入死循環(huán)或者程序跑飛,就會永不停止運行。全速斷點運行為檢查實時性及中斷響應(yīng)處理等提供了方便。</p><p> ?。?)顯示器窗口檢查</p><p><b> (4)實時跟蹤記錄</b></p><p> 5.1.2源程序的檢測</p><p> 在源程序進(jìn)行調(diào)試之前,硬件系統(tǒng)必須基本正確,重點對源程序進(jìn)行檢
101、測。</p><p> (1)對照程序流程圖,先對相對獨立的功能模塊,子程序,中斷服務(wù)程序等進(jìn)行仔細(xì)地檢查,然后對整個主程序按其功能劃分成若干程序段進(jìn)行分段檢查,逐步擴(kuò)大到整個程序系統(tǒng)。檢查時重點檢查程序的邏輯功能,結(jié)構(gòu)和算法,有關(guān)參量和初始值是否完善,正確,關(guān)鍵性指令的選擇是否合理,特別是借助開發(fā)系統(tǒng)也較難調(diào)試正確的隱患,只有通過細(xì)心的檢查加以排除。</p><p> ?。?)硬件系統(tǒng)
102、檢查, 硬件系統(tǒng)必須排除電源短路和碰線故障,然后空板(沒有插上芯片等器件)進(jìn)行上電檢查各電源點是否正確,有關(guān)邏輯電平及信號是否正確。確認(rèn)無誤之后逐次插上芯片等器件,借助開發(fā)系統(tǒng)可檢查出是否有硬件故障。一旦有故障時,開發(fā)系統(tǒng)的監(jiān)控程序?qū)⒊霈F(xiàn)不能正常工作的現(xiàn)象。故可采用此法排除硬件系統(tǒng)的一般性故障。</p><p> 有些故障只有通過軟件調(diào)試才能排除,有時還需通過軟件調(diào)試修改硬件設(shè)計。</p><
103、;p> 5.1.3源程序的調(diào)試</p><p> 源程序的調(diào)試一般可分為分調(diào),聯(lián)調(diào)和考機(jī)3步進(jìn)行。</p><p><b> ?。?)分調(diào)</b></p><p> 首先將基本獨立的子程序調(diào)試正確,符合原設(shè)計要求,用模擬的方 法將中斷服務(wù)程序初調(diào),然后將主程序按相對獨立的功能程序段,遵照應(yīng)用系統(tǒng)
104、運行的邏輯順序逐段進(jìn)行調(diào)試。</p><p> A) 設(shè)置并輸入一組符合要求的參量,啟動程序段運行,觀察運行情況或故障的影響及現(xiàn)象。</p><p> B) 對出現(xiàn)的問題進(jìn)行仔細(xì)地分析,合理推測,借助開發(fā)系統(tǒng)的調(diào)試手段,逐步縮小疑點范圍,直至找出問題所在進(jìn)行修改。</p><p> C) 分析故障原因。</p><p><b>
105、; ?。?)聯(lián)調(diào)</b></p><p> 在分調(diào)基本完成的基礎(chǔ)上進(jìn)行聯(lián)調(diào),它將與整個系統(tǒng)的硬件,軟件,環(huán)境密切相關(guān),必須聯(lián)合在線調(diào)試。調(diào)試的重點在于主程序與各功能模塊程序段之間的連接處,按照整個軟件系統(tǒng)的執(zhí)行順序,逐個相連進(jìn)行調(diào)試。</p><p><b> 結(jié)論</b></p><p> 在這段時間里,經(jīng)過自己努力,基本上
106、完成了設(shè)計要求的內(nèi)容,實現(xiàn)了出租車計價系統(tǒng)的計費,總里程顯示等功并且能通過電機(jī)模擬輪胎轉(zhuǎn)動,間接獲得車速功能。本次設(shè)計還增添了在機(jī)器不使用時,還可以顯示系統(tǒng)等附加功能。由于使用的是AT89S52單片機(jī)作為核心的控制元件,靈敏的霍爾開關(guān)型器件A44E霍爾傳感器,是本出租車計價器具有功能強(qiáng)、性能可靠、電路簡單、成本低實用性強(qiáng)等特點,加上經(jīng)過優(yōu)化的程序,使其有很高的智能化水平。但是在我們設(shè)計和調(diào)試的過程中,也發(fā)現(xiàn)了一些問題,譬如計價的金額位數(shù)
107、有限,實際的里程可能會很遠(yuǎn),會超出我們的顯示范圍。雖然AT89S52單片機(jī)具有較強(qiáng)抗干擾能力,雖然其抗干擾能力不如PLC,但是PLC價格較貴,不符合以經(jīng)濟(jì)為主的設(shè)計原則。同時,不能直接顯示車速和超速提醒功能,若加入這些功能可以使出租車計價器功能多元化,準(zhǔn)確化,方便化。雖然時鐘系統(tǒng)加入了當(dāng)?shù)貢r間顯示,但同時還應(yīng)該加入語音系統(tǒng),準(zhǔn)確報價,讓這個設(shè)計更加人性化,讓乘客和司機(jī)之間的交易更加清晰化。讓他們有一個更加方便 公平的交易平臺。</
108、p><p> 這次設(shè)計是我認(rèn)識到了完整、嚴(yán)謹(jǐn)、科學(xué)分析問題、解決問題的思想是多么的重要,只有擁有了科學(xué)的態(tài)度才能設(shè)計出有用的產(chǎn)品。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 李朝青.單片機(jī)原理及接口技術(shù)(簡明修訂版).杭州:北京航空航天大學(xué)出版社,1998[2] 李廣弟.單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出
109、版社,1994[3] 閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版). 北京:高等教育出版社,1989[4] 石東海等.單片機(jī)數(shù)據(jù)通信技術(shù)從入門到精通.西安:西安電子科技大學(xué)出版社, 2002.148~150. [5] 王忠飛,胥芳.MCS一51單片機(jī)原理及嵌入式系統(tǒng)應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2007.P268-273[6]蔡朝洋,單片機(jī)控制實習(xí)與專題制作[M].北京:北京航空航天大學(xué)出版社,2006[7]張毅剛,彭喜源,譚曉
110、昀等.MSC-51單片機(jī)應(yīng)用設(shè)計[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1999[8]周堅.單片機(jī)C語言輕松入門[M].北京:北京航空航天大學(xué)出版社,2006[9]李全利,遲榮強(qiáng).單片機(jī)原理及接口技術(shù)[M].北京:高等教育出版社,2004[10]梅麗鳳,王艷秋.單片機(jī)原理及接口技術(shù)(修訂本)[M].北京:清華大學(xué)出版社;北京交通大學(xué)出版社,2006[11]閻石.數(shù)字電子技術(shù)基礎(chǔ) [M].北京:高等教育</p><
111、;p> [15]張友德,趙志英,涂時亮.單片微型機(jī)原理、應(yīng)用與實驗.上海:復(fù)旦大學(xué)出版社 2005,12[16]李群芳,肖看.單片機(jī)原理接口與應(yīng)用.北京:清華大學(xué)出版社,2005</p><p> [17]李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)[M].第3版.北京航空航天大學(xué)出版</p><p><b> 社,2007</b></p><
112、p> [18] 魏永昌.單片機(jī)外圍電路設(shè)計.北京.電子工業(yè)出版社.2006</p><p> [19] 馬淑華,王鳳文,張美金.單片機(jī)原理與接口技術(shù).北京.北京郵電大學(xué)出</p><p><b> 版社,2005</b></p><p> [20]張鑫,華臻,陳書謙.《單片機(jī)原理及應(yīng)用》[M].電子工業(yè)出版社2005.</p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)出租車測速計價系統(tǒng)畢業(yè)論文
- 51單片機(jī)基于出租車計價系統(tǒng)的畢業(yè)論文
- 基于單片機(jī)的出租車計價系統(tǒng)的設(shè)計畢業(yè)論文
- 基于單片機(jī)出租車計費系統(tǒng)畢業(yè)論文
- 基于單片機(jī)的出租車計價器設(shè)計畢業(yè)論文
- 基于單片機(jī)的出租車計價器設(shè)計【畢業(yè)論文】
- 畢業(yè)論文--基于單片機(jī)的出租車計價器設(shè)計
- 畢業(yè)論文---基于單片機(jī)的出租車計價器的設(shè)計
- 畢業(yè)論文-- 基于單片機(jī)的出租車計價器軟件設(shè)計
- 畢業(yè)論文(設(shè)計)基于單片機(jī)的出租車計價器的設(shè)計
- 基于單片機(jī)的出租車計價器
- 基于at89c51單片機(jī)的出租車計價系統(tǒng)的設(shè)計-畢業(yè)論文
- 2017畢業(yè)論文-基于pic單片機(jī)的出租車計費系統(tǒng)
- 畢業(yè)設(shè)計---基于單片機(jī)的出租車計價器系統(tǒng)
- 單片機(jī)出租車計費器畢業(yè)論文
- 畢業(yè)論文----基于c-51單片機(jī)出租車計價器的研究
- 基于單片機(jī)的出租車計價器設(shè)計
- 基于單片機(jī)的出租車計價器設(shè)計畢業(yè)設(shè)計論文
- 基于單片機(jī)的出租車計價器設(shè)計畢業(yè)設(shè)計論文
- 基于單片機(jī)的出租車計價器畢業(yè)設(shè)計
評論
0/150
提交評論