客車計價器(1)_第1頁
客車計價器(1)_第2頁
客車計價器(1)_第3頁
客車計價器(1)_第4頁
客車計價器(1)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、課程設計報告課程名稱:單片機原理及應用課程設計 設計題目: 客運計價器 系 別: 通信與控制工程系 專 業(yè): 電子信息工程 班 級: 學生姓名: 學 號: 起止日期: 指導教師: 教研室主任: 2指導教師評語:指導教師簽名: 年 月 日成績評定項 目權重成績1、設計過程中出勤、學習態(tài)度等方面0.22、課程設計質(zhì)量與答辯0.53、設計報告書寫及圖紙規(guī)范程度0.3總 成 績 教研室審核意見:教研室主任簽字: 年 月 日教學系審核意見: 主任簽字: 年 月 日摘 要摘 要:隨著客車行業(yè)的發(fā)展,客車已經(jīng)是城市交通的重要組成部分,從加強行業(yè)管理以及減少司機與乘客的糾紛出發(fā),具有良好性能的計價器對客車司機

2、和乘客來說都是很必要的。而采用模擬電路和數(shù)字電路設計的計價器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調(diào)試。而采用AT89C52單片機進行的設計,相對來說功能強大,用較少的硬件和適當?shù)能浖嗷ヅ浜峡梢院苋菀椎貙崿F(xiàn)設計要求,且靈活性強,可以通過軟件編程來完成更多的附加功能。針對計費模式的切換,通過軟件編程就可以輕易而舉的實現(xiàn)。避免了機械開關帶來的不穩(wěn)定因素。關鍵字:客車計價器;AT89C52單片機;控制;軟件編程 目 錄1設計基本要求12 系統(tǒng)的組成及工作原理12.1 系統(tǒng)的硬件構成及功能12.2 AT89C52單片機及其引腳說明23 硬件電路方案設計43.1 方案比較與確定43.2顯示

3、單元電路設計53.3 鍵盤顯示模塊設計63.4掉電保護模塊設計64 系統(tǒng)軟件設計74.1 系統(tǒng)主程序設計74.2 定時中斷服務程序84.3 顯示服務程序94.4 鍵盤服務程序95系統(tǒng)調(diào)試與測試106 心得體會及致謝10參考文獻12附錄1 元件清單13附錄2 源程序14 1設計基本要求 本次課程設計利用單片機技術來實現(xiàn)一臺多功能出租車計價器,具有性能可靠、電路簡單、成本低等特點。(1)顯示:可以顯示金額、時間、單價。(2)計費功能:不同情況具有不同的收費標準:白天、晚上、途中等待;并能進行手動修改單價。(3)按鍵功能:轉(zhuǎn)換按鍵:對白天/黑夜收費標準的轉(zhuǎn)換;修改按鍵:對單價進行調(diào)整;復位按鍵:計數(shù)

4、器能將記錄數(shù)據(jù)自動清零。2 系統(tǒng)的組成及工作原理2.1 系統(tǒng)的硬件構成及功能 本系統(tǒng)的硬件設計主要包括單片機AT89C52、數(shù)據(jù)顯示部件、模擬行駛時間單元、及計價單元的設計。在硬件設計過程中,充分利用各部件的功能,實現(xiàn)多功能的出租車計價器設計。 利用單片機豐富的IO端口,及其控制的靈活性,實現(xiàn)基本的時間計價功能和價格選擇、總價顯示控制等功能。而采用模擬電路和數(shù)字電路設計的計價器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調(diào)試。在硬件設計過程中,充分利用各部件的功能,實現(xiàn)多功能的出租車計價器設計。而采用AT89C52單片機進行的設計,相對來說功能強大,用較少的硬件和適當?shù)能浖嗷ヅ浜峡梢院?/p>

5、容易地實現(xiàn)設計要求,且靈活性強,可以通過軟件編程來完成更多的附加功能。不但能實現(xiàn)所要求的功能而且能在很大的程度上擴展功能,而且還可以方便的對系統(tǒng)進行升級。具體電路參見附錄中“多功能出租車計價器總體電路圖”如圖2.1 單片機控制方案圖。89C52單片機單價顯示金額顯示鍵盤控制AT24C02掉電存儲串口顯示驅(qū)動電路里程計算 2.1 單片機控制方案圖2.2 AT89C52單片機及其引腳說明AT89C52是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS 8位單片機,片內(nèi)含8KB的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術生產(chǎn),兼容標準8051指令系統(tǒng)及引腳。

6、它集Flash程序存儲器既可在線編程(ISP)也可用傳統(tǒng)方法進行編程及通用 8位微處理器于單片芯片中,具有高性價比。AT89C52是一個有40個引腳的芯片,引腳配置如圖2.2 AT89C52引腳配置所示。圖2.2 AT89C52引腳配置AT89C52芯片的40個引腳功能為:VCC:電源電壓。GND:接地。RST:復位輸入。當RST變?yōu)楦唠娖讲⒈3?個機器周期時,將使單片機復位。WDT溢出將使該引腳輸出高電平,設置SFR AUXR的DISRTO位可打開或關閉該功能。DISKRTO位缺省為RESET輸出高電平打開狀態(tài)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2: 來自反向

7、振蕩放大器的輸出。P0口: 一組8位漏極開路型雙向I/O口。也即地址/數(shù)據(jù)總線復用口。作為輸出口用時,每位能驅(qū)動8個TTL邏輯門電路,對端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。P1口:一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被

8、外部信號拉低時會輸出一個電流(IIL)。Flash編程和程序校驗期間,P1接收低8位地址。P1口部分端口引腳及功能如表2-1 P1口特殊功能所示。表2-1 P1口特殊功能P1口引腳特殊功能P1.5MOSI(用于ISP編程)P1.6MOSI(用于ISP編程)P1.7SCK(用于ISP編程)P2口:一個帶內(nèi)部上拉電阻的8位雙向I/O口。P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器

9、時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器時,P2口線上的內(nèi)容在整個訪問期間不改變。Flash編程和程序校驗期間,P2亦接收低8位地址。P3口: 一個帶內(nèi)部上拉電阻的8位雙向I/O口。P3的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫“1”時,它們被內(nèi)部的上拉電阻把拉到高電并可作輸入端口。作輸入端口使用時,被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如表2-2 P3口特殊功能所示。P3口還接收一些用于Flash閃速存儲器編程和程序校驗期間的控制信號。 表2-2 P3口特殊功能P3口引腳特

10、殊功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2(外部中斷0)P3.3(外部中斷1)P3.4T0(定時器0外部輸入)P3.5T1(定時器1外部輸入)P3.6 (外部數(shù)據(jù)存儲器寫選通)P3.7 (外部數(shù)據(jù)存儲器讀選通) PSEN/:程序儲存允許輸出是外部程序存儲器的讀先通信號,當AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN/有效,即輸出兩個脈沖。當訪問外部數(shù)據(jù)存儲器,沒有兩次有效的PSEN/信號。EA/VPP 外部訪問允許。欲使CPU僅訪問外部程序存儲器,EA端必須保持低電平,需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。Fl

11、ash存儲器編程時,該引腳加上+12V的編程電壓VPP。3 硬件電路方案設計3.1 方案比較與確定 客車計價器基本功能部分是根據(jù)里程數(shù)來完成總金額的輸出。實現(xiàn)方法有兩種。方案一:采用數(shù)字電路控制。其原理方框圖如圖3.1所示。采用傳感器件,輸出脈沖信號,經(jīng)過放大整形作為移位寄存器的脈沖,實現(xiàn)計價,但是考慮到這種電路過于簡單,性能不夠穩(wěn)定,而且不能調(diào)節(jié)單價,也不能根據(jù)天氣調(diào)節(jié)計費標準,電路不夠?qū)嵱谩?圖3.1 數(shù)字電路實現(xiàn)框圖方案二:采用單片機控制。利用單片機豐富的IO端口,及其控制的靈活性,實現(xiàn)基本的里程計價功能和價格調(diào)節(jié)、時鐘顯示功能。本方案有較大的活動空間,不但能實現(xiàn)所要求的功能而且能在很大

12、的程度上擴展功能,而且還可以方便的對系統(tǒng)進行升級,所以我們采用后一種方案。3.2顯示單元電路設計 由于設計要求有時間、金額、單價,所以采用6位LED數(shù)碼管的分屏顯示。顯示電路由6位LED數(shù)碼管組成。電路如圖3.2所示,8255A用于連接51單片機和LED數(shù)碼管,51單片機的P0.0P0.7分別順序?qū)?255A的D0D7,8255A的PA口為數(shù)碼管的位選,PA為0xdf時,選擇右一數(shù)碼管。以次類推。PB口為數(shù)碼管段選,PB為0xa0時,數(shù)碼管顯示為零。各個數(shù)碼管顯示原理示意圖見圖3.2:圖3.2 數(shù)碼管顯示原理示意圖3.3 鍵盤顯示模塊設計鍵盤采用4*4矩陣按鍵,接在8255A的PC口,當有鍵

13、按下時,相對應的接口被置0。矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點上,設置一個按鍵。如圖3.3所示,行線接PC.0PC.3,列線接PC.4PC.7。圖3.3 矩陣鍵盤電路按鍵S3:復位按鍵。按下該鍵,所以數(shù)據(jù)自動清零。按鍵S4:白天和黑夜計價方式的切換鍵。按鍵S12:開始計價按鍵。外中斷0按鍵:表示汽車停止,并同時開始時間計價。3.4掉電保護模塊設計掉電存儲單元的作用是在電源斷開的時候,存儲當前設定的單價信息。掉電保護的芯片較多,如AT24C02 是ATMEL 公司的2KB 字節(jié)的電可擦除存儲芯片,采用兩線串行的總線和單

14、片機通訊,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存40年以上,而且采用8 腳的DIP 封裝,使用方便。掉電保護電路圖如下圖3.4所示: 圖3.4 掉電保護電路圖4 系統(tǒng)軟件設計 本系統(tǒng)的軟件設計主要可分為主程序模塊、定時計數(shù)中斷程序、時間計數(shù)中斷服務程序、顯示子程序服務程序、鍵盤服務程序五大模塊。下面對各部分模塊作介紹。4.1 系統(tǒng)主程序設計 在主程序模塊中,需要完成對各接口芯片的初始化、客車起價和單價的初始化、中斷向量的設計以及開中斷、循環(huán)等待等工作。另外,在主程序模塊中還需要設置啟動/清除標志寄存器、時間寄存器和價格寄存器,

15、并對它們進行初始化。然后,主程序?qū)⒏鶕?jù)各標志寄存器的內(nèi)容,分別完成啟動、清除、計時和計價等不同的操作。主程序流程圖如圖4.1 所示。當按下S12時,就啟動計價,將根據(jù)時間寄存器中的內(nèi)容計算,并將結(jié)果存于價格寄存器中,然后將時間和當前累計價格送顯示電路顯示出來。到下次啟動計價時,系統(tǒng)自動對顯示清零,并重新進行初始化過程。圖4.1 程序總流程4.2 定時中斷服務程序在定時中斷服務程序中,每1/20s 產(chǎn)生一次中斷,當產(chǎn)生20次中斷的時候,也就到了一秒,送數(shù)據(jù)到相應的顯示緩沖單元,并調(diào)用顯示子程序?qū)崟r顯示。其程序流程如圖4.2 所示。 圖4.2 定時中斷服務程序4.3 顯示服務程序數(shù)碼管在一般情況下

16、顯示時間,總價格,單價三項數(shù)據(jù)。程序流程圖如圖4.3: 圖4.3 顯示服務程序4.4 鍵盤服務程序鍵盤采用查詢的方式,放在主程序中,當沒有按鍵按下的時候,單片機循環(huán)主程序,一旦有按鍵按下,便轉(zhuǎn)向相應的子程序處理,處理結(jié)束再返回。三個按鍵分別對應三個簡單的子程序。如果按鍵S3被按下,單片機復位鍵:實時數(shù)據(jù)自動清零。如果按鍵S4被按下,白天黑夜計價方式切換,按一次進入白天計價方式,兩次進入黑夜計價方式,循環(huán)按鍵。5系統(tǒng)調(diào)試與測試根據(jù)系統(tǒng)設計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。測試包括時間計價測試、掉電存儲測試。 根據(jù)系統(tǒng)設計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,

17、軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設計中采用模塊設計法,所以方便對各電路模塊功能進行逐級測試。在軟件編程時,應充分利用原理圖,不然會在編程時導致硬件與軟件不能對應起來,使程序無法實現(xiàn)功能,還有在編程時子程序的名稱應與其功能對應,否則會使別人在讀程序的時候不能及時理解程序含義,而且在軟件調(diào)試時邏輯一定要清晰,不然在找錯時會浪費很多時間。6 心得體會及致謝 經(jīng)過這些天有關于客車計價器的課程設計,使我對單片機的應用有了更深的了解。在課程設計的過程中,還是碰到了許多的問題。比如,對于數(shù)碼管動態(tài)掃描顯示和鍵盤的延時防抖的綜合編程不能較好地解決;對于代碼的前后順序及調(diào)用掌握得還不夠好;對于一些相關的應用軟件

18、沒能熟練掌握。通過這幾天晚上的苦想和反復調(diào)試,以及參考網(wǎng)上的程序,最終還是把問題解決了。通過這次課程設計,我最大的收獲就是自己的動手能力和獨立解決問題的能力得到了很大的提高,也充分體會到了自己設計東西的樂趣、學會查閱資料和對別人的東西融會變通的重要性,也明白了很多知識光靠趴在書本上學是學不到其中的精髓的,必須親自去試著實踐,親自去經(jīng)歷才能對它們真正的掌握,凡事都要自己去動下手,去實踐一下,遇到困難,永遠不要沮喪氣餒。在動手的過程中,不僅能增強實踐能力,而且在理論上可以有更深的認識;這次設計給了我極大的鼓舞和信心,相信在以后的學習中可以通過不斷的摸索和實踐來提高其他方面的知識。通過本次課程設計,

19、又使我學到了許多書本上無法學到的知識,也使也深該體會到單片機技術應用領域的廣泛,不僅使我對學過的單片機知識有了很多的鞏固,同時也對單片機這一門課程產(chǎn)生了更大的興趣。在本次課程設計過程中,我學會了在網(wǎng)絡上查找有關本設計的各硬件的資源,其中包括:AT89C52單片機及其引腳說明,為本次課程設計提供了一定的資料。也為以后的進一步學習打下了堅實的基礎。最后要感謝學校給了我們這次課程設計的機會,讓我們將理論能運用于實踐提供了條件,感謝指導老師譚老師對我們設計電路的指導與論證,同時也要感謝系里各位老師對于我們方案的敲定、元器件的選擇、電路板的制作、元件的焊接的建議與指導,感謝同學們對我們組的支持。祝愿老師

20、們工作順利,同學們學業(yè)有成!參考文獻1張友德、趙志英、涂時亮. 單片微型機原理、應用與實驗 上海:復旦大學出版社2005.12 .2 徐光翔. 單片機原理接口及應用 南京大學出版社 .3 張淑清等. 單片微型計算機接口技術及其應用 北京:國防工業(yè)出版社. 4 王曉君等. MCS-51及兼容單片機原理與選型 北京:電子工業(yè)出版社.5張鑫、華臻、陳書謙單片機原理及應用M電子工業(yè)出版社,2005P1101366丁元杰、吳大偉單片微機實題集與實驗指導書M機械工業(yè)出版社.2004P1241257 AT89C52概述EB/OL:附錄1 元件清單名稱型號 數(shù)量 電阻1K 10若

21、干 電容104 33若干 單片機芯片AT89C521 擴展芯片8255A1 三極管90156 數(shù)碼管 2 開關1 按鍵 19 USB串口線1 USB串口電源線1 掉電保護芯片AT24C021 發(fā)光二極管1 數(shù)字萬用表DT92031 單片機仿真器STC_ISP1 雙蹤穩(wěn)壓穩(wěn)流電源DH1718E-51 數(shù)字示波器TDS10021 電烙鐵1附錄2 源程序#include<reg52.h>#include<absacc.h>#define uchar unsigned char#define uint unsigned int#define PA XBYTE0xd9ff#def

22、ine PB XBYTE0xdbff#define PC XBYTE0xddff#define CON XBYTE0xdfff/sbit cs=P25;/sbit A1=P21;/sbit A0=P20;uchar count=0,k;uint temp,s,t;uchar code table=0xa0,0xbb,0x62,0x2a,0x39,0x2c,0x24,0xba,0x20,0x28,0xff;void delay(uint z)/毫秒延時函數(shù)uint x,y;for(x=z;x>0;x-)for(y=120;y>0;y-); display1(uchar bai,uch

23、ar shi,uchar ge)/計價顯示函數(shù)PB=tablebai;PA=0x37;delay(5);PA=0xff;PB=tableshi;PA=0x2f;delay(5);PA=0xff;PB=tablege;PA=0x1f;delay(5);PA=0xff;display2(uchar shiw,uchar wan,uchar qian)/路程或時間顯示函數(shù)PB=tableshiw;PA=0x3e;delay(5);PA=0xff;PB=tablewan;PA=0x3d;delay(5);PA=0xff;PB=tableqian;PA=0x3b;delay(5);PA=0xff;uch

24、ar keyscan()/鍵盤掃描函數(shù)uchar tem;PC=0x10;tem=PC;tem=tem&0x0f;if(tem=0x08)tem=PC;tem=tem&0x0f;delay(5);if(tem=0x08)while(PC=0x18);return 1;if(tem=0x04)return 2;if(tem=0x02)return 3;else return 0;void main()/ 主函數(shù)uchar ch,bai,shi,ge,sbai,sshi,sge,tbai,tshi,tge, key,b=1;CON=0x81;/設置8255控制字EA=1;EX0=1;EX1=1;TMOD=0x11;IT1=1;IT0=1;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;ET1=1;ET0=1;while(1)temp=30;display1(0,3,0);/

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論