版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課 程 設(shè) 計</b></p><p> 基于單片機的出租車計價器 </p><p> 院 系: 物電學(xué)院 </p><p> 專 業(yè): 電氣工程及其自動化 </p><p> 作 者:-----------------
2、------------</p><p> 班 級: 12電氣專升本 </p><p> 指導(dǎo)教師: </p><p> 日 期: 2013年6月26日 </p><p><b> 摘 要</b></p><
3、;p> 隨著出租車行業(yè)的發(fā)展,出租車已經(jīng)是城市交通的重要組成部分,出租車計價器是乘客與司機雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)志,是出租車中最重要的工具。它關(guān)系著交易雙方的利益。具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。因此,汽車計價器的研究也是十分有一個應(yīng)用價值的。而隨著單片機性能不斷提高而價格不斷下降,單片機控制在越來越多的領(lǐng)域得以應(yīng)用。本設(shè)計按照傳統(tǒng)的模式,在整個項目開發(fā)過程中,先根據(jù)控
4、制系統(tǒng)要求設(shè)計原理圖,PCB電路圖繪制,電路板制作,元器件的焊接,然后進行軟件編程,通過仿真器對系統(tǒng)硬件和軟件調(diào)試,最后將調(diào)試成功的程序固化到單片機中。這一過程中的主要問題是,應(yīng)用程序需要在硬件完成的情況下才能進行調(diào)試。本系統(tǒng)是由89C52單片機、數(shù)碼管顯示模塊、計數(shù)脈沖發(fā)生器、及里程計算等模塊組成。</p><p> 關(guān)鍵字:單片機 數(shù)碼管 顯示 計費 控制 </p><p>
5、 Abstract </p><p> with the development of the taxi industry, a taxi is an important part of urban transportation, taxi drivers and passengers the message accounting device is both sides of the trading st
6、andards, it is an important symbol of development of the taxi trade, is the most important tool in a taxi. It was about trading the interests of both parties. Has good performance both for the message accounting device t
7、axi driver friend or passengers alike is very necessary. Therefore, the research is also very s</p><p><b> 目 錄</b></p><p><b> 緒論6</b></p><p> 第1章 計價器控制器的
8、背景及方案的比較7</p><p> 1.1 選題背景和意義7</p><p> 1.2國內(nèi)外研究現(xiàn)狀、發(fā)展動態(tài)7</p><p> 1.3研究的內(nèi)容及可行性分析8</p><p> 1.3.1研究的內(nèi)容8</p><p> 1.3.2可行性分析8</p><p> 1.
9、4系統(tǒng)整體的方案8</p><p> 1.4.1 系統(tǒng)整體的方案選擇8</p><p> 1.4.2方案確定9</p><p> 1.5 顯示模塊的方案9</p><p> 1.5.1顯示模塊的方案選擇9</p><p> 1.5.2方案確定10</p><p> 第2章
10、 出租車計價器的硬件構(gòu)成11</p><p> 2.1 硬件部分的原理圖11</p><p> 2.2硬件設(shè)計11</p><p> 2.2.1 單片機模塊11</p><p> 2.2.2 AT89S52單片機及其引腳說明12</p><p> 2.3脈沖發(fā)生器模塊15</p>&
11、lt;p> 2.4顯示模塊15</p><p> 第3章 出租車幾家系統(tǒng)的軟件設(shè)計17</p><p> 3.1 系統(tǒng)主程序設(shè)計17</p><p> 3.2 里程計算的設(shè)計18</p><p> 3.3 顯示程序的設(shè)計18</p><p> 第4章 系統(tǒng)調(diào)試19</p&g
12、t;<p> 4.1 使用的儀器儀表和工具19</p><p> 4.2 調(diào)試方法 19</p><p><b> 第5章 致謝20</b></p><p><b> 參考文獻21</b></p><p><b> 附錄22</b><
13、;/p><p><b> 緒 論</b></p><p> 隨著出租車行業(yè)的發(fā)展,對出租車計費器的要求也越來越高。二十世紀(jì)后半期,隨著集成電路和計算機技術(shù)的飛速發(fā)展,單片機技術(shù)也得到了飛速發(fā)展,基于單片機的出租車計費器不僅可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價格不斷降低,特別是對小批量、多品種的產(chǎn)品需求,單片機具有體積
14、小、功能強可靠性高、價格低廉等一系列優(yōu)點,不僅已成為工業(yè)測控領(lǐng)域普遍采用的智能化控制工具,而且已滲入到人們工作和和生活的各個角落,有力地推動了各行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代,應(yīng)用前景廣闊。隨著生活水平的提高,人們已不再滿足于衣食住的享受,出行的舒適已受到越來越多人的關(guān)注。于是,出租車行業(yè)以低價高質(zhì)的服務(wù)給人們帶來了出行的享受。但總存在著買賣糾紛困擾著行業(yè)的發(fā)展。而在出租車行業(yè)中解決這一矛盾的最好方法就是改良計價器,用更加精良的計價器來
15、為乘客提供更加方便快捷的服務(wù)。</p><p> 我國在70年代開始出租車,但那時的計費系統(tǒng)大都是國外進口不但不夠準(zhǔn)確,價格還十分昂貴。出租車計價器的功能從剛開始的只顯示路程(需要司機自己定價,計算后四舍五入),到能夠自主計費,以及現(xiàn)在能夠打發(fā)票和語音提示、按時間自主變價等功能。隨著城市旅游業(yè)的發(fā)展,出租車行業(yè)已成為城市的窗口,象征著一個城市的文明程度。而本次設(shè)計的計價器是一種專用的計量儀器,它安裝在出租汽車上
16、,能連續(xù)累加,并指示出行程中任一時刻乘客應(yīng)付費用的總數(shù),其金額值是計程和計時時間的函數(shù)。出租車計價器在最初使用時具備的主要功能是根據(jù)行駛里程計價,要求精度高,可靠性好。</p><p> 出租車計價器是乘客與司機雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)志,是出租車中最重要的工具。它關(guān)系著交易雙方的利益,具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。因此,汽車計價器的研究也是十分有應(yīng)用
17、價值的。</p><p> 第1章 出租車計價器</p><p> 1.1 選題背景和意義</p><p> 隨著我國經(jīng)濟的迅速發(fā)展,人民生活水平的顯著提高,城市的交通日趨完善,出租車計價器的應(yīng)用也越來越廣泛。雖然私家車的擁有量在大幅度地提高,但是出租車還是在我國的交通運輸中承擔(dān)著重要的角色,出租車計價器是出租車上必不可少的重要儀器,它是負(fù)責(zé)出租車營運收費的專
18、用智能化儀表。用戶不僅要求計價器性能穩(wěn)定、計價準(zhǔn)確而且對它的要求也越來越高。</p><p> 近年來,我國出租汽車行業(yè)迅猛發(fā)展,出租汽車已經(jīng)成為我國城市公共交通的重要組成部分和現(xiàn)代化城市必備的基礎(chǔ)設(shè)施,成為人們工作、生活中不可缺少的交通工具。出租汽車服務(wù)行業(yè)和出租汽車計價器緊密相關(guān),因為出租汽車必須安裝出租汽車計價器才能投入營運。出租汽車計價器是一種能根據(jù)乘客乘坐汽車行駛距離和等候時間的多少進行計價,并直接顯
19、示車費值的計量器具。計價器是出租汽車的經(jīng)營者和乘坐出租汽車的消費者之間用于公平貿(mào)易結(jié)算的工具,因而計價器計價準(zhǔn)確與否,直接關(guān)系到經(jīng)營者和消費者的經(jīng)濟利益。依據(jù)國家有關(guān)法律、法規(guī),出租汽車計價器是列入國家首批強制檢定的工作計量器具之一,也是近年來國家質(zhì)量技術(shù)監(jiān)督部門強化管理的六類重點計量器具之一。</p><p> 出租車行業(yè)在我國是八十年代初興起的一項新興行業(yè),隨著我國國民經(jīng)濟的高速發(fā)展,出租汽車已成為城市公共
20、交通的重要組成部分。多年來國內(nèi)普遍使用的計價器只具備單一的計量功能。目前全世界的計價器中有90%為臺灣所生產(chǎn)?,F(xiàn)今我國生產(chǎn)計價器的企業(yè)有上百 www.51lunwen.com 家,主要是集中在北京,上海,沈陽和廣州等地。</p><p> 在出租車是城市交通的重要組成部分,行業(yè)健康和發(fā)展也獲得越來越多的關(guān)注。汽車計價器是乘客與司機雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)志,是出租車中最重要的工具。它關(guān)系著交易
21、雙方的利益。具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。</p><p> 1.2國內(nèi)外研究現(xiàn)狀、發(fā)展動態(tài)</p><p> 出租車行業(yè)在我國是八十年代初興起的一項新興行業(yè),隨著我國國民經(jīng)濟的高速發(fā)展,出租汽車已成為城市公共交通的重要組成部分。多年來國內(nèi)普遍使用的計價器只具備單一的計量功能。目前全世界的計價器中有90%為臺灣所生產(chǎn)?,F(xiàn)今我國生產(chǎn)計價器的企業(yè)有
22、上百家,主要是集中在北京,上海,沈陽和廣州等地。</p><p><b> 7</b></p><p> 我國的第一家生產(chǎn)計價器企業(yè)是重慶市起重機廠,最早的計價器全部采用機械齒輪結(jié)構(gòu),只能完成簡單的計程功能,可以說早期的計價器就是一個里程表。</p><p> 隨著科學(xué)技術(shù)的發(fā)展,產(chǎn)生了第二代計價器。它采用了手搖計算機與機械結(jié)構(gòu)相結(jié)合的方
23、式,實現(xiàn)了半機械半電子化。此時它在計程的同時還可以完成計價的工作。</p><p> 大規(guī)模集成電路的發(fā)展又產(chǎn)生了第三代計價器,也就是全電子化的計價器。它的功能也在不斷完善.當(dāng)單片機出現(xiàn)并應(yīng)用于計價器后,現(xiàn)代出租車計價器的模型也就基本具備了,它可以完成計程,計價,顯示等基本工作。單片機以及外圍芯片的不斷發(fā)展促進了計價器的發(fā)展。出租車計價器在最初使用時具備的主要功能是根據(jù)行駛里程計價,要求精度高,可靠性好。<
24、;/p><p> 1.3研究的內(nèi)容及可行性分析</p><p> 1.3.1研究的內(nèi)容</p><p> 計價器顯示的營運金額是營運里程與價格的函數(shù)(等候時間一般折算成一定比例的里程來計算)。出租車計價器通過傳感器與行駛車輛連接。出租汽車的實際里程通過傳感器的脈沖信號在計價器里折算成一定的計價營運里程。針對這一點我們來利用單片機作為控制核心,設(shè)計一款出租車計價器,
25、具有計價顯示、等待時間計價,公里數(shù)顯示,時間顯示等相關(guān)功能。</p><p> 1.3.2可行性分析</p><p> 本設(shè)計采用AT89C51單片機為主控器,實現(xiàn)對出租車的多功能的計價設(shè)計,并采用掉電存儲單元AT24C02來實現(xiàn)在系統(tǒng)掉電的時候保存單價和系統(tǒng)時間等信息,輸出采用8段數(shù)碼顯示管。本電路設(shè)計的計價器不但能實現(xiàn)基本的計價,而且還能根據(jù)白天,黑夜,中途等待來調(diào)節(jié)單價,但同時在
26、不計價的時候還能作為時鐘為司機同志提供方便。</p><p> 1.4系統(tǒng)整體的方案</p><p> 1.4.1 系統(tǒng)整體的方案選擇</p><p> 方案一:采用數(shù)字電路實現(xiàn)。首先將傳感器輸出的脈沖信號,經(jīng)過放大整形作為移位寄存器的脈沖,實現(xiàn)計價,但是考慮到這種電路過于簡單,性能不夠穩(wěn)定,而且不能調(diào)節(jié)單價,也不能根據(jù)天氣調(diào)節(jié)計費保準(zhǔn),電路也不夠?qū)嵱谩?lt
27、;/p><p> 方案二:用FPGA(可編程門陣列)實現(xiàn):利用硬件描述語言編程,仿真調(diào)試后下載到可編程期間上(CPLD)上實現(xiàn)??梢詫τ嫵誊囌麄€過程進行判斷、處理。整個過程完全實現(xiàn)了自動化和智能化。</p><p> 方案三:采用單片機控制。以單片機為核心,設(shè)計上采用89S52單片機為主控器,利用單片機豐富的IO端口,及其控制的靈活性,實現(xiàn)基本的里程計價功能和價格選擇功能。不但能實現(xiàn)所要求
28、的功能而且能在很大的程度上擴展功能,而且還可以方便的對系統(tǒng)進行升級。</p><p><b> 1.4.2方案確定</b></p><p> 本電路設(shè)計的計價器不但能實現(xiàn)基本的計價,而且還能根據(jù)白天,黑夜,中途等待來調(diào)節(jié)單價。單片機計算總價的公式為:總價=起步價+單價*(總里程-起步里程)。AT89C52作為一個單片微型計算系統(tǒng),靈活性高,其強大的控制處理功能和可
29、擴展功能為設(shè)計電路提供了很好的選擇。 </p><p> 通過比較以上三種方案,我們知道采用數(shù)字電路設(shè)計的計價器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調(diào)試,對于模式的切換需要用到機械開關(guān),機械開關(guān)時間久了會造成接觸不良,功能難以實現(xiàn)。為此采用了單片機進行設(shè)計,相對來說功能強大,用較少的硬件和適當(dāng)?shù)能浖嗷ヅ浜峡梢院苋菀椎膶崿F(xiàn)設(shè)計要求,且靈活性強,有較大的活動空間,可以通過軟件編程來完成更多的附加功能
30、,方便對系統(tǒng)進行升級和功能擴展。所以我們采用第三方案,用AT89C52單片機實現(xiàn)出租車計價的功能。</p><p> 方案二:利用555產(chǎn)生脈沖計數(shù)來模擬實際車輪的轉(zhuǎn)數(shù)。555電路來產(chǎn)生一個脈沖來模擬霍爾傳感器輸出的里程脈沖,選擇P1.0口作為信號的輸入端,內(nèi)部采用外部中斷0,555脈沖產(chǎn)生電路輸出一個脈沖信號直接加到IO口P3.2上(產(chǎn)生的頻率F=1/T=1.414/[(R1+2R2)C1]),由單片機的內(nèi)部
31、算法對脈沖計數(shù),通過計算將脈沖增加體現(xiàn)在金額和里程上。</p><p> 1.5 顯示模塊的方案</p><p> 1.5.1顯示模塊的方案選擇</p><p> 方案一:采用LED數(shù)碼管顯示。</p><p> 七段LED數(shù)碼管引腳圖如下圖:</p><p> 圖1 LED管腳配置圖</p>
32、<p> LED顯示塊是由發(fā)光二極管顯示字段的顯示器件。在單片機應(yīng)用系統(tǒng)中通常使用的是七段LED。這種顯示塊有共陰極和共陽極兩種,如上圖所示,共陰極LED顯示塊的發(fā)光二極管陰極共地,如圖中所示,當(dāng)某個發(fā)光二極管的陽極為高電平時,發(fā)光二極管點亮。共陽極LED顯示塊的發(fā)光二極管陽極并接,當(dāng)某個二極管的陰極為低電平時,該二極管點亮。</p><p> 方案二:采用液晶顯示器顯示。LCD的優(yōu)點主要包括零
33、輻射、低功耗、體積小、字符顯示精確。但如果采用LCD 液晶顯示,在距離屏幕1 m 之外就無法看清數(shù)據(jù),而且在白天其對比度也不能夠滿足要求,因此必須采用高亮度LED 數(shù)碼管顯示。</p><p><b> 1.5.2方案確定</b></p><p> 此次設(shè)計中需要顯示時間、日期等簡單字符,用LED即可滿足要求,另外LCD比LED價位高。根據(jù)上述分析故選用方案一。&
34、lt;/p><p> 第2章 出租車計價器的硬件構(gòu)成</p><p> 本設(shè)計由軟硬件相結(jié)合的方法,其中硬件設(shè)計主要包括單片機AT89S52、數(shù)據(jù)顯示部件、模擬行駛路程單元、及計價單元的設(shè)計。在硬件設(shè)計過程中,充分利用各部件的功能,實現(xiàn)多功能的出租車計價器設(shè)計。</p><p> 2.1 硬件部分的原理圖</p><p> 計價器的單片機
35、控制方案圖如圖5單片機控制方案圖所示。</p><p> 利用單片機豐富的IO端口,及其控制的靈活性,實現(xiàn)基本的里程計價功能和價格選擇、時間顯示控制等功能。不但能實現(xiàn)所要求的功能而且能在很大的程度上擴展功能,而且還可以方便的對系統(tǒng)進行升級。具體電路參見附錄中“多功能出租車計價器總體電路圖”如圖2所示</p><p> 圖2 單片機控制方案圖</p><p>&
36、lt;b> 2.2硬件設(shè)計</b></p><p> 2.2.1 單片機模塊</p><p> AT89C52是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓、高性能CMOS8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CP
37、U和閃爍存儲器組合在單個芯片中,ATMEL的89C52是一種高效微控制器。AT89C2052是它的一種精簡版本,AT89C2052是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機,片內(nèi)含2K字節(jié)的可反復(fù)擦寫的只讀程序存儲器和128bytes的隨機存取數(shù)據(jù)存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元。因為在的程序中有讀取、計算、顯示等單元
38、,2K字節(jié)的ROM可能不夠,因此我們采用AT89C52作為單片機模塊。</p><p> 2.2.2 AT89S52單片機及其引腳說明</p><p> AT89S52是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS 8位單片機,片內(nèi)含4KB的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序存
39、儲器既可在線編程(ISP)也可用傳統(tǒng)方法進行編程及通用 8位微處理器于單片芯片中,具有高性價比。</p><p> AT89S52是一個有40個引腳的芯片,引腳配置如圖3 AT89S52引腳配置所示。</p><p> 圖3 AT89S52引腳配置</p><p> AT89S52芯片的40個引腳功能為:</p><p> VCC
40、電源電壓。</p><p><b> GND 接地。</b></p><p> RST 復(fù)位輸入。</p><p> 當(dāng)RST變?yōu)楦唠娖讲⒈3?個機器周期時,將使單片機復(fù)位。WDT溢出將使該引腳輸出高電平,設(shè)置SFR AUXR的DISRTO位(地址8EH)可打開或關(guān)閉該功能。DISKRTO位缺省為RESET輸出高電平打開狀態(tài)。<
41、/p><p> XTAL1 反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p> XTAL2 來自反向振蕩放大器的輸出。</p><p> P0口 一組8位漏極開路型雙向I/O口。也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時,每位能驅(qū)動8個TTL邏輯門電路,對端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(
42、低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。</p><p> P1口 一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出
43、一個電流(IIL)。Flash編程和程序校驗期間,P1接收低8位地址。P1口部分端口引腳及功能如表2-1 P1口特殊功能所示。</p><p> 表2-1 P1口特殊功能</p><p> P2口 一個帶內(nèi)部上拉電阻的8位雙向I/O口。P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因
44、為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器時,P2口線上的內(nèi)容在整個訪問期間不改變。Flash編程和程序校驗期間,P2亦接收低8位地址。</p><p> P3口 一個帶內(nèi)部上拉電阻的8位雙向I/O口。P3的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫“
45、1”時,它們被內(nèi)部的上拉電阻把拉到高電并可作輸入端口。作輸入端口使用時,被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如表2-2 P3口特殊功能所示。P3口還接收一些用于Flash閃速存儲器編程和程序校驗期間的控制信號。</p><p> 表2-2 P3口特殊功能</p><p> PSEN/ 程序儲存允許輸出是外
46、部程序存儲器的讀先通信號,當(dāng)AT89S51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN/有效,即輸出兩個脈沖。當(dāng)訪問外部數(shù)據(jù)存儲器,沒有兩次有效的PSEN/信號。</p><p> EA/VPP 外部訪問允許。欲使CPU僅訪問外部程序存儲器,EA端必須保持低電平,需注意的是:如果加密位LB1被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。Flash存儲器編程時,該引腳加上+5V的編程電壓VPP。</
47、p><p> 2.3脈沖發(fā)生器模塊</p><p> 圖4 脈沖發(fā)生器模塊</p><p> NE555定時器具有定時精度高、工作速度快、可靠性好、電源電壓范圍寬(3-18V)、輸出電流大(可高達200mA)等優(yōu)點,可組成各種波形的脈沖振蕩電路、定時延時電路、是一種電路結(jié)構(gòu)簡單、使用方便靈活、用途廣泛的多功能中規(guī)模集成電路。只需在外部配接適當(dāng)?shù)淖枞菰憧山M成施
48、密特觸發(fā)器、單穩(wěn)態(tài)觸發(fā)器和多諧振蕩器等多種應(yīng)用電路,在這個電路中是多諧振蕩器,它電路簡單、性能穩(wěn)定,波形標(biāo)準(zhǔn)。</p><p><b> 2.4顯示模塊</b></p><p> 本設(shè)計是用八個八段數(shù)碼管動態(tài)掃描來實現(xiàn)的計價的顯示。</p><p> 圖5 數(shù)碼管封裝圖及數(shù)據(jù)線與數(shù)碼管管腳關(guān)系</p><p>
49、第3章 出租車計價器的程序設(shè)計</p><p> 本系統(tǒng)的軟件設(shè)計主要可分為主程序模塊、定時計數(shù)中斷程序、里程計數(shù)中斷服務(wù)程序、中途等待中斷服務(wù)程序、顯示子程序服務(wù)程序、鍵盤服務(wù)程序六大模塊。下面對各部分模塊作介紹。</p><p> 3.1 系統(tǒng)主程序設(shè)計</p><p> 在主程序模塊中,需要完成對各接口芯片的初始化、出租車起價和單價的初始化、中斷向量
50、的設(shè)計以及開中斷、循環(huán)等待等工作。另外,在主程序模塊中還需要設(shè)置啟動/清除標(biāo)志寄存器、里程寄存器和價格寄存器,并對它們進行初始化。然后,主程序?qū)⒏鶕?jù)各標(biāo)志寄存器的內(nèi)容,分別完成啟動、清除、計程和計價等不同的操作。主程序流程圖如圖6 所示。當(dāng)按下S1時,就啟動計價,將根據(jù)里程寄存器中的內(nèi)容計算和判斷出行駛里程是否已超過起價公里數(shù)。若已超過,則根據(jù)里程值、每公里的單價數(shù)和起價數(shù)來計算出當(dāng)前的累計價格,并將結(jié)果存于價格寄存器中,然后將時間和當(dāng)
51、前累計價格送顯示電路顯示出來。當(dāng)?shù)竭_目的地的時候,由于霍爾開關(guān)沒有送來脈沖信號,就停止計價,顯示當(dāng)前所應(yīng)該付的金額和對應(yīng)的單價,到下次啟動計價時,系統(tǒng)自動對顯示清零,并重新進行初始化過程。</p><p><b> 圖6 主程序流程圖</b></p><p> 3.2 里程計算的設(shè)計</p><p> 計算程序根據(jù)里程數(shù)分別進入不同的計算
52、公式。如果里程大于3公里,則執(zhí)行公式:總金額=起步價+(里程-3)*單價;否則,執(zhí)行公式:總金額=起步價。</p><p><b> 圖7里程計算流程圖</b></p><p> 3.3顯示程序的設(shè)計</p><p> 顯示程序利用定時器每1ms產(chǎn)生一次中斷,相應(yīng)變量置位,點亮一個數(shù)碼管,顯示一位數(shù)據(jù),利用主函數(shù)內(nèi)的循環(huán),實現(xiàn)動態(tài)掃描顯示
53、,同時根據(jù)數(shù)碼管余輝和人眼暫留現(xiàn)象,即可實現(xiàn)顯示。</p><p><b> 第4章 系統(tǒng)調(diào)試</b></p><p> 根據(jù)系統(tǒng)設(shè)計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。測試包括里程計價測試。</p><p> 4.1 使用的儀器儀表和工具 </p><p> 4.2 調(diào)試的方
54、法</p><p> 根據(jù)系統(tǒng)設(shè)計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計中采用模塊設(shè)計法,所以方便對各電路模塊功能進行逐級測試。</p><p> 確定方案后的焊接過程很順利,3天后就完成了大部分電路的焊接工作,進行簡單的程序測試后發(fā)現(xiàn)一個問題:由于要用到555芯片產(chǎn)生脈沖,預(yù)先設(shè)計的電路中沒有提供5V電源給555供電。我們想到外接一個5V的直
55、流電源,發(fā)現(xiàn)這樣會使整個系統(tǒng)顯示累贅而難以操作。后來我們想到與單片機最小系統(tǒng)的Vcc和555芯片共用5V電源。于是將555的電源和地接到了最小系統(tǒng)的Vcc和地。這樣,只要單片機一上電,555便可以正常工作,操作起來非常方便和快捷。</p><p> 在軟件設(shè)計過程中遇到一個嚴(yán)重的問題就是系統(tǒng)的時序設(shè)計。我們發(fā)現(xiàn)程序的鍵盤掃描程序和中斷程序發(fā)生沖突。導(dǎo)致按鍵功能和顯示功能不能同時出現(xiàn)。后來經(jīng)過排查發(fā)現(xiàn),中斷子程序
56、設(shè)計的不合理,導(dǎo)致發(fā)生了中斷嵌套。將中斷子程序的部分內(nèi)容調(diào)整到主程序中調(diào)用子程序則這解決了這一問題。</p><p><b> 致 謝</b></p><p> 經(jīng)過這些天有關(guān)于出租車計價器的課程設(shè)計,使我對單片機的應(yīng)用有了更深的了解。在課程設(shè)計的過程中,還是碰到了許多的問題。比如,對于數(shù)碼管動態(tài)掃描顯示和鍵盤的延時防抖的綜合編程不能較好地解決;對于代碼的前后順
57、序及調(diào)用掌握得還不夠好;對于一些相關(guān)的應(yīng)用軟件沒能熟練掌握。通過這幾天晚上的苦想和反復(fù)調(diào)試,以及參考網(wǎng)上的程序,最終還是把問題解決了。</p><p> 通過這次課程設(shè)計,我最大的收獲就是自己的動手能力和獨立解決問題的能力得到了很大的提高,也充分體會到了自己設(shè)計東西的樂趣、學(xué)會查閱資料和對別人的東西融會變通的重要性,也明白了很多知識光靠趴在書本上學(xué)是學(xué)不到其中的精髓的,必須親自去試著實踐,親自去經(jīng)歷才能對它們真
58、正的掌握,凡事都要自己去動下手,去實踐一下,遇到困難,永遠(yuǎn)不要沮喪氣餒。在動手的過程中,不僅能增強實踐能力,而且在理論上可以有更深的認(rèn)識;這次設(shè)計給了我極大的鼓舞和信心,相信在以后的學(xué)習(xí)中可以通過不斷的摸索和實踐來提高其他方面的知識。通過本次課程設(shè)計,又使我學(xué)到了許多書本上無法學(xué)到的知識,也使也深該體會到單片機技術(shù)應(yīng)用領(lǐng)域的廣泛,不僅使我對學(xué)過的單片機知識有了很多的鞏固,同時也對單片機這一門課程產(chǎn)生了更大的興趣。</p>
59、<p> 在此特別感謝我們的指導(dǎo)老師:**老師!因為**老師認(rèn)真負(fù)責(zé),教學(xué)水平高,對同學(xué)們指導(dǎo)耐心細(xì)致,不斷鼓勵我,幫助我,我才能順利的完成此次設(shè)計,實現(xiàn)專業(yè)學(xué)習(xí)的又一次飛躍!在丁老師的幫助下,我不僅切實掌握了專業(yè)知識,更是在實際操作中學(xué)到了很多實踐經(jīng)驗,對我后續(xù)的學(xué)習(xí)及工作打下了良好的基礎(chǔ)。</p><p><b> 參考文獻</b></p><p>
60、 [1] 華成英,童詩白.模擬電子技術(shù)基礎(chǔ)[M].第五版.北京:清華大學(xué)出版社,2006</p><p> [2] 閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].第五版.北京:高等教育出版社,2004</p><p> [3] 李金平,沈明山.電子系統(tǒng)設(shè)計[M].北京:電子工業(yè)出版社,2007</p><p> [4] 潘永雄,沙河.電子線路CAD使用教程[M].西安:西安
61、電子科技大學(xué)出版社,2007</p><p> [5]譚浩強.MCS-51單片機應(yīng)用教程[M].北京:清華大學(xué)出版社,2004</p><p> [6] 劉海成.單片機及應(yīng)用系統(tǒng)設(shè)計原理與實踐[M].北京:北京航空航天大學(xué)出版社,2009</p><p> [7] 李朝青.單片機原理及接口技術(shù)[M].第三版.北京:北京航空航天大學(xué)出版社,2005</p&
62、gt;<p> [8] 梁曉雯.電子系統(tǒng)設(shè)計基礎(chǔ)[M].第三版.北京:中國科學(xué)技術(shù)大學(xué)出版社,2008。</p><p> [9] 李建忠.單片機原理及應(yīng)用[M].第二版.西安:西安電子科技大學(xué)出版社,2008。</p><p> [10] 王平.電子CAD應(yīng)用教程[M].第一版.浙江:東南大學(xué)出版社,2009。</p><p> [11] 何
63、小艇.電子系統(tǒng)設(shè)計[M].第四版.浙江:浙江大學(xué)出版社,2008。</p><p> [12] 黃智偉.全國大學(xué)生電子設(shè)計競賽電路設(shè)計[M].第一版.北京:北京航空航天大學(xué)出版社,2011。</p><p> [13] 馮育長.單片機系統(tǒng)設(shè)計與實例指導(dǎo)[M].第三版.西安:西安電子科技大學(xué),2007。</p><p> [14] 于永權(quán).單片機在控制系統(tǒng)中的應(yīng)
64、用[M].第二版. 北京:北京航空航天大學(xué)出版社,2010。</p><p><b> 附錄</b></p><p> 附錄1 總體設(shè)計電路圖</p><p><b> 附錄2元件清單 </b></p><p><b> 附錄3 PCB板圖</b></p>
65、<p><b> 附錄4 仿真圖</b></p><p><b> 附錄5 源程序</b></p><p> #include <reg52.h></p><p> #include <intrins.h></p><p> #define uchar
66、unsigned char</p><p> #define uint unsigned int</p><p> #define ON 1</p><p> #define OFF 0</p><p> sbit led1=P3^3; //端口定義;</p><p> sbit led2=P3
67、^4;</p><p> sbit key1=P1^0;</p><p> sbit key2=P1^1;</p><p> sbit key3=P1^2;</p><p> uchar Switch=OFF;</p><p> uchar Night=OFF;</p><p> u
68、int Viameter=0; </p><p> uint dat[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};// 數(shù)碼管為共陽</p><p> uint Money=0;</p><p> void Delay(uint i)</p><p><
69、b> {</b></p><p><b> do</b></p><p><b> {</b></p><p><b> i-=1;</b></p><p><b> }</b></p><p><
70、b> while(i);</b></p><p><b> }</b></p><p> void key() //按鍵定義;</p><p><b> {</b></p><p> if(key1==0)</
71、p><p><b> {</b></p><p><b> Delay(5);</b></p><p> if(key1==0)</p><p><b> {</b></p><p> while(!key1);</p><p&
72、gt;<b> {</b></p><p> if(Switch==ON)</p><p><b> {</b></p><p> Switch=OFF;</p><p><b> led1=1;</b></p><p><b>
73、}</b></p><p><b> else</b></p><p><b> {</b></p><p> Switch=ON;</p><p><b> led1=0;</b></p><p><b> }</
74、b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(key2==0)</p><p><b> {</b></p>
75、;<p><b> Delay(5);</b></p><p> if(key2==0)</p><p><b> {</b></p><p> while(!key2);</p><p> Switch=OFF;</p><p><b>
76、 Money=0;</b></p><p> Viameter=0;</p><p><b> led1=1;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(key3==
77、0)</p><p><b> {</b></p><p><b> Delay(5);</b></p><p> if(key3==0)</p><p><b> {</b></p><p> while(!key3);</p>
78、<p> if(Night==ON)</p><p><b> {</b></p><p> Night=OFF;</p><p><b> led2=1;</b></p><p><b> }</b></p><p><b&
79、gt; else</b></p><p><b> {</b></p><p><b> Night=ON;</b></p><p><b> led2=0;</b></p><p><b> }</b></p><
80、;p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void DisV() //里程定義;</p><p><b> {</b></p&g
81、t;<p> uint ge,shi,bai,qian;</p><p> qian=(Viameter*100)/1000;</p><p> bai=(Viameter*100)%1000/100;</p><p> shi=(Viameter*100)%100/10;</p><p> ge=(Viameter*
82、100)%10;</p><p><b> P2=0x01;</b></p><p> P0=dat[qian];</p><p> Delay(100);</p><p><b> P2=0x02;</b></p><p> P0=(dat[bai]&0x
83、7f);</p><p> Delay(100);</p><p><b> P2=0x04;</b></p><p> P0=dat[shi];</p><p> Delay(100);</p><p><b> P2=0x08;</b></p>&
84、lt;p> P0=dat[ge];</p><p> Delay(100);</p><p><b> }</b></p><p> void DisM() //價格定義;</p><p><b> {</b></p><p> ui
85、nt ge,shi,bai,qian;</p><p> qian=Money/1000;</p><p> bai=Money%1000/100;</p><p> shi=Money%100/10;</p><p> ge=Money%10;</p><p><b> P2=0x10;</
86、b></p><p> P0=dat[qian];</p><p> Delay(100);</p><p><b> P2=0x20;</b></p><p> P0=dat[bai];</p><p> Delay(100);</p><p><b
87、> P2=0x40;</b></p><p> P0=(dat[shi]&0x7f);</p><p> Delay(100);</p><p><b> P2=0x80;</b></p><p> P0=dat[ge];</p><p> Delay(100
88、);</p><p><b> }</b></p><p> void main()</p><p><b> {</b></p><p><b> EA=1;</b></p><p><b> EX0=1;</b>&l
89、t;/p><p><b> IT0=1;</b></p><p><b> while(1)</b></p><p><b> {</b></p><p><b> key();</b></p><p><b> D
90、isV();</b></p><p><b> DisM();</b></p><p><b> }</b></p><p><b> }</b></p><p> void exter0() interrupt 0</p><p>
91、<b> {</b></p><p> if(Switch==ON)</p><p><b> {</b></p><p> Viameter++;</p><p> if(Viameter<=3)</p><p><b> Money=60;&l
92、t;/b></p><p><b> else</b></p><p><b> {</b></p><p> if(Night==OFF)</p><p> Money=Money+17;</p><p><b> else</b>&l
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計--出租車計價器
- 單片機課程設(shè)計---出租車計價器
- 單片機課程設(shè)計--出租車計價器
- 單片機課程設(shè)計出租車計價器
- 單片機課程設(shè)計----出租車計價器
- 單片機課程設(shè)計-出租車計價器
- 單片機課程設(shè)計--出租車計價器
- 單片機課程設(shè)計---出租車計價器設(shè)計
- 單片機課程設(shè)計--出租車計價器設(shè)計
- 課程設(shè)計--基于單片機的出租車計價器的設(shè)計
- 基于單片機的出租車計價器的設(shè)計(課程設(shè)計)
- 單片機課程設(shè)計論文---出租車計價器
- 課程設(shè)計---基于51單片機的出租車計價器
- 基于單片機的出租車計價器設(shè)計
- 基于單片機的出租車計價器
- 基于51單片機的出租車計價器設(shè)計
- 畢業(yè)設(shè)計(論文)-單片機課程設(shè)計出租車計價器
- 基于單片機控制的的出租車計價器設(shè)計
- 課程設(shè)計--基于at89c52單片機出租車計價器設(shè)計
- 基于單片機的出租車計價器畢業(yè)設(shè)計
評論
0/150
提交評論