




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于單片機(jī)公交車自動(dòng)找零系統(tǒng)的控制系統(tǒng)設(shè)計(jì)摘要:本文詳細(xì)介紹了公交車自動(dòng)找零機(jī)控制系統(tǒng)的方案設(shè)計(jì)、硬件選擇、軟件規(guī)劃和編寫,并重點(diǎn)描述了自動(dòng)找零機(jī)系統(tǒng)的工作原理、系統(tǒng)設(shè)計(jì)、軟件編程的原那么和技巧。該系統(tǒng)以單片機(jī)AT89C51芯片為核心,采用集中控制方式實(shí)現(xiàn)了對(duì)自動(dòng)找零機(jī)全過程的自動(dòng)控制。本系統(tǒng)選擇LCD顯示器實(shí)現(xiàn)投幣總數(shù)的顯示功能,獨(dú)立式鍵盤按鍵作為乘車人數(shù)選擇端。此外,系統(tǒng)程序采用keil軟件進(jìn)行程序的編寫和編譯,該軟件具有編程簡(jiǎn)單、查錯(cuò)方便、閱讀容易等特點(diǎn)。匯編語言是程序的根本語言,具有容易理解,便于記憶和使用等特點(diǎn)。關(guān)鍵詞:自動(dòng)找零機(jī),AT89C51,LCD顯示Bus Automatic
2、ally Change System Design of Control System Based on MCUAbstract:This paper introduces the hardware selection, software planning and preparationan of an automatically change machine design of control system , and describes the focus of the work automatically change machine system theory, system desi
3、gn and software programming principles and techniques. The system with MCU AT89C51 chip as the core, the centralized control mode is adopted to accomplish the automatic change machine the whole process of automatic control. Choice of the system as a stand-alone keyboard keys to choose the goods side
4、, the realization of the coin shows the total number of passagers. In addition, the system program using keil software to prepare and compile procedures, the software programming is simple, convenient error checking, easy to read and so on. Assembly language is the basic language program with easy t
5、o understand, easy to remember and use and so on.Key words:Automatically Change Machines, AT89C51, LCD Display目 錄TOC o 1-3 h u HYPERLINK l _Toc11109 1 前言 PAGEREF _Toc11109 1 HYPERLINK l _Toc8871 1.1 選題背景 PAGEREF _Toc8871 1 HYPERLINK l _Toc7584 課題研究的目的及意義 PAGEREF _Toc7584 2 HYPERLINK l _Toc24686 國(guó)內(nèi)外概
6、況 PAGEREF _Toc24686 2 HYPERLINK l _Toc15110 1.4 課題主要研究工作 PAGEREF _Toc15110 2 HYPERLINK l _Toc18343 2 自動(dòng)找零機(jī)的總體設(shè)計(jì)方案 PAGEREF _Toc18343 4 HYPERLINK l _Toc31804 設(shè)計(jì)目標(biāo) PAGEREF _Toc31804 4 HYPERLINK l _Toc6 自動(dòng)找零機(jī)的工作程序 PAGEREF _Toc6 4 HYPERLINK l _Toc15673 自動(dòng)找零機(jī)的硬件原理 PAGEREF _Toc15673 5 HYPERLINK l _Toc25687
7、 自動(dòng)找零機(jī)的功能簡(jiǎn)介 PAGEREF _Toc25687 5 HYPERLINK l _Toc27018 3 控制系統(tǒng)的硬件設(shè)計(jì) PAGEREF _Toc27018 7 HYPERLINK l _Toc26167 總體硬件電路圖 PAGEREF _Toc26167 7 HYPERLINK l _Toc6033 中央控制元件簡(jiǎn)介 PAGEREF _Toc6033 8 HYPERLINK l _Toc26835 3.3 投幣及投幣總數(shù)LCD顯示系統(tǒng) PAGEREF _Toc26835 11 HYPERLINK l _Toc29390 3.3.1 投幣系統(tǒng) PAGEREF _Toc29390 11
8、 HYPERLINK l _Toc4747 3.3.2 LCD顯示 PAGEREF _Toc4747 13 HYPERLINK l _Toc5500 3.4 鍵盤選擇系統(tǒng) PAGEREF _Toc5500 16 HYPERLINK l _Toc21663 3.4.1 獨(dú)立式鍵盤按鍵的識(shí)別 PAGEREF _Toc21663 17 HYPERLINK l _Toc13317 3.4.2 鍵盤的編碼 PAGEREF _Toc13317 17 HYPERLINK l _Toc8531 找錢系統(tǒng) PAGEREF _Toc8531 17 HYPERLINK l _Toc20760 4 控制系統(tǒng)的軟件編程
9、 PAGEREF _Toc20760 18 HYPERLINK l _Toc19503 4.1 軟件設(shè)計(jì)概述 PAGEREF _Toc19503 18 HYPERLINK l _Toc10083 4.2 主程序設(shè)計(jì) PAGEREF _Toc10083 18 HYPERLINK l _Toc11592 4.3 鍵盤程序設(shè)計(jì) PAGEREF _Toc11592 20 HYPERLINK l _Toc7752 4.4 字符型液晶顯示模塊程序設(shè)計(jì) PAGEREF _Toc7752 25 HYPERLINK l _Toc10157 4.5 找錢系統(tǒng) PAGEREF _Toc10157 29 HYPERL
10、INK l _Toc2304 5 設(shè)計(jì)仿真 PAGEREF _Toc2304 30 HYPERLINK l _Toc29810 5.1 Proteus簡(jiǎn)介 PAGEREF _Toc29810 30 HYPERLINK l _Toc11272 5.2 仿真電路 PAGEREF _Toc11272 30 HYPERLINK l _Toc24310 結(jié) 論 PAGEREF _Toc24310 36 HYPERLINK l _Toc8911 參考文獻(xiàn) PAGEREF _Toc8911 37 HYPERLINK l _Toc17481 致謝 PAGEREF _Toc17481 38 HYPERLINK
11、l _Toc20477 附 錄 PAGEREF _Toc20477 391 前言1.1 選題背景眾所周知,城市公交系統(tǒng)是一個(gè)城市的窗口,其工作的質(zhì)量與效率會(huì)直接影響到人民群眾的日常生活和工作。城市公交系統(tǒng)是我國(guó)大局部城市的主要交通方式,隨著居民乘車次數(shù)和公交車輛的不斷增加,現(xiàn)有的乘車收費(fèi)方式越來越不能滿足需要。目前,全國(guó)很多大城市各種收費(fèi)和繳費(fèi)機(jī)構(gòu)都實(shí)現(xiàn)了無幣化的電子貨幣交易;不任你是到商場(chǎng)購(gòu)物,還是在餐廳用餐,您都可以不用現(xiàn)金買單,取而代之的是信用卡等付款方式。很多超級(jí)市場(chǎng),公汽車上都集成了信用卡和IC卡收費(fèi)系統(tǒng)。這不僅象征著人類文明的進(jìn)步,也確實(shí)給廣闊消費(fèi)者和商家?guī)砹撕艽蟮姆奖?。但是,?/p>
12、中國(guó)大多數(shù)人的消費(fèi)觀念,利用現(xiàn)金交易仍然是群眾消費(fèi)的最主要形式。涉及到現(xiàn)金交易,找零錢是在所難免的事情了。因此,像一些涉及到要經(jīng)常需要零錢的場(chǎng)所和地方,如公交車上,超市等一些公共場(chǎng)所就需要有一種方便快捷的找零方式。2004年10月22日武漢市就發(fā)生一起因一男乘客投幣缺乏被揭穿后毆打女司機(jī)的事件;2004年8月3日鄭州市公汽公司出臺(tái)“多投幣不找零的政策,結(jié)果被人們稱為“霸王合同,引得人們?cè)孤暡粩?。綜合考慮多方面因素,許多大城市流動(dòng)人口眾多,并多外來的打工人員,他們大局部都不可能擁有IC卡電子車票,除此之外誰都不能保證隨時(shí)都有足夠的零錢,畢竟公交車零錢兌換點(diǎn)有限,也許我們中很多人都有這樣經(jīng)歷那就是
13、:有時(shí)想換些零錢是多么的難啊。乘車時(shí),乘客投幣缺乏,司機(jī)不快樂,投多了乘客當(dāng)然不樂意。問題的解決是要靠雙方共同努力才能得到完美的解決。乘車時(shí)乘客應(yīng)盡可能使用零錢,公汽公司盡可能增設(shè)方便快捷的零錢兌換裝置和零錢兌換點(diǎn)。這樣才能堅(jiān)持“社會(huì)本位,“以人為本的科學(xué)開展觀。所以我有了設(shè)計(jì)公交車自動(dòng)找零系統(tǒng)這個(gè)產(chǎn)品的念頭15。本文闡述了智能公交車找零系統(tǒng)的研究背景、現(xiàn)狀以及開展方向和前景,明確指出了現(xiàn)階段中零錢兌換所面臨的問題。課題研究的目的及意義自動(dòng)找零系統(tǒng)在銀行、商場(chǎng)有著廣泛的應(yīng)用前景,同時(shí)它與一卡通系統(tǒng)是實(shí)現(xiàn)鐵路、公路、商場(chǎng)等五人售票系統(tǒng)的兩類重要環(huán)節(jié),它們可以配合使用,也可以單獨(dú)作為無人售票的根本
14、環(huán)節(jié)。該系統(tǒng)集成了紙幣識(shí)別收取與找零以及兌換等功能。該裝置設(shè)置在公交車上、公交站點(diǎn)和乘客較集中的地方,也可以用在一些經(jīng)常需要小額現(xiàn)金交易的場(chǎng)合。該裝置為這些場(chǎng)合提供了一種快捷方便的電子收費(fèi)、零錢兌換及找零的方式10。國(guó)內(nèi)外概況在國(guó)內(nèi)專門用于找零錢的裝置在市面上已經(jīng)有產(chǎn)品出現(xiàn)。由北京三銀龍科貿(mào)和北京公交凱鴻科技有限責(zé)任公司共同引進(jìn)開發(fā)的“可找零公交投幣機(jī),全面的解決了公交車無法找零錢的大難題,填補(bǔ)了國(guó)內(nèi)無人售票車自動(dòng)投幣無法實(shí)現(xiàn)找零的空白。另外還有很多單位都在研究該裝置。2003年8月12日?楚天都市報(bào)?記者從武漢市知識(shí)產(chǎn)權(quán)局得悉,一種新型智能投幣箱可以解決公交車無法找零的問題;該投幣箱已申請(qǐng)國(guó)
15、家專利其產(chǎn)品也即將面世。但是就目前的情況來看,在全國(guó)大局部主要城市都還沒有用上該裝置,零錢兌換和公交車找零問題仍然是困擾公交公司的大難題。而且零錢的兌換也一直是一些超市和零售商大傷腦筋的問題。因此,一種快捷方便的找零方式在目前來說是很有必要的,也是很有市場(chǎng)潛力的。1.4 課題主要研究工作在本文中主要的研究工作是設(shè)計(jì)出一種方便快捷的自動(dòng)找零機(jī)。文中介紹的該系統(tǒng)主要包括兩個(gè)局部:控制局部和機(jī)械局部。控制局部用于獲取用戶輸入信息并將其處理,最后向執(zhí)行部件發(fā)出執(zhí)行的命令和執(zhí)行的方式;機(jī)械局部是完成找零的執(zhí)行部件,具體作用是在軟件的控制下實(shí)現(xiàn)精確的出幣。本文重點(diǎn)講述控制局部的分析和原理。對(duì)于公交車自動(dòng)找
16、零系統(tǒng)的控制系統(tǒng),采用單片機(jī)控制。單片機(jī)具有價(jià)格廉價(jià),體積小,可靠性高,低能耗,控制功能強(qiáng)大,開發(fā)周期短等優(yōu)點(diǎn)。芯片雖小,五臟俱全,是單片機(jī)主要特點(diǎn)之一。其內(nèi)部設(shè)有程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、各種接口電路。而大型的處理器運(yùn)算速度較高,運(yùn)算器位數(shù)較多,處理能力較強(qiáng),但需要在外部配置接口電路,單片機(jī)主頻一般在100MHZ以下,適合用于獨(dú)立工作的小型產(chǎn)品之中,引腳數(shù)量從幾個(gè)到百余個(gè)。應(yīng)用簡(jiǎn)單、靈活,可用匯編語言及C語言開發(fā)單片機(jī)產(chǎn)品。雖然單片機(jī)相對(duì)于現(xiàn)在的高端處理器而言,其性能較為低,但由于其極高的性價(jià)比,在低端控制領(lǐng)域有很大的市場(chǎng)。在工業(yè)檢測(cè)與控制、計(jì)算機(jī)外設(shè)、智能儀器儀表、通訊設(shè)備、家用電器等控制領(lǐng)
17、域應(yīng)用廣泛,特別適合于嵌入式微型機(jī)應(yīng)用系統(tǒng)2。所以采用單片機(jī)控制公交車自動(dòng)找零系統(tǒng),是一個(gè)再適宜不過的選擇。本文共分為四局部。系統(tǒng)介紹了自動(dòng)找零機(jī)系統(tǒng)從控制方案,操作邏輯到系統(tǒng)軟件等各個(gè)環(huán)節(jié)的設(shè)計(jì)及系統(tǒng)調(diào)試的方法和原那么。第一局部簡(jiǎn)單介紹了自動(dòng)找零機(jī)的系統(tǒng)結(jié)構(gòu),第二局部介紹了自動(dòng)找零系統(tǒng)控制系統(tǒng)的硬件電路設(shè)計(jì),第三局部介紹了自動(dòng)找零機(jī)控制系統(tǒng)的軟件程序設(shè)計(jì)及分析,第四局部主要介紹了自動(dòng)找零機(jī)的系統(tǒng)軟件仿真模擬的實(shí)現(xiàn)。2 自動(dòng)找零機(jī)的總體設(shè)計(jì)方案設(shè)計(jì)目標(biāo)自動(dòng)找零機(jī)只接收最大面值20元的紙幣,乘客將5元或者10元、20元紙幣送入識(shí)幣口,機(jī)器自動(dòng)識(shí)別貨幣,區(qū)分真?zhèn)危蝗缓蟪丝桶聪掳存I選擇乘車人數(shù),人數(shù)
18、選擇最多為5人,然后按確定鍵,自動(dòng)找零時(shí)機(jī)自動(dòng)將扣除車票錢的零錢從出幣口送出,等待乘客取走;假設(shè)乘客按下取消鍵,那么投入的錢幣會(huì)從出幣口返還給乘客。自動(dòng)找零機(jī)的工作程序 自動(dòng)找零機(jī)是集光、機(jī)、電一體化的獨(dú)立機(jī)構(gòu),它只需要乘客投幣和按鍵選擇票數(shù)即可自動(dòng)找零,其工作程序如下列圖2.3 。乘客投幣機(jī)器自動(dòng)識(shí)別乘客按按鈕機(jī)器自動(dòng)找零乘客取出零錢圖2.2 自動(dòng)找零機(jī)工作程序找零機(jī)的工作原理是:1從投幣口送入貨幣,然后通過傳感器采集數(shù)據(jù)、識(shí)別器判斷貨幣的真?zhèn)尾⑴袆e面值。2識(shí)別器把信息數(shù)據(jù)傳給通信模塊。3通信模塊與找零機(jī)的主控系統(tǒng)通信,主控系統(tǒng)顯示面值,啟動(dòng)找零機(jī)的面板鍵,并等待乘客按鍵選擇乘車人數(shù)。4人數(shù)
19、選擇后按確定鍵,找零機(jī)自動(dòng)把零錢送出,如果按取消鍵,找零機(jī)經(jīng)過延時(shí)予以退幣。退幣分為兩種情況:一種是由貨幣識(shí)別器完成退紙幣,另一種是由硬幣的通信模塊完成退硬幣。5系統(tǒng)復(fù)零,完成找零。自動(dòng)找零機(jī)的硬件原理自動(dòng)找零機(jī)的硬件原理構(gòu)成如下列圖2.3所示。紙幣檢測(cè)及識(shí)別元件紙幣檢測(cè)接口 AT89C51 單片機(jī)紙幣傳送找零接口硬幣傳送找零接口鍵盤接口電路鍵盤LCD顯示器接口圖2.3 自動(dòng)找零機(jī)硬件原理圖 從系統(tǒng)的主電路圖中可以知道,該系統(tǒng)大體上可以分為四個(gè)模塊:?jiǎn)纹瑱C(jī)模塊、鍵盤模塊、顯示器模塊、紙幣、硬幣找零控制模塊。其中后三個(gè)模塊通過與單片機(jī)模塊相連接從而構(gòu)成了一個(gè)功能完整的系統(tǒng),實(shí)現(xiàn)了找零機(jī)的根本硬件
20、結(jié)構(gòu)。自動(dòng)找零機(jī)的功能簡(jiǎn)介根本原理:貨幣識(shí)別器對(duì)所投貨幣進(jìn)行識(shí)別,根據(jù)金額將人數(shù)選擇權(quán)提供乘客,乘客選擇人數(shù)后,控制芯片發(fā)出指令實(shí)現(xiàn)找零。其功能描述:找零機(jī)分為紙幣找零和硬幣找零,紙幣找零有5元,10元錢的找零,硬幣找零那么可以找1元,2元,3元,4元。自動(dòng)找零機(jī)能夠投幣總數(shù)LCD顯示功能。本設(shè)計(jì)中有一共有7個(gè)按鍵選擇,其中有五個(gè)乘車人數(shù)選擇按鍵,分別為1元、2元、3元、4元、5元,還有1個(gè)確定鍵和1個(gè)取消鍵。如果沒有按照預(yù)先設(shè)計(jì)的流程順序進(jìn)行按鍵選擇,自動(dòng)找零機(jī)將會(huì)自動(dòng)返回操作前的狀態(tài),等待再次正確的按鍵選擇。自動(dòng)找零機(jī)的原理框圖如圖1.2所示。找零輸出單片機(jī)貨幣識(shí)別系統(tǒng) 鍵盤LCD顯示 圖
21、1.2 自動(dòng)找零機(jī)原理框圖實(shí)現(xiàn)自動(dòng)找零機(jī)的功能的設(shè)計(jì)思路:1采用單片機(jī)89C51作為中央控制元件;2用P3.4(XO)口作為識(shí)別貨幣輸入端;3P1口作為乘車人數(shù)選擇選擇端采用獨(dú)立式鍵盤做為選擇票數(shù)端;4采用P0口實(shí)現(xiàn)找零功能。3 控制系統(tǒng)的硬件設(shè)計(jì)總體硬件電路圖硬件是控制系統(tǒng)的物理載體,硬件設(shè)計(jì)是整個(gè)設(shè)計(jì)的根底環(huán)節(jié)。如圖3.0所示,本次設(shè)計(jì)的自動(dòng)找零機(jī)系統(tǒng)包括以下幾個(gè)局部: 中央控制元件89C51、投幣及投幣總數(shù)LCD顯示系統(tǒng)、票數(shù)選擇系統(tǒng)、找錢系統(tǒng)。各元器件的選用質(zhì)量在此次設(shè)計(jì)中很重要,是否合理直接影響控制系統(tǒng)的設(shè)計(jì)質(zhì)量,要以經(jīng)濟(jì)適用、穩(wěn)定可靠為原那么進(jìn)行設(shè)計(jì)。圖3.1 硬件接口電路中央控制
22、元件簡(jiǎn)介在計(jì)算機(jī)技術(shù)高速開展的時(shí)代,許多可編程控制器件和芯片被廣泛的應(yīng)用與生產(chǎn)生活中的各個(gè)領(lǐng)域,并且發(fā)揮著巨大的作用,實(shí)現(xiàn)了工業(yè)、農(nóng)業(yè)、商業(yè)等方面的自動(dòng)化。其中最常用的有,PLC,PLD,F(xiàn)PEROM單片機(jī)等;在性能結(jié)構(gòu)上,他們各有各的優(yōu)點(diǎn)。其中,可編程控制器(Programmable Controller),簡(jiǎn)稱PLC。它是 20世紀(jì)70年代以來再集成電計(jì)算機(jī)技術(shù)根底上開展起來的一種新型工業(yè)控制裝置,主要用于工業(yè)控制;DSP最早是指一種信號(hào)處理技術(shù),直到八十年代初第一顆商用數(shù)字處理器問世,DSP才逐步成為一種全新高速處理器的名稱。最初DSP的應(yīng)用在于專業(yè)數(shù)據(jù)通信和語音處理,各種專用調(diào)制解調(diào)器
23、、聲碼器、數(shù)據(jù)加密機(jī)初步獲得市場(chǎng)。其后DSP應(yīng)用擴(kuò)展到廣泛的民用產(chǎn)品,諸如硬盤驅(qū)動(dòng)器、通用調(diào)制解調(diào)器、數(shù)字答錄機(jī)、無線通信終端。九十年代中DSP在數(shù)字GSM 應(yīng)用和無線基站應(yīng)用中都獲得了巨大的成功。與此同時(shí),DSP開始全面拓展到新興應(yīng)用,并在寬帶通信、數(shù)字控制、數(shù)字音頻、數(shù)字視頻等市場(chǎng)上捷報(bào)頻傳。DSP器件的特點(diǎn)使得它特別適合嵌入式的實(shí)時(shí)數(shù)字信號(hào)處理任務(wù)6。單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī)或單片微機(jī),又稱微型控制器。它是在一塊半導(dǎo)體芯片上,集成了CPU 、ROM 、RAM、 I/O接口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等功能部件,夠成了一臺(tái)完整的數(shù)字電子計(jì)算機(jī)。單片機(jī)芯片的集成度很高,它將微型計(jì)算機(jī)的主要部件
24、都集成在一塊芯片上,具有以下優(yōu)點(diǎn):1它具有體積小、重量輕、價(jià)格廉價(jià)、耗電少。2其信號(hào)通道受外界影響小,可靠性高,抗干擾性能強(qiáng)。3控制功能強(qiáng),運(yùn)行速度快。其結(jié)構(gòu)組成與指令系統(tǒng)都著重滿足工控要求。由上述單片機(jī)的優(yōu)點(diǎn)可知它能廣泛的應(yīng)用各控制領(lǐng)域。由于它具有“小、輕、廉、省的特點(diǎn),尤其耗電少,又可使供電電源的 體積小、重量輕,所以特別適用于“電腦型產(chǎn)品,在家用電器、玩具、游戲機(jī)、聲像設(shè)備、電子秤、收款機(jī)、辦公設(shè)備、廚房設(shè)備等許多產(chǎn)品上的到廣泛的應(yīng)用。它同樣也特別適用于數(shù)控機(jī)械、醫(yī)療設(shè)備,汽車等地方。在我國(guó),Intel公司MCS-48系列、MCS-51系列、MCS-96系列的各種機(jī)型用的最多7。AT89
25、C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器FPEROMFlash Programmable and Erasable Read Only Memory的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。在本次設(shè)計(jì)中,中央控制元件采用MCS-51系列單片機(jī)中的89C51。如圖3.2所示。 圖3.2 89C51引腳圖1主要特性:與MCS-51 兼容
26、;4K字節(jié)可編程閃爍存儲(chǔ)器;壽命:1000寫/擦循環(huán);數(shù)據(jù)保存時(shí)間:10年;全靜態(tài)工作:0Hz-24Hz;三級(jí)程序存儲(chǔ)器鎖定;128*8位內(nèi)部RAM ;32可編程I/O線;兩個(gè)16位定時(shí)器/計(jì)數(shù)器 ;5個(gè)中斷源 ;可編程串行通道;低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路 2管腳說明: VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0
27、外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給
28、出地址“1時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能存放器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流ILL這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: 口管腳 備選功能 P3.0 RXD串行輸入口 P3.1 TXD串行輸出口 P3.2 /INT0外部中斷0 P3.3 /INT1外部中斷1 P3.4 T0記時(shí)器
29、0外部輸入 P3.5 T1記時(shí)器1外部輸入 P3.6 /WR外部數(shù)據(jù)存儲(chǔ)器寫選通 P3.7 /RD外部數(shù)據(jù)存儲(chǔ)器讀選通 P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。
30、但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),那么在此期間外部程序存儲(chǔ)器0000H-FFFFH,不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源VPP。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出1。3.3 投幣及投幣總數(shù)LCD顯示系統(tǒng)3.3.1 投幣系統(tǒng)投幣系統(tǒng)涉及到貨幣識(shí)別系統(tǒng),包括紙幣識(shí)別和硬幣的識(shí)別。紙幣識(shí)別及傳送機(jī)構(gòu)包括雙向微型電機(jī)和捻紙皮帶、紙幣面值檢測(cè)元件
31、( 磁頭0到7)、入口處一組光電檢測(cè)元件( 光源、透鏡、光敏二極管) 等;硬幣貯幣退幣機(jī)構(gòu)為圓筒式貯幣,步進(jìn)電機(jī)驅(qū)動(dòng)實(shí)現(xiàn)硬幣退幣找零。1紙幣真?zhèn)渭懊嬷底R(shí)別。 由于本系統(tǒng)設(shè)定只接收新版5 元、10 元及20 元紙幣,紙幣真?zhèn)渭懊嬷底R(shí)別可根據(jù)其上金屬線的磁帶分布來確定。 如圖3.3.1,陰影局部表示有磁, 上面的黑框表示的是拾磁磁頭的位置布置。 圖3.3.1 紙幣識(shí)別及識(shí)磁原理左邊對(duì)齊后按照以上的磁頭布置法,可以測(cè)出這三種紙幣的磁性分布情況。平均布置8 個(gè)磁頭,當(dāng)有紙幣通過磁頭下方時(shí)開始拾磁,當(dāng)檢測(cè)到某一段有磁性分布時(shí), 對(duì)應(yīng)磁頭讀出的信號(hào)經(jīng)整形電路輸出為高電平。據(jù)此實(shí)現(xiàn)紙幣真假和面值的判斷。2紙
32、幣傳送。當(dāng)有紙鈔投入進(jìn)口時(shí),入口處光敏二極管發(fā)出信號(hào),電機(jī)正轉(zhuǎn),帶動(dòng)捻紙皮帶將紙鈔送進(jìn)識(shí)鈔器內(nèi)。 在送進(jìn)過程中, 檢測(cè)元件對(duì)紙鈔進(jìn)行識(shí)別,如是真鈔那么進(jìn)入內(nèi)部貯鈔箱;否那么, 微電機(jī)反轉(zhuǎn)將其退出。該模塊的輸入信號(hào)有磁頭0到7的輸入信號(hào)、入口處光電檢測(cè)元件輸入信號(hào)。該模塊需控制輸出的信號(hào)有紙幣傳送直流電機(jī)控制信號(hào)。3硬幣找零控制。找零時(shí),單片機(jī)根據(jù)記錄從最末筒開始找零。找零步進(jìn)電機(jī)經(jīng)減速后帶動(dòng)硬幣撥片轉(zhuǎn)動(dòng), 從儲(chǔ)幣筒下端拔出一枚硬幣, 硬幣落入退幣口內(nèi), 步進(jìn)電機(jī)再反轉(zhuǎn)使硬幣撥片回到起始位置完成一次找零。 當(dāng)檢測(cè)到筒內(nèi)硬幣量缺乏時(shí), 將從前一筒中撥出硬幣進(jìn)行找零。該模塊的輸入信號(hào)有電渦流傳感器的
33、輸入信號(hào)、光電檢測(cè)元件13 輸入信號(hào)。該模塊需控制輸出的信號(hào)有繼電器T1 T3 控制信號(hào)、找零直流電機(jī)控制信號(hào)11。對(duì)于識(shí)別貨幣器是如何設(shè)計(jì)、如何工作的,在這里將不做進(jìn)一步的研究。本課題設(shè)計(jì)主要是要實(shí)現(xiàn)自動(dòng)找零系統(tǒng)的控制系統(tǒng)的設(shè)計(jì),即投幣總數(shù)顯示、票數(shù)選擇以及找零功能。在本次設(shè)計(jì)中,用P3.4上的一個(gè)按鍵來代替投幣系統(tǒng)的輸出,把貨幣的識(shí)別及投幣數(shù)目的輸入簡(jiǎn)單用這一個(gè)按鍵來代替。本次設(shè)計(jì)的貨幣累加是對(duì)判斷P3.4上的按鍵上所按下的次數(shù)進(jìn)行累加來實(shí)現(xiàn)的,并將累加的次數(shù)送到存放器B,然后系統(tǒng)根據(jù)投幣的總數(shù)和相應(yīng)的操作來實(shí)現(xiàn)輸出。3.3.2 LCD顯示本次設(shè)計(jì)選用TC1602AL液晶顯示屏,可以直接跟
34、51系列單片接口相連,如圖3.3.2所示。圖3.3.2 LCD液晶顯示屏 液晶模塊TC1602AL采用標(biāo)準(zhǔn)的16腳接口,其引腳功能如下:表3.3.2 液晶顯示模塊接口說明標(biāo) 號(hào)功 能 說 明備 注Vss邏輯負(fù)電源輸入引腳,0VVdd邏輯正電源輸入引腳,+5VV0LCD驅(qū)動(dòng)電源輸入引腳,大小可調(diào)先是比照度一般接0VE讀寫使能引腳:高電平有效,下降沿鎖定數(shù)據(jù)RS數(shù)據(jù)/指令存放器選擇引腳:RS=“1:數(shù)據(jù)D0-D7與數(shù)據(jù)存放器通信 RS=“0:數(shù)據(jù)D0-D7與指令存放器通信R/W讀/寫選擇引腳:高電平:讀數(shù)據(jù)低電平:寫數(shù)據(jù)假設(shè)不須讀操作功能,該引腳可直接接地D0D78位數(shù)據(jù)線引腳第1腳:VSS為電源
35、地,接GND。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器比照度調(diào)整端,接正電源時(shí)比照度最弱,接地電源時(shí)比照度最高,比照度過高時(shí)會(huì)產(chǎn)生“鬼影,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整比照度。第4腳:RS為存放器選擇,高電平時(shí)選擇數(shù)據(jù)存放器、低電平時(shí)選擇指令存放器。第5腳:RW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:BLA背光電
36、源正極(+5V)輸入引腳。第16腳:BLK背光電源負(fù)極,接GND。 TC1602液晶模塊內(nèi)帶標(biāo)準(zhǔn)字庫,內(nèi)部的字符發(fā)生存儲(chǔ)器CGROM已經(jīng)存儲(chǔ)了192個(gè)57點(diǎn)陣字符,32個(gè)510點(diǎn)陣字符。另外還有字符生成RAMCGRAM512字節(jié),供用戶自定義字符。如表1所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比方大寫的英文字母“A的代碼是01000001B41H,顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A。1602液晶模塊內(nèi)部的控制器共有11條控制指令。 指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。 指令2:
37、光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平那么無效。指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示
38、5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。 指令8:DDRAM地址設(shè)置。 指令9:讀忙信號(hào)和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊。 不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。 指令11:讀數(shù)據(jù)3。1602液晶的讀寫時(shí)序如下圖:讀操作時(shí)序:寫操作時(shí)序:3.4 鍵盤選擇系統(tǒng)鍵盤是微機(jī)系統(tǒng)中最常用的輸入設(shè)備。鍵盤有兩種類型:編碼鍵盤和非編碼鍵盤。這兩類鍵盤的主要區(qū)別是識(shí)別鍵符及給出相應(yīng)鍵碼的方法。編碼鍵盤主要是用硬件來實(shí)現(xiàn)對(duì)鍵的識(shí)別,非編碼鍵盤主要是由軟件來實(shí)現(xiàn)鍵盤的定義與識(shí)別。編碼鍵盤本身除了按鍵以外,還包括產(chǎn)生鍵碼的硬件電路。這種鍵盤使用十分方便,但
39、是價(jià)格高,一般在單片機(jī)系統(tǒng)中較少采用。非編碼鍵盤常用一些按鍵排列成行列矩陣。按鍵的作用只是使相應(yīng)接點(diǎn)通或斷,然后由軟件來完成閉和鍵的識(shí)別并產(chǎn)生編碼。非編碼鍵盤硬件電路極為簡(jiǎn)單。因此,在單片機(jī)系統(tǒng)中被普遍使用。其中非編碼鍵盤又可以分為很多種,有獨(dú)立式結(jié)構(gòu),矩陣式結(jié)構(gòu)等。獨(dú)立式按鍵是指直接用I/O口線構(gòu)成的單個(gè)按鍵電路。每個(gè)獨(dú)立式按鍵單獨(dú)占有一根I/O口線,每根I/O口線上按鍵的工作狀態(tài)不會(huì)影響其他I/O口線的工作狀態(tài)。獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一根I/O口線,在按鍵數(shù)量較多時(shí)。I/O口線浪費(fèi)較大。故在按鍵數(shù)量不多時(shí),常采用這種按鍵電路。 由于本次設(shè)計(jì)只需要七個(gè)按鍵即
40、可滿足設(shè)計(jì)要求,所以采用獨(dú)立式鍵盤,這樣對(duì)鍵盤識(shí)別的編程也比擬簡(jiǎn)單。3.4.1 獨(dú)立式鍵盤按鍵的識(shí)別獨(dú)立式按鍵的識(shí)別很簡(jiǎn)單,當(dāng)某個(gè)鍵按下時(shí),相應(yīng)的接口會(huì)出現(xiàn)低電平,無鍵按下時(shí)那么為高電平,由此就可以判斷出哪個(gè)鍵有按下。3.4.2 鍵盤的編碼將P1.0P1.6上的按鍵編碼為00H、01H、02H、03H、04H、05H、06H,按鍵所對(duì)應(yīng)的功能見表3.4。表3.4 按鍵功能表按鍵號(hào)對(duì)應(yīng)的功能00H選擇1人乘車01H選擇2人乘車02H選擇3人乘車03H選擇4人乘車04H選擇5人乘車05H確定06H取消找錢系統(tǒng)本次設(shè)計(jì)中采用P1.0P1.6口作為找零輸出口,P1.0P1.6分別對(duì)應(yīng)10元紙幣找零口、
41、5元紙幣找零口、4元硬幣找零口、3元硬幣找零口、2元硬幣找零口、1元硬幣找零口。這樣設(shè)計(jì)的目的是方便實(shí)現(xiàn)不同數(shù)額的找零輸出。找錢系統(tǒng)用LED指示燈來表示找零,對(duì)應(yīng)的端口上假設(shè)指示燈亮那么表示有零錢掉出。4 控制系統(tǒng)的軟件編程4.1 軟件設(shè)計(jì)概述 匯編 HYPERLINK :/baike.baidu /subview/9793/10663680.htm t _blank 語言Assembly Language是面向機(jī)器的 HYPERLINK :/baike.baidu /view/8332.htm t _blank 程序設(shè)計(jì)語言。在匯編語言中,用 HYPERLINK :/baike.baidu
42、/view/4232760.htm t _blank 助記符代替 HYPERLINK :/baike.baidu /view/2062994.htm t _blank 機(jī)器指令的 HYPERLINK :/baike.baidu /view/178197.htm t _blank 操作碼,用地址符號(hào)或標(biāo)號(hào)代替指令或 HYPERLINK :/baike.baidu /view/420846.htm t _blank 操作數(shù)的地址,如此就增強(qiáng)了程序的可讀性并且降低了編寫難度。像這樣 HYPERLINK :/baike.baidu /view/2598014.htm t _blank 符號(hào)化的程序設(shè)計(jì)
43、語言就是匯編語言,因此亦稱為符號(hào)語言。使用匯編語言編寫的程序,機(jī)器不能直接識(shí)別,還要由 HYPERLINK :/baike.baidu /view/14850.htm t _blank 匯編程序或者叫匯編語言編譯器轉(zhuǎn)換成機(jī)器指令。匯編程序?qū)⒎?hào)化的操作代碼組裝成處理器可以識(shí)別的機(jī)器指令,這個(gè)組裝的過程稱為組合或者匯編。因此,有時(shí)候人們也把匯編語言稱為 HYPERLINK :/baike.baidu /subview/67312/11247527.htm t _blank 組合語言。 匯編語言有如下優(yōu)點(diǎn): 1因?yàn)橛脜R編語言設(shè)計(jì)的程序最終被轉(zhuǎn)換成機(jī)器指令,故能夠保持機(jī)器語言的一致性, HYPERL
44、INK :/baike.baidu /view/595096.htm t _blank 直接、 HYPERLINK :/baike.baidu /view/1007052.htm t _blank 簡(jiǎn)捷,并能像機(jī)器指令一樣 HYPERLINK :/baike.baidu /view/159041.htm t _blank 訪問、 HYPERLINK :/baike.baidu /view/57913.htm t _blank 控制計(jì)算機(jī)的各種 HYPERLINK :/baike.baidu /view/25278.htm t _blank 硬件設(shè)備,如 HYPERLINK :/baike.ba
45、idu /view/157418.htm t _blank 磁盤、 HYPERLINK :/baike.baidu /view/87697.htm t _blank 存儲(chǔ)器、 HYPERLINK :/baike.baidu /view/2089.htm t _blank CPU、 HYPERLINK :/baike.baidu /view/962212.htm t _blank I/O端口等。使用匯編語言,可以訪問所有能夠被訪問的軟、 HYPERLINK :/baike.baidu /view/25278.htm t _blank 硬件資源。 2目標(biāo)代碼 HYPERLINK :/baike.b
46、aidu /view/2021291.htm t _blank 簡(jiǎn)短,占用 HYPERLINK :/baike.baidu /view/1082.htm t _blank 內(nèi)存少,執(zhí)行 HYPERLINK :/baike.baidu /view/36819.htm t _blank 速度快,是高效的程序 HYPERLINK :/baike.baidu /view/14417.htm t _blank 設(shè)計(jì)語言,經(jīng)常與 HYPERLINK :/baike.baidu /view/14900.htm t _blank 高級(jí)語言配合使用,以 HYPERLINK :/baike.baidu /view
47、/681304.htm t _blank 改善程序的執(zhí)行速度和效率,彌補(bǔ)高級(jí)語言在硬件控制方面的缺乏,應(yīng)用十分廣泛5。綜合考慮自動(dòng)找零機(jī)的功能需求和硬件設(shè)計(jì),軟件程序的編寫應(yīng)該包括以下幾個(gè)內(nèi)容:主程序;鍵盤模塊程序;LCD顯示模塊的程序;LED燈選擇程序。4.2 主程序設(shè)計(jì)在程序?qū)哟谓Y(jié)構(gòu)方面,當(dāng)系統(tǒng)上電之后,應(yīng)先對(duì)其進(jìn)行相關(guān)初始化。然后程序應(yīng)當(dāng)進(jìn)入無限循環(huán),再根據(jù)相應(yīng)的觸發(fā)條件進(jìn)入相應(yīng)的子程序,完成相應(yīng)的狀態(tài)下的工作。由于系統(tǒng)在多個(gè)狀態(tài)間跳轉(zhuǎn)切換,所以在程序編寫時(shí)比擬適合應(yīng)用循環(huán)結(jié)構(gòu)實(shí)現(xiàn)。自動(dòng)找零機(jī)工作的整個(gè)流程圖如圖4.2所示。開始乘客投幣顯示貨幣數(shù)按鍵選擇乘車人數(shù) N Y按確定鍵否?找錢
48、按取消鍵返還投入的錢結(jié)束 圖4.2 主程序主程序?qū)⒄{(diào)用其他子程序以到達(dá)自動(dòng)找零機(jī)的完整工作。例如,當(dāng)用戶投幣時(shí),主程序?qū)⒄{(diào)用TC1602AL顯示程序,以到達(dá)顯示投幣數(shù)額的功能,再讓用戶選擇是否繼續(xù)交易。主程序詳見附錄。4.3 鍵盤程序設(shè)計(jì)鍵識(shí)別流程 鍵測(cè)試是否有鍵按下?去抖動(dòng)鍵號(hào)送R50鍵處理子程序1人1鍵處理子程序2人2鍵處理子程序3人3鍵處理子程序4人4鍵處理子程序5人 N Y 當(dāng)用戶按下鍵盤,程序通過去抖動(dòng)的方法來解除干擾,再以行掃描的方式來確定所按鍵盤,并確定鍵值,最后再等待顧客釋放。0鍵處理子程序:投入5元否?按確定鍵否?找錢MOV A,BSUBB A,#01H投入10元否?投入20
49、元否?按取消鍵否?返還投入的錢返回,等待下次投幣 N N Y Y Y N N Y Y Y1鍵處理子程序投入5元否?按確定鍵否?找錢MOV A,BSUBB A,#02H投入10元否?投入20元否?按取消鍵否?返還投入的錢返回,等待下次投幣 N N Y Y Y N N Y Y Y2鍵處理子程序投入5元否?按確定鍵否?找錢MOV A,BSUBB A,#03H投入10元否?投入20元否?按取消鍵否?返還投入的錢返回,等待下次投幣 N N Y Y Y N N Y Y Y3鍵處理子程序投入5元否?按確定鍵否?找錢MOV A,BSUBB A,#04H投入10元否?投入20元否?按取消鍵否?返還投入的錢返回,
50、等待下次投幣 N N N Y Y Y N Y Y Y4鍵處理子程序投入5元否?按確定鍵否?找錢MOV A,BSUBB A,#05H投入10元否?投入20元否?按取消鍵否?返還投入的錢返回,等待下次投幣 N N N Y Y Y N Y Y Y具體軟件編程見附錄。4.4 字符型液晶顯示模塊程序設(shè)計(jì)TC1602AL液晶模塊的功能相對(duì)簡(jiǎn)單,而控制器的設(shè)置也不多,下面就介紹常用的控制驅(qū)動(dòng)特性。TC1602AL的根本操作分為以下4種,如表4.4所示。表4.4 TC1602AL的根本操作類 別 名 稱輸 入輸 出狀態(tài)字的讀操作RS=L;RW=H;EP=HDB0-7讀出為狀態(tài)字?jǐn)?shù)據(jù)讀出操作RS=H;RW=H;
51、EP=HDB0-7讀出為數(shù)據(jù)指令寫入操作RS=L;RW=L;EP=上升沿?zé)o數(shù)據(jù)寫入操作RS=H;RW=L;EP=上升沿?zé)oTC1602AL指令的描述其中:L=0,H=1,X=0/11清顯示 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH 功能:送20H“空代碼到所有的DDRAM中,清楚所有的顯示數(shù)據(jù),并將DDRAM地址計(jì)算器AC清零,光標(biāo)返回到原始狀態(tài),設(shè)置I/D=H,AC為自動(dòng)加一的輸入方式。2返回 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX功能:設(shè)DDRAM地址為零,顯示回原位,DDRAM內(nèi)容不變。3輸入
52、方式設(shè)置 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLI/DSH功能:設(shè)置光標(biāo)移動(dòng)方向并指定整體顯示是否移動(dòng)。 I/D表示地址的修改方式,也是光標(biāo)的移動(dòng)方式: I/D=1:光標(biāo)由左向右移動(dòng)且AC自動(dòng)加一; I/D=0:光標(biāo)由右向左移動(dòng)且AC自動(dòng)減一。 SH表示是否允許顯示畫面的滾動(dòng)方式: SH=0:禁止?jié)L動(dòng);SH=1:允許滾動(dòng)。 SH=1且I/D=0:顯示畫面向右移動(dòng)一個(gè)字符。 SH=1且I/D=1:顯示畫面向左移動(dòng)一個(gè)字符。4顯示開關(guān)控制 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHDCB功能:控制整體顯示開關(guān)D,
53、光標(biāo)開關(guān)C及閃爍開關(guān)B的開關(guān)。 D=1:整體顯示開;D=0:整體顯示關(guān)。 C=1:光標(biāo)顯示開;C=0:光標(biāo)顯示關(guān)。 B=1:光標(biāo)閃爍;B=0:光標(biāo)不閃爍。5光標(biāo)或整體顯示移位位置 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CR/LXX功能:移動(dòng)光標(biāo)或整體顯示,同時(shí)不改變DDRAM內(nèi)容,S/C和R/L置位不同時(shí)對(duì)應(yīng)的操作: 00:光標(biāo)左移;01:光標(biāo)右移。 10:所有顯示左移:11:所有顯示右移。功能設(shè)置 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLNFXX功能:設(shè)置接口數(shù)據(jù)位數(shù)DL、顯示行數(shù)N以及字形F。 DL=1
54、:8位數(shù)據(jù)接口模式,DL=0:4位數(shù)據(jù)接口模式DB4-7有效,在這種模式下,傳送的方式為先高4位,后低4位。 N=1:兩行顯示;N=0:?jiǎn)涡酗@示。 F=1:510點(diǎn)陣模式加光標(biāo);F=0:57點(diǎn)陣模式加光標(biāo)。7設(shè)置CGRAM地址 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLLHACG5ACG4ACG3ACG2ACG1ACG0功能:將CGRAM地址送入AC中。設(shè)置后MCU對(duì)數(shù)據(jù)的操作是對(duì)DDRAM的讀/ 寫操作。8設(shè)置DDRAM地址 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LLHADD6ADD5ADD4ADD3ADD2ADD1ADD0功能:D
55、DRAM地址送入AC中。當(dāng)N=0時(shí),DDRAM地址范圍為:80H-FFH;當(dāng)N=1時(shí):第一行的DDRAM地址范圍為:80H-BFH;第二行的DDRAM地址范圍為:C0H-FFH。9讀忙狀態(tài)位BF及地址 CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0LHBFAC6AC5AC4AC3AC2AC1AC0功能:讀最高位BF判斷內(nèi)部操作是否正在執(zhí)行,并讀低7位地址計(jì)數(shù)器的內(nèi)容。10寫數(shù)據(jù) CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0功能:寫數(shù)據(jù)到CGRAM或是DDRAM.。如果寫數(shù)據(jù)到CGRAM,要先執(zhí)行“設(shè)置CGRAM地
56、址命令;如果寫數(shù)據(jù)到DDRAM,那么要先執(zhí)行“設(shè)置DDRAM地址命令。11讀數(shù)據(jù) CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0功能:從CGRAM或是DDRAM讀出數(shù)據(jù)。如果從CGRAM讀數(shù)據(jù),要先執(zhí)行 “設(shè)置CGRAM地址命令;如果寫數(shù)據(jù)到DDRAM,那么要先執(zhí)行“設(shè)置DDRAM地址命令。執(zhí)行讀操作后,地址自動(dòng)加/減1根據(jù)輸入方式設(shè)置指令3。TC1602AL顯示器在交易過程能起到金額顯示作用,對(duì)顯示器的識(shí)別流程如圖4.4。顯示模塊程序詳見附錄。圖4.4 LCD顯示原理圖4.5 找錢系統(tǒng)程序流程圖。詳細(xì)編程見附錄。圖4.5 找錢程序流程
57、圖5 設(shè)計(jì)仿真5.1 Proteus簡(jiǎn)介Proteus嵌入式系統(tǒng)仿真與開發(fā)平臺(tái)是英國(guó)Labcenter公司開發(fā)的,是目前世界上最先進(jìn)、最完整的嵌入式系統(tǒng)設(shè)計(jì)與仿真平臺(tái)。它是一種可視化的支持多種型號(hào)單片機(jī)如51、PIC、AVR、Motorola hcll等,并且支持與當(dāng)前流行的單片機(jī)開發(fā)環(huán)境Keil、MPLAB、IAR連接調(diào)試的軟硬件仿真系統(tǒng)。Proteus除了具有和其他EDA工具一樣的原理圖、PCB自動(dòng)或人工布線及電路仿真功能外,針對(duì)微控制系統(tǒng)與外設(shè)的混合電路的電路仿真、軟件仿真、系統(tǒng)協(xié)同仿真也做到了一體化和互動(dòng)效果,是目前電子設(shè)計(jì)愛好者廣泛使用的電子線路設(shè)計(jì)與仿真軟件Proteus和Mult
58、isim功能的聯(lián)合和進(jìn)一步開展。 Proteus軟件已有近20年的歷史,在全球擁有龐大的企業(yè)用戶群,是目前唯一能夠?qū)Ω鞣N處理器進(jìn)行實(shí)時(shí)仿真、調(diào)試與測(cè)試的EDA工具,真正實(shí)現(xiàn)了在沒有目標(biāo)原型時(shí)就可對(duì)系統(tǒng)進(jìn)行設(shè)計(jì)、測(cè)試與驗(yàn)證。由于Proteus軟件包括逼真的協(xié)同仿真功能,得到了包括劍橋大學(xué)在內(nèi)的眾多大學(xué)用戶作為電子學(xué)或嵌入式系統(tǒng)的課程教學(xué)、實(shí)驗(yàn)和水平考試平臺(tái)。目前,Proteus在國(guó)內(nèi)單片機(jī)開發(fā)者及單片機(jī)愛好者之中已開始普及,有很多開發(fā)者已經(jīng)開始用此開發(fā)環(huán)境進(jìn)行仿真9。5.2 仿真電路用Keil軟件編程仿真的結(jié)果如下圖: 圖5.2 Keil編程假設(shè)投入5元錢貨幣,操作依次為按2人乘車選擇鍵、確定鍵
59、,那么在proteus里的仿真結(jié)果如下列圖所示:圖5.2.2 投五元 圖5.2.3 按下2人按鈕,確認(rèn),找零三元 圖5.2.4 恢復(fù)初始狀態(tài)結(jié) 論 本次的畢業(yè)設(shè)計(jì)是一次真正的理論與實(shí)際相結(jié)合,通過這次基于單片機(jī)的公交車自動(dòng)找零系統(tǒng)的控制系統(tǒng)設(shè)計(jì),我更加深入的了解了單片機(jī)等方面的理論知識(shí),也更加成功地將理論知識(shí)與實(shí)際設(shè)計(jì)相結(jié)合在一起,全方面地提升了所學(xué)專業(yè)根底知識(shí)的理解和解決實(shí)際問題的能力,同時(shí)也提高我查閱文獻(xiàn)資料、設(shè)計(jì)標(biāo)準(zhǔn)以及電腦制圖等其他專業(yè)能力水平,而且通過對(duì)整體的掌控,對(duì)局部的取舍,以及對(duì)細(xì)節(jié)的斟酌處理,都使我的能力得到了鍛煉,經(jīng)驗(yàn)得到了豐富,雖然畢業(yè)設(shè)計(jì)內(nèi)容多,我的收獲卻更加豐富。通過
60、幾個(gè)月的不斷努力,我擺脫了單純的理論知識(shí)學(xué)習(xí)狀態(tài),理論知識(shí)和實(shí)際設(shè)計(jì)的結(jié)合鍛煉了我的綜合運(yùn)用所學(xué)專業(yè)根底知識(shí)的能力,使我在單片機(jī)的根本原理、單片機(jī)應(yīng)用系統(tǒng)開發(fā)過程,以及在常用編程設(shè)計(jì)思路技巧特別是編程語言的掌握方面都能向前邁了一大步,為日后成為合格的應(yīng)用型人才打下良好的根底。參考文獻(xiàn)1 李廣弟,朱月秀,冷祖祁編著.單片機(jī)根底M. 北京航空航天大學(xué)出版社,2007.6 6 鄭國(guó)欽.集成傳感器應(yīng)用入門M.北浙江科技技術(shù)出版社,2021.7 7 康光華.電子技術(shù)根底M.北京:高等教育出版社,20058 周荷琴等.微型計(jì)算機(jī)原理與接口技術(shù)M.中國(guó)科學(xué)技術(shù)大學(xué)出版社,20219 朱清慧,張鳳蕊,翟天嵩1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 休養(yǎng)所老年公寓設(shè)計(jì)與運(yùn)營(yíng)創(chuàng)新策略考核試卷
- 意外傷害保險(xiǎn)與保險(xiǎn)行業(yè)的風(fēng)險(xiǎn)管理與案例分析研究分析考核試卷
- 家用紡織品的供應(yīng)鏈管理與物流優(yōu)化考核試卷
- 車險(xiǎn)理賠合規(guī)培訓(xùn)課件
- 花生銷售合同范本
- 裝修押金轉(zhuǎn)讓合同范本
- 抵押的車位合同范本
- 寄養(yǎng)羊合同范本
- 小學(xué)生態(tài)平衡課件
- 超市促銷培訓(xùn)課件
- 醫(yī)學(xué)遺傳學(xué)教案-山東大學(xué)醫(yī)學(xué)遺傳學(xué)
- 海南省澄邁縣2024-2025學(xué)年七年級(jí)上學(xué)期期末考試地理試題(含答案)
- 2025年蘇州衛(wèi)生職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 部編人教版五年級(jí)下冊(cè)小學(xué)數(shù)學(xué)全冊(cè)教案
- 2024年世界職業(yè)院校技能大賽高職組“聲樂、器樂表演組”賽項(xiàng)參考試題庫(含答案)
- 2024年共青團(tuán)入團(tuán)考試題庫及答案
- 2023年國(guó)家公務(wù)員錄用考試《申論》真題(副省卷)及答案解析
- 2024-2030年中國(guó)醫(yī)療器械維修設(shè)備行業(yè)供需狀況及發(fā)展策略分析報(bào)告
- 中國(guó)心力衰竭診斷和治療指南2024解讀(完整版)
- 女性健康知識(shí)講座課件
- DB11T 1787-2020 二氧化碳排放核算和報(bào)告要求 其他行業(yè)
評(píng)論
0/150
提交評(píng)論