[畢業(yè)設(shè)計(jì)]基于單片機(jī)的多功能出租車(chē)計(jì)價(jià)器設(shè)計(jì)_第1頁(yè)
[畢業(yè)設(shè)計(jì)]基于單片機(jī)的多功能出租車(chē)計(jì)價(jià)器設(shè)計(jì)_第2頁(yè)
[畢業(yè)設(shè)計(jì)]基于單片機(jī)的多功能出租車(chē)計(jì)價(jià)器設(shè)計(jì)_第3頁(yè)
[畢業(yè)設(shè)計(jì)]基于單片機(jī)的多功能出租車(chē)計(jì)價(jià)器設(shè)計(jì)_第4頁(yè)
[畢業(yè)設(shè)計(jì)]基于單片機(jī)的多功能出租車(chē)計(jì)價(jià)器設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

數(shù)理與信息工程學(xué)院 畢業(yè)設(shè) 計(jì) 題 目: 多功能出租車(chē)計(jì)價(jià)器 專(zhuān) 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)(專(zhuān)升本) 班 級(jí): 姓 名: 學(xué)號(hào): 指導(dǎo)老師: 成 績(jī): ( 2006.6 ) 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 目 錄 第 1節(jié) 引 言 1 1. 1 出租車(chē)計(jì)價(jià)器概述 1 1. 2 本設(shè)計(jì)任務(wù) 1 1.2.1 設(shè)計(jì)任務(wù) 1 1.2.2 設(shè)計(jì)要求 1 1. 3 系統(tǒng)主要功能 2 第 2節(jié) 出租車(chē)計(jì)價(jià)器硬件設(shè)計(jì) 3 2.1 系統(tǒng)的硬件構(gòu)成及功能 3 2. 2 AT89S51單片機(jī)及其引腳說(shuō)明 3 2.3 AT24C02引腳圖及其引腳功能 6 2. 4 AT24C02 掉電存儲(chǔ)單元的設(shè)計(jì) 6 2.5 里程計(jì)算、計(jì)價(jià)單元的設(shè)計(jì) 7 2.6 數(shù)據(jù)顯示 單元設(shè)計(jì) 8 第 3節(jié) 系統(tǒng)軟件設(shè)計(jì) 10 3. 1 系統(tǒng)主程序設(shè)計(jì) 10 3. 2 定時(shí)中斷程序設(shè) 計(jì) 10 3. 3 里程計(jì)數(shù)中斷服務(wù) 程序設(shè)計(jì) 10 3.4 中途等待中斷服務(wù)程序設(shè)計(jì) 10 3. 5 鍵盤(pán)服務(wù)程序設(shè)計(jì) 10 3. 6 顯示子程序服務(wù)程序設(shè)計(jì) 10 第 4節(jié) 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析 13 4. 1 使用的儀器儀表 13 4.2 系統(tǒng)調(diào)試 13 4.3 測(cè)試結(jié)果 13 4.4 測(cè)試結(jié)果分析 13 第 5節(jié) 結(jié)束語(yǔ) 14 附錄 15 參考文獻(xiàn) 40 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 多功能出租車(chē)計(jì)價(jià)器 第 1 節(jié) 引 言 本次設(shè)計(jì)利用單片機(jī)技術(shù)來(lái)實(shí)現(xiàn)一臺(tái)多功能出租車(chē)計(jì)價(jià)器,具有 性能可靠、電路簡(jiǎn)單、成本低等特點(diǎn) 。 1.1 出租車(chē)計(jì)價(jià)器概述 計(jì)價(jià)器顯示的營(yíng)運(yùn)金額是營(yíng)運(yùn)里程與價(jià)格的函數(shù)(等候時(shí)間一般折算成一定比例的里程來(lái)計(jì)算)。出租車(chē)計(jì)價(jià)器通過(guò)傳感器與行駛車(chē)輛連接。出租汽車(chē)的實(shí)際里程通過(guò)傳感器的脈沖信號(hào)在計(jì)價(jià)器里折算成一定的計(jì)價(jià)營(yíng)運(yùn)里程。目前市場(chǎng)上出租車(chē) 計(jì)價(jià)器功能主要有 具有數(shù)據(jù)的復(fù)位功能、白天 /晚上轉(zhuǎn)換功能、數(shù)據(jù)輸出功能、計(jì)時(shí)計(jì)價(jià)功能等等,但 能夠進(jìn)行 語(yǔ)音播報(bào)數(shù)據(jù)信息的出租車(chē)計(jì)價(jià)器還是比較少見(jiàn)的,針對(duì)這一點(diǎn)我們來(lái)設(shè)計(jì)一款多功能出租車(chē)計(jì)價(jià)器,在原有功能的基礎(chǔ)上增加單價(jià)輸出、單價(jià)調(diào)整、路程輸出、顯示當(dāng)前的系統(tǒng)時(shí)間 、 語(yǔ)音播報(bào)數(shù)據(jù)信息等功能。 1.2 本設(shè)計(jì)任務(wù) 1.2.1 設(shè)計(jì)任務(wù) 設(shè)計(jì)一款基于 AT89S51單片機(jī)的出租車(chē)計(jì)價(jià)器。 1.2.2 設(shè)計(jì)要求 1.基本要求 (1) 不同情況具有不同的收費(fèi)標(biāo)準(zhǔn)。 白天 晚上 途中等待( 10min 開(kāi)始收費(fèi) ) (2) 能進(jìn)行手動(dòng)修改單價(jià)。 (3) 具有數(shù)據(jù)的復(fù)位功能 。 (4) IO 口分配的簡(jiǎn)易要求 。 距離檢測(cè)使用霍爾開(kāi)關(guān) A44E 白天 /晚上收費(fèi)標(biāo)準(zhǔn)的轉(zhuǎn)換開(kāi)關(guān) 數(shù)據(jù)的清零開(kāi)關(guān) 單價(jià)的調(diào)整(最好使用和按鍵) (5) 數(shù)據(jù)輸出(采用 LCM103)。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 單價(jià)輸出 2 位 路程輸出 2 位 總金額輸出 3 位 (6) 按鍵。 啟動(dòng)計(jì)時(shí)開(kāi)關(guān) 數(shù)據(jù)復(fù)位(清零) 白天 /晚上轉(zhuǎn)換 2.發(fā)揮部分 (1) 能夠在掉電的情況下存儲(chǔ)單價(jià)等數(shù)據(jù)。 (2) 能夠顯示當(dāng)前的系統(tǒng)時(shí)間 。 (3) 語(yǔ)音播報(bào)數(shù)據(jù)信息 。 1.3 系統(tǒng)主要功能 本 課程設(shè)計(jì)所設(shè)計(jì)的出租車(chē)計(jì)價(jià)器的主要功能有: 數(shù)據(jù)的復(fù)位、白天 /晚上轉(zhuǎn)換、數(shù)據(jù)輸出、計(jì)時(shí)計(jì)價(jià)、單價(jià)輸出及調(diào)整、路程輸出、語(yǔ)音播報(bào)數(shù)據(jù)信息、 實(shí)現(xiàn)在系統(tǒng)掉電的時(shí)候保存單價(jià)和系統(tǒng)時(shí)間等信息 等功能。 輸出采用 8 段數(shù)碼顯示管。本電路設(shè)計(jì)的計(jì)價(jià)器不但能實(shí)現(xiàn)基本的計(jì)價(jià),而且還能根據(jù)白天、黑夜、中途等待來(lái)調(diào)節(jié)單價(jià),同時(shí)在不計(jì)價(jià)的時(shí)候還能作為時(shí)鐘為司機(jī)同志提供方便。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 第 2 節(jié) 計(jì)價(jià)器硬件設(shè)計(jì) 本系統(tǒng)的硬件設(shè)計(jì)主要包括單片機(jī) AT89S51、數(shù)據(jù)顯示部件、 A44E霍爾傳感器 電路、 AT24C02 掉電存儲(chǔ) 單元的設(shè)計(jì)、 里程計(jì)算及計(jì)價(jià)單元的設(shè)計(jì) 。 在硬件設(shè)計(jì)過(guò)程中,充分利用各部件的功能,實(shí)現(xiàn)多功能的出租車(chē)計(jì)價(jià)器設(shè)計(jì)。 2.1 系統(tǒng)的硬件構(gòu)成及功能 計(jì)價(jià)器的單片機(jī)控制方案圖如圖 1 所示。它由以下幾個(gè)部件組成:?jiǎn)纹瑱C(jī)AT89S51、總金額及單價(jià)顯示部件、鍵盤(pán)控制部件, AT24C02 掉電存儲(chǔ)控制、里程計(jì)算單元、串中顯示驅(qū)動(dòng)電路等。 利用單片機(jī)豐富的 IO端口,及其控制的靈活性,實(shí)現(xiàn)基本的里程計(jì)價(jià)功能和價(jià)格調(diào)節(jié)、時(shí)鐘顯示功能。不但能實(shí)現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對(duì)系統(tǒng)進(jìn)行升級(jí)。 具體電路參見(jiàn) “ 多功能出租車(chē)計(jì)價(jià)器總體電路圖”。 圖 1 單片機(jī)控制方案圖 2.2 AT89S51 單片機(jī)及其引腳說(shuō)明 AT89S51是美國(guó) ATMEL公司生產(chǎn)的低功耗,高性能 CMOS 8位單片機(jī),片內(nèi)含 4KB的可系統(tǒng)編程的 Flash只 讀程序存儲(chǔ)器,器件采用 ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) 8051指令系統(tǒng)及引腳。它集 Flash程序存儲(chǔ)器既可在線(xiàn)編程( ISP)也可用傳統(tǒng)方法進(jìn)行編程及通用 8位微處理器于單片芯片中,具有高性?xún)r(jià)比。 AT89S51是一個(gè)有 40個(gè)引腳的芯片,引腳配置如圖 2所示。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 圖 2 AT89S51 引腳配置 AT89S51芯片的 40個(gè)引腳功能為: VCC 電源電壓。 GND 接地。 RST 復(fù)位輸入。當(dāng) RST變?yōu)楦唠娖讲⒈3?2個(gè)機(jī)器周期時(shí),將使單片機(jī)復(fù)位。WDT 溢出將使該引腳輸出高電平,設(shè)置 SFR AUXR 的 DISRTO 位(地址 8EH)可打開(kāi)或關(guān)閉該功能。 DISKRTO 位缺省為 RESET輸出高電平打開(kāi)狀態(tài)。 XTAL1 反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2 來(lái)自反向振蕩放大器的輸出。 P0 口 一組 8 位漏極開(kāi)路型雙向 I/O 口。也即地址 /數(shù)據(jù)總 線(xiàn)復(fù)用口。作為輸出口用時(shí),每位能驅(qū)動(dòng) 8 個(gè) TTL 邏輯門(mén)電路,對(duì)端口寫(xiě)“ 1”可作為高阻抗輸入端用。在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線(xiàn)分時(shí)轉(zhuǎn)換地址(低 8位)和數(shù)據(jù)總線(xiàn)復(fù)用,在訪(fǎng)問(wèn)期間激活內(nèi)部上拉電阻。在 Flash編程時(shí), P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。 P1 口 一個(gè)帶內(nèi)部上拉電阻的 8 位雙向 I/O 口, P1 的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流) 4 個(gè) TTL 邏輯門(mén)電路。對(duì)端口寫(xiě)“ 1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉 電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流( IIL)。 Flash 編程和程序校驗(yàn)期間, P1 接收低 8位地址。 P1口部分端口引腳及功能如表 1所示。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 表 1 P1口特殊功能 P1口引腳 特殊功能 P1.5 MOSI(用于 ISP編程) P1.6 MOSI(用于 ISP編程) P1.7 SCK(用于 ISP編程) P2 口 一個(gè)帶內(nèi)部上拉電阻的 8 位雙向 I/O 口。 P1 的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流) 4 個(gè) TTL 邏輯門(mén)電路。對(duì)端口寫(xiě)“ 1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部 存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流( IIL)。在訪(fǎng)問(wèn)外部程序存儲(chǔ)器或 16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí), P2 口送出高 8位地址數(shù)據(jù)。在訪(fǎng)問(wèn) 8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí), P2口線(xiàn)上的內(nèi)容在整個(gè)訪(fǎng)問(wèn)期間不改變。 Flash編程和程序校驗(yàn)期間, P2亦接收低 8位地址。 P3 口 一個(gè)帶內(nèi)部上拉電阻的 8 位雙向 I/O 口。 P3 的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流) 4 個(gè) TTL 邏輯門(mén)電路。對(duì) P3 口寫(xiě)“ 1”時(shí),它們被內(nèi)部的上拉電阻把拉到高電并可作輸入端口。作輸入端口使用時(shí),被外部拉低的 P3 口將用上拉電阻輸出電流( IIL)。 P3 口除了作為一般的 I/O 口線(xiàn)外,更重要的用途是它的第二功能,如表 2所示。 P3 口還接收一些用于 Flash 閃速存儲(chǔ)器編程和程序校驗(yàn)期間的控制信號(hào)。 表 2 P3口特殊功能 P3口引腳 特殊功能 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 (外部中斷 0) P3.3 (外部中斷 1) P3.4 T0(定時(shí)器 0外部輸入) P3.5 T1(定時(shí)器 1外部輸入) P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通 ) P3.7 (外部數(shù)據(jù)存儲(chǔ)器讀選通) PSEN/ 程序儲(chǔ)存允許輸出是外部程序存儲(chǔ)器的讀先通信號(hào),當(dāng) AT89S51 由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次 PSEN/有效,即輸出兩個(gè)脈沖。當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器,沒(méi)有兩次有效的 PSEN/信號(hào)。 EA/VPP 外部訪(fǎng)問(wèn)允許。欲使 CPU僅訪(fǎng)問(wèn)外部程序存儲(chǔ)器, EA端必須保持低電平,需注意的是:如果加密位 LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存 EA端狀態(tài)。 Flash存數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 儲(chǔ)器編程時(shí),該引腳加上 +12V的編程電壓 VPP。 2.3 AT24C02 引腳圖及其引 腳功能 AT24C02芯片引腳配置如圖 3所示。 圖 3 AT24C02引腳配置圖 AT24C02芯片 DIP 封裝,共有 8個(gè)引腳,其中: A2A0 地址引腳; SDA、 SCL I2C 總線(xiàn)接口; WP 寫(xiě)保護(hù)引腳, WP 接 VSS 時(shí),禁止寫(xiě)入高位地址, WP 接 VDD 時(shí),允許寫(xiě)入任何地址; VCC 電源端 GND 接地端 2.4 AT24C02 掉電存儲(chǔ)單元的設(shè)計(jì) 掉電存儲(chǔ)單元的作用是在電源斷開(kāi)的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息。 AT24C02 是 ATMEL公司的 2KB 字節(jié)的電可擦除存儲(chǔ)芯片,采用兩線(xiàn)串行 的總線(xiàn)和單片機(jī)通訊,電壓最低可以到 2.5V,額定電流為 1mA,靜態(tài)電流 10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存 40 年以上,而且采用 8 腳的 DIP 封裝,使用方便。其電路如圖 4所示。 圖 4 掉電存儲(chǔ)電路原理圖 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 圖中 R8、 R10 是上拉電阻,其作用是減少 AT24C02 的靜態(tài)功耗,由于 AT24C02 的數(shù)據(jù)線(xiàn)和地址線(xiàn)是復(fù)用的,采用串口的方式傳送數(shù)據(jù),所以只用兩根線(xiàn) SCL(移位脈沖)和 SDA(數(shù)據(jù) /地址)與單片機(jī)傳送數(shù)據(jù)。 每當(dāng)設(shè)定一次單價(jià),系統(tǒng)就自動(dòng)調(diào)用存儲(chǔ)程序,將單價(jià)信息保存在芯片內(nèi) ;當(dāng)系統(tǒng)重新上電的時(shí)候,自動(dòng)調(diào)用讀存儲(chǔ)器程序,將存儲(chǔ)器內(nèi)的單價(jià)等信息,讀到緩存單元中,供主程序使用。 2.5 里程計(jì)算、計(jì)價(jià)單元的設(shè)計(jì) 里程計(jì)算是通過(guò)安裝在車(chē)輪上的霍爾傳感器 A44E檢測(cè)到的信號(hào),送到單片機(jī),經(jīng)處理計(jì)算 ,送給顯示單元的。其原理如圖 5所示。 圖 5 傳感器測(cè)距示意圖 由于 A44E 屬于 開(kāi)關(guān) 型的霍爾器件,其工作電壓范圍比較寬( 4.5 18V),其輸出的信號(hào)符合 TTL 電平標(biāo)準(zhǔn),可以直接接到單片機(jī)的 IO 端口上,而且其最高檢測(cè)頻率可達(dá)到 1MHZ。 A44E 集成霍耳開(kāi)關(guān)由穩(wěn)壓器 A、 霍耳電勢(shì)發(fā)生器 (即硅霍耳片 )B、差分放大器 C、施密特觸發(fā)器 D 和 OC 門(mén)輸出 E 五個(gè)基本部分組成。 在輸入端輸入電壓 CC V ,經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍耳電勢(shì)發(fā)生器的兩端,根據(jù)霍耳效應(yīng)原理,當(dāng)霍耳片處在磁場(chǎng)中時(shí),在垂直于磁場(chǎng)的方向通以電流,則與這二者相垂直的方向上將會(huì)產(chǎn)生霍耳電勢(shì)差 H V 輸出,該 H V 信號(hào)經(jīng)放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到 OC 門(mén)輸出。當(dāng)施加的磁場(chǎng)達(dá)到 工作點(diǎn) (即 OP B )時(shí),觸發(fā)器輸出高電壓 (相對(duì)于地電位 ),使三極管導(dǎo)通,此時(shí) OC 門(mén)輸出端輸出低電壓,通常稱(chēng)這種狀態(tài) 為 開(kāi)。當(dāng)施加的磁場(chǎng)達(dá)到 釋放點(diǎn) (即 rP B )時(shí),觸發(fā)器輸出低電壓,三極管截止,使 OC 門(mén)輸出高電壓,這種狀態(tài)為 關(guān) 。這樣兩次電壓變換,使霍耳開(kāi)關(guān)完成了一次開(kāi)關(guān)動(dòng)作。 我們選擇了 P3.2 口作為信號(hào)的輸入端,內(nèi)部采用外部中斷 0(這樣可以減少程序設(shè)計(jì)的麻煩),車(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)的加增加,其計(jì)算公式:當(dāng)前單價(jià)公里數(shù) =金額。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 2.6 數(shù)據(jù)顯示單元設(shè)計(jì) 由 于設(shè)計(jì)要求有單價(jià)( 2 位)、路程( 2 位)、總金額( 3 位)顯示輸出,加上我們另外擴(kuò)展了時(shí)鐘顯示(包含時(shí)分秒的顯示),采用 LCD 液晶段碼顯示,在距離屏幕 1 米之外就無(wú)法看清數(shù)據(jù),不能滿(mǎn)足要求,而且在白天其對(duì)比度也不能夠滿(mǎn)足要求,因此我們采用 6 位 LED數(shù)碼管的分屏顯示,如圖 6 所示: 圖 6 采用 6 位 LED數(shù)碼管的分屏顯示 數(shù)據(jù)的分屏的顯示是通過(guò)按鍵 S1 來(lái)實(shí)現(xiàn)切換的,如圖 7 所示。 在出租車(chē)不走的時(shí)候,按下 S1,可以實(shí)現(xiàn)數(shù)據(jù)的分屏顯示;車(chē)在行走的時(shí)候只有總金額 和單價(jià)顯示屏在顯示,當(dāng)?shù)竭_(dá)目的地的時(shí)候,客戶(hù)要求查看總的里程的時(shí)候,就可以按下 S1 切換到里程和單價(jià)顯示屏,供客戶(hù)查詢(xún)。顯示電路的電路原理圖如圖 8所示。 時(shí)鐘顯示(圖中顯示為 12 點(diǎn) 0 分 46 秒) 總金額和單價(jià)顯示(圖中顯示為總金額 55.3元 ,每公里 4.6 元) 路程和單價(jià)顯示(圖中顯示為總路程 12 公里 ,當(dāng)前單價(jià) 4.6 元) 單價(jià)調(diào)整顯示(圖中顯示為右起白天單價(jià) 4 .6 元 /晚上 7.8 /中途等待 1.2 元 ) 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 圖 7 S1切換顯示屏 圖 8 顯示器原理圖 從單片機(jī)串口輸出的信號(hào)先送到左邊的移位寄存器( 74HC164) ,由于移位脈沖的作用,使數(shù)據(jù)向右移,達(dá)到顯示的目的。移位寄存器 74HC164還兼作數(shù)碼管的驅(qū)動(dòng),插頭 1( header1)接電源,插頭 2( header2)接數(shù)據(jù)和脈沖輸出端。電路中的三個(gè)整流管 D1D3 的作用是降低數(shù)碼管的工作電壓,增加其使用壽命。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 第 3 節(jié) 系統(tǒng)的軟件設(shè)計(jì) 本系統(tǒng)的軟件設(shè)計(jì)主要可分為主程序模塊、定時(shí)計(jì)數(shù)中斷程序、 里程計(jì)數(shù)中斷服務(wù)程序、中途等待中斷服務(wù)程序、顯示子程序服務(wù)程序、鍵盤(pán)服務(wù)程序 六大模塊。下面對(duì)各部分模塊作介紹。 3.1 系統(tǒng)主程序設(shè)計(jì) 在主程序模塊中,需要完成對(duì)各接口芯片的初始化、出租車(chē)起價(jià)和單價(jià)的初始化、中斷向量的設(shè)計(jì)以及開(kāi)中斷、循環(huán)等待等工作。另外,在主程序模塊中還需要設(shè)置啟動(dòng) /清除標(biāo)志寄存器、里程寄存器和價(jià)格寄存器,并對(duì)它們進(jìn)行初始化。然后,主程序?qū)⒏?據(jù)各標(biāo)志寄存器的內(nèi)容,分別完成啟動(dòng)、清除、計(jì)程和計(jì)價(jià)等不同的操作。主程序流程圖如圖 9 所示。當(dāng)按下 S1時(shí),就啟動(dòng)計(jì)價(jià),將根據(jù)里程寄存器中的內(nèi)容計(jì)算和判斷出行駛里程是否已超過(guò)起價(jià)公里數(shù)。若已超過(guò),則根據(jù)里程值、每公里的單價(jià)數(shù)和起價(jià)數(shù)來(lái)計(jì)算出當(dāng)前的累計(jì)價(jià)格,并將結(jié)果存于價(jià)格寄存器中,然后將時(shí)間和當(dāng)前累計(jì)價(jià)格送顯示電路顯示出來(lái)。當(dāng)?shù)竭_(dá)目的地的時(shí)候,由于霍爾開(kāi)關(guān)沒(méi)有送來(lái)脈沖信號(hào),就停止計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),到下次啟動(dòng)計(jì)價(jià)時(shí),系統(tǒng)自動(dòng)對(duì)顯示清零,并重新進(jìn)行初始化過(guò)程。 3.2 定時(shí)中斷服務(wù)程序 在定時(shí)中斷服務(wù)程序中,每 100ms 產(chǎn)生一次中斷,當(dāng)產(chǎn)生 10 次中斷的時(shí)候,也就到了一秒,送數(shù)據(jù)到相應(yīng)的顯示緩沖單元,并調(diào)用顯示子程序?qū)崟r(shí)顯示。其程序流程如圖 10 所示。 3.3 里程計(jì)數(shù)中斷服務(wù)程序 每當(dāng)霍爾傳感器輸出一個(gè)低電平信號(hào)就使單片機(jī)中斷一次,當(dāng)里程計(jì)數(shù)器對(duì)里程脈沖計(jì)滿(mǎn) 1000 次時(shí),使微機(jī)進(jìn)入里程計(jì)數(shù)中斷服務(wù)程序中。在該程序中,需要完成當(dāng)前行駛里程數(shù)和總額的累加操作,并將結(jié)果存入里程和總額寄存器中。 3.4 中途等待中斷服務(wù)程序 當(dāng)在計(jì)數(shù)狀態(tài)下霍爾開(kāi)關(guān)沒(méi)有輸出信號(hào),片內(nèi)的 T1 定時(shí)器便被啟動(dòng) ,每當(dāng)計(jì)時(shí)到達(dá) 10分鐘,就對(duì)當(dāng)前金額加上中途等待的單價(jià),以后每十分鐘都自動(dòng)加上中途等待的單價(jià)。當(dāng)中途等待結(jié)束的時(shí)候,也就自動(dòng)切換到正常的計(jì)價(jià)。 3.5 顯示子程序服務(wù)程序 由于是分屏顯示數(shù)據(jù),所以就要用到 4 個(gè)顯示子程序,分別是:時(shí)分秒顯示子程序( HMS_DIS)、金額單價(jià)顯示子程序( CP_DIS)、路程單價(jià)顯示子程序 (DP_DIS)、單價(jià)調(diào)節(jié)子程序 (PA_DIS)。 3.6 鍵盤(pán)服務(wù)程序 鍵盤(pán)采用查詢(xún)的方式,放在主程序中,當(dāng)沒(méi)有按鍵按下的時(shí)候,單片機(jī)循環(huán)主程序,一旦有按鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理, 處理結(jié)束再返回。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 開(kāi)始 S1 按下 ? 初始化數(shù)據(jù) S4按下 ? 設(shè)定默認(rèn) 單價(jià)(白天) 啟動(dòng)計(jì)價(jià)器 里程中斷? 到一公里? 總路程加 1 總金額加 1 傳感有信號(hào)? 停止計(jì)價(jià)和 里程計(jì)數(shù) 是 是 是 是 否 否 否 設(shè)定晚上單價(jià) 按下 S4? 設(shè)定中途等待單價(jià) S4 按下 ? 返回時(shí)間顯示 是 是 是 否 否 否 顯示金額及單價(jià) S3 按下 ? 否 是 顯示路程和單價(jià) S3 按下 ? 是 否 圖 9 主程序流程圖 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 圖 10 定時(shí)中斷服務(wù)程序 開(kāi)始 保護(hù)現(xiàn)場(chǎng) 重置計(jì)數(shù)初值 中斷 10 次? 數(shù)據(jù)送顯示緩沖單元 調(diào)用顯示子程序 恢復(fù)現(xiàn)場(chǎng) 并中 斷返回 否 是 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 第 4 節(jié) 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析 根據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試 和軟硬件聯(lián)調(diào)。測(cè)試包括 里程計(jì)價(jià)測(cè)試、 掉電存儲(chǔ)測(cè)試測(cè)試。 4.1 使用的儀器儀表 數(shù)字萬(wàn)用表 DT9203 單片機(jī)仿真器 WAVE6000 燒寫(xiě)器 GF2100 雙蹤穩(wěn)壓穩(wěn)流電源 DH1718E-5 數(shù)字示波器 TDS1002 4.2 系統(tǒng)調(diào)試 根據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計(jì)中采用模塊設(shè)計(jì)法,所以方便對(duì)各電路模塊功能進(jìn)行逐級(jí)測(cè)試。 4.3 測(cè)試結(jié)果 略。 4.4 測(cè)試結(jié)果分析 略。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 結(jié) 束 語(yǔ) 本款出租車(chē)計(jì)價(jià)器比目前市場(chǎng)現(xiàn)在的增加了不少功能,其中包括單價(jià)輸出、單價(jià)調(diào)整、路程輸出、顯示當(dāng)前的系統(tǒng)時(shí)間 、 語(yǔ)音播報(bào)數(shù)據(jù)信息等功能。另外, 多功能出租車(chē)計(jì)價(jià)器還具有 性能可靠、電路簡(jiǎn)單、成本低、實(shí)用性強(qiáng)等特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。 通過(guò)本次課程設(shè)計(jì),又使我學(xué)到了許多書(shū)本上無(wú)法學(xué)到的知識(shí) ,也使也深該體會(huì)到單片機(jī)技術(shù)應(yīng)用領(lǐng)域的廣泛,不僅使我對(duì)學(xué)過(guò)的單片機(jī)知識(shí)有了很多的鞏固,同時(shí)也對(duì)單片機(jī)這一門(mén)課程產(chǎn)生了更大的興趣。 在本次課程 設(shè)計(jì)過(guò)程中,我學(xué)會(huì)了在網(wǎng)絡(luò)上查找有關(guān)本設(shè)計(jì)的各硬件的資源,其中包括: AT89S51 單片機(jī)及其引腳說(shuō)明、 AT24C02 引腳圖及其引腳功能等,為本次課程設(shè)計(jì)提供了一定的資料。由于平時(shí)很少進(jìn)行課程設(shè)計(jì),所以對(duì)于課程設(shè)計(jì)報(bào)告的格式也是近期才接觸到,經(jīng)過(guò)這兩次的設(shè)計(jì),為我們以后畢業(yè)設(shè)計(jì)的制作也奠定了一定的基礎(chǔ)。 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 附 錄 1. 系統(tǒng)實(shí)物圖 略。 2. 總體設(shè)計(jì)電路圖 多功能出租車(chē)計(jì)價(jià)器總體電路圖 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 3計(jì)價(jià)表使用說(shuō)明 ( 1) S1按鍵的功能 在出租車(chē)不走的時(shí)候,按下 S1,可以實(shí)現(xiàn)數(shù)據(jù)的分屏顯示;車(chē)在行走的時(shí)候只有總金額和單價(jià)顯示屏在顯示,當(dāng)?shù)竭_(dá)目的地的時(shí)候,客戶(hù)要求查看總的里程的時(shí)候,就可以按下 S1 切換到里程和單價(jià)顯示屏,供客戶(hù)查詢(xún)。 ( 2) S2 按鍵的功能 在按下 S1 按鍵之后,若接著按下 S2鍵則進(jìn)行單價(jià)調(diào)整(默認(rèn)為調(diào)整白天單價(jià)),當(dāng)接著按下 S1 時(shí),則進(jìn)行晚上單價(jià)調(diào),再次按下 S1 可進(jìn)行中途等待單價(jià)調(diào)整。當(dāng)單價(jià)調(diào)整結(jié)束后,可以通過(guò)過(guò)按下 S2按鍵進(jìn)行時(shí)間調(diào)整,默認(rèn)為調(diào)整時(shí),接著按下 S1 可進(jìn)行調(diào)整分,分調(diào)整后再接下 S1 可進(jìn)行 秒調(diào)整。當(dāng)時(shí)調(diào)整完成后,若接著按下 S2則又可進(jìn)行單價(jià)調(diào)整。 ( 3) S3 按鍵的功能 在顯示金額及單價(jià)時(shí),若按下 S3 鍵則顯示路程和單價(jià),再次按下 S3,可返回顯示金額及單價(jià)。 ( 4) S4按鍵的功能 在按下 S1 按鍵之后,若接著按下 S4按鍵,則進(jìn)行設(shè)定默認(rèn)晚上單價(jià),并啟動(dòng)計(jì)價(jià)器,若沒(méi)有按下 S4則可 設(shè)定默認(rèn)單價(jià)(白天),并啟動(dòng)計(jì)價(jià)器。當(dāng) 設(shè)定默認(rèn) 晚上單價(jià)結(jié)束后,再次接下 S4 按鍵,則可 設(shè)定默認(rèn) 中途等待單價(jià),并啟動(dòng)計(jì)價(jià)器。當(dāng) 設(shè)定默認(rèn) 中途等待單價(jià)后,若還按一次 S4,則返回系統(tǒng)時(shí)間的顯示。 4. 全部源程序 該出租車(chē)計(jì) 價(jià)器的系統(tǒng)軟件設(shè)計(jì)源程序如下: DAY_PRICEEQU 6FH NIGHT_PRICEEQU 6EH MIDWAY_PRICEEQU 6DH START_PRICEEQU 6CH COUNTL EQU 6BH COUNTH EQU 6AH M100 EQU 69H ; 外部中斷次數(shù) DISTANCE EQU 68H ; 行車(chē)距離 MS100 EQU 67H SEC EQU 66H MIN EQU 65H HOUR EQU 64H 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 LEDSL EQU 63H ; 時(shí)分鈔顯示緩沖區(qū) LEDSH EQU 62H LEDML EQU 61H LEDMH EQU 60H LEDHL EQU 5FH LEDHH EQU 5EH LEDDANJIAL EQU 5DH ; 總額,單價(jià)顯示緩沖區(qū) LEDDANJIAH EQU 5CH LINE_ EQU 5BH LEDCOUNT1 EQU 5AH LEDCOUNT2 EQU 59H LEDCOUNT3 EQU 58H LEDDANJIA2L EQU 57H ; 路程,單價(jià)顯示緩沖區(qū) LEDDANJIA2H EQU 56H LINE_ EQU 55H LINE_ EQU 54H LEDDISTANCEL EQU 53H LEDDISTANCEH EQU 52H LEDDAY_PL EQU 51H ; 中途,晚上,白天顯示緩沖區(qū) LEDDAY_PH EQU 50H LEDNIG_PL EQU 4FH LEDNIG_PH EQU 4EH LEDW_PL EQU 4DH LEDW_PH EQU 4CH S1 BIT P1.0 S2 BIT P1.1 S3 BIT P1.2 S4 BIT P1.3 S11 EQU 4BH S22 EQU 4AH S33 EQU 49H S44 EQU 48H M1 EQU 47H H1 EQU 46H 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 M2 EQU 45H H2 EQU 44H PRICE EQU 43H ORG 0000H AJMPMAIN ORG 0003H AJMPTO ORG 000BH AJMPTOTIME ORG 001BH AJMPTOSTART ORG 0030H MAIN: MOV SP,#70H MOV TMOD, #11H MOV TH0, #3CH MOV TL0, #0B0H MOV TH1, #3CH MOV TL1, #0B0H MOV 22H, #0AH SETB EA SETB TR0 SETB EX0 SETB IT0 SETB ET0 SETB ET1 MOV R7,#34 MOV R0,#69H LOOPL:MOV R0,#0 DEC R0 DJNZR7,LOOPL MOV COUNTL, #00H ; 起步價(jià) MOV COUNTH, #05H MOV DAY_PRICE,#25H ; 白天價(jià)格初始化 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 MOV NIGHT_PRICE,#30H ; 晚上價(jià)格初始化 MOV MIDWAY_PRICE,#10H ; 中途等待初始化 MOV START_PRICE, #50H ; 起步價(jià)初始化 MOV S11, #0 MOV S22, #0 MOV S33, #0 MOV S44, #0 MOV DISTANCE, #02H MOV HOUR, #12H KEY_MAIN: SETB TR0 ACALL HMS_DIS ACALL T100MSD ACALL T100MSD ACALL T100MSD JB S1, KEY_MAIN ACALL T10MSD JB S1, KEY_MAIN JNB S1,$ SJMP WAI1 WA1:JB S1, K1 ACALL T10MSD JB S1, K1 WAIT1:JNB S1, WAIT1 MOV R0, #LEDDANJIAL MOV R2, #6 CLR A MOV COUNTL,A MOV COUNTH,A MOV M100, A MOV DISTANCE,A BK1: MOV R0, A DEC R0 DJNZ R2, BK1 MOV PRICE,DAY_PRICE; 起動(dòng)初始化 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 MOV COUNTL, #00H; 起步價(jià) MOV COUNTH, #05H LCALL CP_DIS; 總金額和單價(jià)顯示 K1: JB S2, K2 ACALL T10MSD JB S2, K2 WAIT2: JNB S2, WAIT2 INC S22 MOV A, S22 CJNE A, #1, NEXT1 LCALL PA_DIS LJMP KEY_DJ NEXT1:CJNE A, #2, NEXT2 CLR TR0 LCALL HMS_DIS LJMP KEY_SJ NEXT2:CJNE A, #3, K2 MOV S22, #0 K2: JB S3, K3 ACALL T10MSD JB S3, K3 WAIT3:JNB S3, WAIT3 INC S33 MOV A, S33 CJNE A, #1, NXT1 LCALL DP_DIS NXT1: CJNE A, #2, NXT2 CLR C MOV A, M2 SUBB A, M1 MOV M1, A MOV A, H2 SUBB A, H1 MOV H1, A 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 NXT2: CJNE A, #3, K3 MOV S33, #0 LCALL CP_DIS K3: JB S4, BK_KEY_MAIN ACALL T10MSD JB S4, BK_KEY_MAIN WAIT4:JNB S4, WAIT4 INC S44 MOV A, S44 CJNE A, #1, NT1 MOV PRICE,DAY_PRICE LCALL CP_DIS NT1:CJNE A, #2, NT2 MOV PRICE,NIGHT_PRICE LCALL CP_DIS NT2:CJNE A, #3, NT3 MOV PRICE,MIDWAY_PRICE SETB TR1 LCALL CP_DIS NT3:CJNE A, #4, BK_KEY_MAIN MOV S44, #0 LJMP KEY_MAIN BK_KEY_MAIN: LJMP WA1 KEY_DJ:JB S1, KY1 ACALL T10MSD JB S1, KY1 WAIT5:JNB S1, WAIT5 INC S11 MOV A, S11 CJNE A, #1, NEXT11 LJMP DAY_P NEXT11: CJNE A, #2, NEXT12 LCALL NIG_P 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 NEXT12:CJNE A, #3, KY1 LCALL MID_P MOV S11, #0 LJMP KEY_MAIN KY1:JB S2, KY2 ACALL T10MSD JB S2, KY2 WAIT6:JNB S2, WAIT6 INC S22 MOV A, S22 CJNE A, #1, NEXT13 LCALL PA_DIS LJMP KEY_DJ NEXT13:CJNE A, #2, NEXT14 CLR TR0 LCALL HMS_DIS LCALL KEY_SJ NEXT14:CJNE A, #3, KY2 MOV S22, #0 LJMP KEY_MAIN KY2:AJMP KEY_DJ KEY_SJ:JB S1, KEY1 ACALL T10MSD JB S1, KEY1 WAIT7:JNB S1, WAIT7 INC S11 MOV A, S11 CJNE A, #1,NEXT21 LCALL HOU_T NEXT21:CJNE A, #2,NEXT22 LCALL MIN_T NEXT22: CJNE A, #3,KEY1 MOV S11, #0 LJMP KEY_MAIN 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 KEY1: JB S2, KEY2 ACALL T10MSD JB S2, KEY2 WAIT8:JNB S2, WAIT8 INC S22 MOV A, S22 CJNE A, #1, NEXT23 LCALL PA_DIS LJMP KEY_DJ NEXT23:CJNE A, #2, NEXT24 CLR TR0 LCALL HMS_DIS NEXT24:CJNE A, #3, KEY2 MOV S22,#0 LCALL KEY_SJ LJMP KEY_MAIN KEY2:AJMP KEY_SJ DAY_P:SETB F0 LCALL T100MSD LCALL T100MSD MOV LEDDAY_PL, #0AH MOV LEDDAY_PH, #0AH LCALL PA_DIS1 LCALL T100MSD LCALL T100MSD LCALL PA_DIS LP1: JB S3, KEY11 MOV A, #1 ADD A, DAY_PRICE DA A MOV DAY_PRICE,A MOV A, DAY_PRICE CJNE A, #99H, KEY11 MOV DAY_PRICE, #0 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 KEY11: JB S4, KEY12 LCALL T10MSD JB S4, KEY12 MOV A,DAY_PRICE ADD A, #99H DA A MOV DAY_PRICE,A CJNE A, #00H, KEY12 MOV A, #99H KEY12: JB S1, KEY13 ACALL T10MSD JB S1, KEY13 WAIT11: JNB S1, WAIT11 INC S11 MOV A, S11 CJNE A, #1, NEXT31 LCALL DAY_P NEXT31:CJNE A, #2,NEXT32 LCALL NIG_P NEXT32:CJNE A, #3,NEXT33 LCALL MID_P NEXT33:CJNE A, #4, KEY13 MOV S11, #0 KEY13:JB S2, KEY14 LCALL T10MSD JB S2, KEY14 WAIT12:JNB S2, WAIT12 LJMP KEY_MAIN KEY14:AJMP DAY_P NIG_P:SETB F0 ;調(diào)用定時(shí)延時(shí)標(biāo)志位 LCALL T100MSD LCALL T100MSD MOV LEDNIG_PL, #0AH 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 MOV LEDNIG_PH, #0AH LCALL PA_DIS1 LCALL T100MSD LCALL T100MSD LCALL PA_DIS JB S3, KEY21 LCALL T10MSD JB S3, KEY21 MOV A, #1 ADD A, NIGHT_PRICE DA A MOV NIGHT_PRICE,A CJNE A, #99H,KEY21 MOV NIGHT_PRICE,#0 KEY21:JB S4, KEY22 LCALL T10MSD JB S4, KEY22 MOV A, NIGHT_PRICE ADD A, #99H DA A MOV NIGHT_PRICE,A CJNE A, #00H, KEY22 MOV NIGHT_PRICE,#99H KEY22:JB S1, KEY23 ACALL T10MSD JB S1, KEY23 WAIT15:JNB S1, WAIT15 INC S11 MOV A, S11 CJNE A, #1, NEXT41 LCALL DAY_P NEXT41:CJNE A, #2,NEXT42 LCALL NIG_P 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 NEXT42:CJNE A, #3,NEXT43 LCALL MID_P NEXT43:CJNE A, #4, KEY23 MOV S11, #0 LJMP KEY_DJ KEY23:JB S2, KEY24 LCALL T10MSD JB S2, KEY24 WAIT30:JNB S2, WAIT30 LJMP KEY_MAIN KEY24: AJMP NIG_P MID_P: SETB F0 ;調(diào)用定時(shí)延時(shí)標(biāo)志位 LCALL T100MSD MOV LEDW_PL, #0AH MOV LEDW_PH, #0AH LCALL PA_DIS1 LCALL T100MSD LCALL PA_DIS JB S3, KEY31 LCALL T10MSD JB S3, KEY31 MOV A, MIDWAY_PRICE ADD A, #1 DA A MOV MIDWAY_PRICE,A CJNE A, #99H, KEY31 MOV MIDWAY_PRICE, #00H CJNE A, #100, KEY31 MOV MIDWAY_PRICE, #0 KEY31: JB S4, KEY32 LCALL T10MSD JB S4, KEY32 MOV A, MIDWAY_PRICE ADD A, #99H 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 DA A MOV MIDWAY_PRICE,A CJNE A, #00H, KEY32 MOV NIGHT_PRICE,#99H KEY32: JB S1, KEY33 ACALL T10MSD JB S1, KEY33 WAIT18: JNB S1, WAIT18 INC S11 MOV A, S11 CJNE A, #1, NEXT51 LCALL DAY_P NEXT51: CJNE A, #2,NEXT52 LCALL NIG_P NEXT52: CJNE A, #3,NEXT53 LCALL MID_P NEXT53: CJNE A, #4, KEY33 MOV S11, #0 LJMP KEY_DJ KEY33: JB S2, KEY34 LCALL T10MSD JB S2, KEY34 WAIT31:JNB S2, WAIT31 LJMP KEY_MAIN KEY34: AJMP MID_P HOU_T: SETB F0 ;調(diào)用定時(shí)延時(shí)標(biāo)志位 LCALL T100MSD LCALL T100MSD MOV LEDHL, #0AH MOV LEDHH, #0AH LCALL HMS_DIS1;直接調(diào)用顯示,不經(jīng)過(guò)拆分程序 LCALL T100MSD LCALL T100MSD 數(shù)理與信息工程學(xué)院課程設(shè)計(jì) 多功能出租車(chē)計(jì)價(jià)器 MOV SEC, #0 LCALL HMS_DIS JB S3, KEY41 MOV A, HOUR ADD A, #1 DA A MOV HOUR,A CJNE A, #24H, KEY41 MOV HOUR, #0 KEY41: JB S4, KEY42 MOV A, HOUR ADD A, #99H DA A MOV HOUR,A CJNE A, #99H, KEY42 MOV HOUR, #23H KEY42: JB S1, KEY43 ACALL T10MSD JB S1, KEY43 WAIT21: JNB S1, WAIT21 INC S11 MOV A, S11 CJNE A, #1,NEXT61 LJMP HOU_T NEXT61: CJNE A, #2,NEXT62 LJMP MIN_T NEXT62: CJNE A, #3,KEY43 MOV S11, #0 LJMP KEY_SJ KEY43: JB S2, KEY44 LCALL T10MSD JB S2, KEY44 WAIT32: JNB S2, WAIT32 LJMP KEY_MAIN 數(shù)理與信息工程

溫馨提示

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