




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEPAGE22第頁(yè)摘要隨著技術(shù)的變革創(chuàng)新,信息時(shí)代的銀行管理已經(jīng)從傳統(tǒng)的人管模式,向智能化,電子化,信息化,網(wǎng)絡(luò)化的高科技管理模式的方向迅猛發(fā)展。銀行排隊(duì)呼叫系統(tǒng)是一種日常應(yīng)用范圍很廣泛的應(yīng)用。本設(shè)計(jì)是基于51系列單片機(jī)進(jìn)行的銀行排隊(duì)呼叫系統(tǒng)設(shè)計(jì),可以實(shí)現(xiàn)單片機(jī)之間的相互通信.銀行鍵盤操作員通過單片機(jī)把鍵入數(shù)字傳遞到銀行的顯示屏幕上,通知相應(yīng)顧客辦理業(yè)務(wù).以免去顧客站著排隊(duì)的混亂和辛苦.編程時(shí)以C語(yǔ)言為主要工具。關(guān)鍵詞:AT89S52.通信.AbstractAsinnovationgivesbirthtochange,bankmanagementoftheinformationagehasevolvingrapidlyfromthetraditionalmodetothehigh-techmanagementmodelofintelligence,electronization,informatizationandnetworking.Thequeuecallingsystemforbankisabroadrangeofdailyapplication.Thisdesignforthebankcallsystemisbasedonthe51seriesSCM,whichcanachievethecommunicationbetweenthesinglechipcomputers.ThebanktellertransmitsthetypednumbertothedisplayscreensbytheSCM,soastonoticetherelevantcustomerconductthebusiness,removingthemfromthechaosandthehardworkofqueuing.Keyword:AT89S52,communicatio目錄1.概論 11.1課題背景 11.2現(xiàn)狀分析 22.相關(guān)基本原理 32.151系列單片機(jī)的簡(jiǎn)介 32.1.1單片機(jī)的發(fā)展介紹 32.1.2單片機(jī)的結(jié)構(gòu)特點(diǎn) 32.1.3單片機(jī)的實(shí)際應(yīng)用 42.1.4控制器AT89C51 52.2接口技術(shù) 62.2.1鍵盤接口 62.2.2顯示器接口 72.3程序設(shè)計(jì)語(yǔ)言 113.排隊(duì)呼叫系統(tǒng)的硬件設(shè)計(jì) 133.1硬件設(shè)計(jì) 133.2系統(tǒng)實(shí)施步驟 144.軟件設(shè)計(jì) 154.1軟件流程圖: 154.2核心程序 165.系統(tǒng)的實(shí)現(xiàn) 186.總結(jié) 207.致謝 218.參考資料 221.概論1.1課題背景目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械以及各種智能機(jī)械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,大致可分如下幾個(gè)范疇:1.在智能儀器儀表上的應(yīng)用單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(zhǎng)度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。2.在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化芯片管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。3.在家用電器中的應(yīng)用可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五花八門,無所不在。4.在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對(duì)講機(jī)等。5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。6.在各種大型電器中的模塊化應(yīng)用某些專用單片機(jī)設(shè)計(jì)用于實(shí)現(xiàn)特定功能,從而在各種電路中進(jìn)行模塊化應(yīng)用,而不要求使用人員了解其內(nèi)部結(jié)構(gòu)。如音樂集成單片機(jī),看似簡(jiǎn)單的功能,微縮在純電子芯片中(有別于磁帶機(jī)的原理),就需要復(fù)雜的類似于計(jì)算機(jī)的原理。如:音樂信號(hào)以數(shù)字的形式存于存儲(chǔ)器中(類似于ROM),由微控制器讀出,轉(zhuǎn)化為模擬音樂電信號(hào)(類似于聲卡)。在大型電路中,這種模塊化應(yīng)用極大地縮小了體積,簡(jiǎn)化了電路,降低了損壞、錯(cuò)誤率,也方便于更換。7.單片機(jī)在汽車設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在汽車電子中的應(yīng)用非常廣泛,例如汽車中的發(fā)動(dòng)機(jī)控制器,基于CAN總線的汽車發(fā)動(dòng)機(jī)智能電子控制器,GPS導(dǎo)航系統(tǒng),abs防抱死系統(tǒng),制動(dòng)系統(tǒng)等等。此外,單片機(jī)在工商,金融,科研、教育,國(guó)防航空航天等領(lǐng)域都有著十分廣泛的用途。1.2現(xiàn)狀分析銀行大廳排隊(duì)呼叫系統(tǒng)是為了改善辦事大廳傳統(tǒng)管理所存在的一些混亂、擁擠、無序等弊端而開發(fā)的。該系統(tǒng)能很好地解決客戶在服務(wù)中所遇到的各種排隊(duì)、等候、擁擠和混亂等現(xiàn)象,為客戶辦事及職員操作帶來莫大的方便和愉悅,做到人人平等,合理公正,秩序井然,同時(shí)也能對(duì)客戶情況及職員的工作狀況做出各種統(tǒng)計(jì),理層進(jìn)一步?jīng)Q策提供依據(jù)。該系統(tǒng)廣泛適用于銀行、移動(dòng)、電信、公安、外事、大廳。產(chǎn)品自投放市場(chǎng)以來,贏得了用戶的信賴和好評(píng),取得了良好的經(jīng)濟(jì)效益和社會(huì)效益?,F(xiàn)今社會(huì)上這種排隊(duì)呼叫系統(tǒng)在各個(gè)領(lǐng)域已經(jīng)有了廣泛的應(yīng)用。我們從最基礎(chǔ)層次上面來設(shè)計(jì)該系統(tǒng)。2.相關(guān)基本原理2.151系列單片機(jī)的簡(jiǎn)介2.1.1單片機(jī)的發(fā)展介紹單片機(jī)也被稱作“單片微型計(jì)算機(jī)”、“微控制器”和“嵌入式微控制器”,單片機(jī)一詞最初源于“SingleChipMicrocomputer”,簡(jiǎn)稱SCM。隨著單片機(jī)在技術(shù)和體系結(jié)構(gòu)上的進(jìn)步,其控制功能不斷擴(kuò)展,國(guó)際上逐漸采用“MCU”(MicroControllerUnit,微控制器)來代替SCM。單片機(jī)的發(fā)展歷史大致分為4個(gè)階段。第一階段:?jiǎn)纹瑱C(jī)的探索階段。這一階段主要是探索如何把計(jì)算機(jī)的主要部件集成在芯片上。第二階段:?jiǎn)纹瑱C(jī)的完善階段。Intel公司在MCS-48的基礎(chǔ)上推出了完善的、典型的MCS-51單片機(jī)系列。它在以下幾個(gè)方面奠定了典型的通用總線型單片機(jī)體系結(jié)構(gòu):①設(shè)置了經(jīng)典、完善的8位單片機(jī)的并行總線結(jié)構(gòu);②外圍功能單元由CPU集中管理的模式;③體現(xiàn)控制特性的地址空間和位操作方式;④指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。第三階段:向微控制器發(fā)展的階段。這一階段主要是為了滿足測(cè)控系統(tǒng)要求的各種外圍電路和接口電路,突出其職能化控制能力。第四階段:?jiǎn)纹瑱C(jī)的全面發(fā)展階段。由于很多大半導(dǎo)體和電氣廠商都開始參與單片機(jī)的研制和生產(chǎn)。隨著單片機(jī)在各個(gè)領(lǐng)域全面深入的發(fā)展和應(yīng)用,逐漸出現(xiàn)了高速、低功耗、大尋址范圍、強(qiáng)運(yùn)算能力的8位、16位、32位通用型單片機(jī)以及小型廉價(jià)的專用型單片機(jī),還有功能全面的片上單片機(jī)系統(tǒng)。[4]2.1.2單片機(jī)的結(jié)構(gòu)特點(diǎn)單片機(jī)是微型機(jī)的一個(gè)重要分支,它在結(jié)構(gòu)上的最大特點(diǎn)是把CPU、存儲(chǔ)器、定時(shí)器和多種輸入/輸出接口電路集成在一塊超大規(guī)模的集成電路芯片上。單片機(jī)內(nèi)是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要有較強(qiáng)的抗干擾能力,較低的成本。單片機(jī)由于這種結(jié)構(gòu),所以具有很多顯著的特點(diǎn)。主要有控制能力強(qiáng),抗干擾能力強(qiáng)、可靠性高,性能價(jià)格比高,低功耗、低電壓,擴(kuò)展了多種串行口和系統(tǒng)擴(kuò)展容易等特點(diǎn)。2.1.3單片機(jī)的實(shí)際應(yīng)用單片機(jī)廣泛應(yīng)用于儀表儀器、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,大致可分為以下幾個(gè)范疇:(1)在智能儀器儀表上的應(yīng)用單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等特點(diǎn),廣泛應(yīng)用于儀器儀表中看,結(jié)合不同類型的傳感器,可以實(shí)現(xiàn)諸如電壓、功率、頻率、溫度、流量、速度、角度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化。且功能比采用電子和熟悉電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì)、示波器和各種分析儀)。(2)在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。(3)在家用電器中的應(yīng)用可以這樣說,現(xiàn)在的家電基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子稱量設(shè)備,五花八門,無其不有,無所不在。(4)在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域的應(yīng)用現(xiàn)在的單片機(jī)普遍具有通信接口,可以很方便的與計(jì)算機(jī)實(shí)現(xiàn)數(shù)據(jù)通信,為計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,可以的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線對(duì)講機(jī)等。(5)單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在易用設(shè)備領(lǐng)域中的應(yīng)用相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲波診斷設(shè)備及病床呼叫系統(tǒng)等等。此外單片機(jī)在工商、金融、科研、教育、國(guó)防、航空航天領(lǐng)域都有相當(dāng)廣泛的應(yīng)用。2.1.4控制器AT89C51AT89C51是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4kbytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度,非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。主要特性:=1\*GB3①與MCS-51產(chǎn)品指令系統(tǒng)完全兼容=2\*GB3②4K字節(jié)可重擦寫Flash閃速存儲(chǔ)器=3\*GB3③1000次擦寫周期=4\*GB3④全靜態(tài)操作:0Hz-24MHz=5\*GB3⑤三級(jí)加密程序存儲(chǔ)器=6\*GB3⑥128×8字節(jié)內(nèi)部RAM=7\*GB3⑦32個(gè)可編程I/O口線=8\*GB3⑧2個(gè)16位定時(shí)/計(jì)數(shù)器=9\*GB3⑨5個(gè)中斷源=10\*GB3⑩可編程串行UART通道AT89C51單片機(jī)采用40Pin封裝的雙列直插DIP結(jié)構(gòu),圖1.1是它的引腳配置圖。40個(gè)引腳中,正電源和地線兩根;4組8位I/O口,共32個(gè)引腳;時(shí)鐘電路引腳XTAL1和XTAL2;控制信號(hào)引腳包含:復(fù)位輸入端RET,地址鎖存允許輸出/編程脈沖輸入端ALE/PROG,片外程序存儲(chǔ)器選通控制信號(hào)端PSEN,內(nèi)外程序存儲(chǔ)器選擇/編程電源輸入端EA/VPP。P1.0VccP1.0VccP1.1P0.0P1.2P0.1P1.3P0.2P1.4P0.3P1.5P0.4P1.6P0.5P1.7P0.6RSTP0.7P3.0EA/VppP3.1ALE/PROGP3.2PSENP3.3P2.7P3.4P2.6P3.5P2.5P3.6P2.4P3.7P2.3XTAL2P2.2XTAL1P2.1VssP2.0AT89C51 圖1.AT89C51單片機(jī)引腳2.2接口技術(shù)2.2.1鍵盤接口在單片機(jī)的應(yīng)用系統(tǒng)中,通常都有人—機(jī)對(duì)話功能。它包含人對(duì)系統(tǒng)的狀態(tài)干預(yù)、數(shù)據(jù)的輸入以及應(yīng)用系統(tǒng)向人報(bào)告運(yùn)行狀態(tài)與運(yùn)行結(jié)果等。鍵盤成為人—機(jī)聯(lián)系的必要手段,此時(shí)需要配置適當(dāng)?shù)逆I盤輸入設(shè)備。1.鍵盤工作原理鍵盤中的每個(gè)按鍵都是一個(gè)常開的開關(guān)電路,當(dāng)所設(shè)置的功能鍵或數(shù)字鍵按下時(shí),則處于閉合狀態(tài)。對(duì)于一組鍵或一個(gè)鍵盤,需要通過接口電路與單片機(jī)相連,以便將鍵的開關(guān)狀態(tài)通知單片機(jī)。單片機(jī)可以采用查詢或中斷方式檢查有無鍵的輸入以及是哪個(gè)鍵被按下,并通過轉(zhuǎn)移指令轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完再返回到原始狀態(tài)。2.獨(dú)立式按鍵獨(dú)立式按鍵是指直接用I/O口線構(gòu)成的單個(gè)按鍵電路。每個(gè)獨(dú)立式按鍵單獨(dú)占有一根I/O口線,每根I/O口線的工作狀態(tài)都不會(huì)影響其他I/O口線的工作狀態(tài)。3.行列式鍵盤獨(dú)立式按鍵電路每一個(gè)按鍵開關(guān)占用一根I/O口線。當(dāng)按鍵數(shù)較多時(shí),要占用較多的I/O口線。因此,在按鍵數(shù)大于8時(shí),通常采用行列式(也稱“矩陣式”)鍵盤電路。,如圖2所示。最簡(jiǎn)單的鍵盤,每個(gè)鍵對(duì)應(yīng)I/O端口的一位,沒有什么鍵閉和時(shí),各位均處于高電位。當(dāng)有一個(gè)鍵按下時(shí),就是對(duì)應(yīng)位接地而成為低電位,而其它位仍為高電位。這樣,CPU只要檢測(cè)到某一位為“0”,便可判別出對(duì)應(yīng)鍵已經(jīng)按下。但是,當(dāng)鍵盤上的鍵較多時(shí),引線太多,占用的I/O端口也太多。比如,一個(gè)有64個(gè)鍵的鍵盤,采用這種方法來設(shè)計(jì)時(shí),就需要64條連線和8個(gè)8位并行端口。所以,這種簡(jiǎn)單結(jié)構(gòu)只用在僅由幾個(gè)鍵的小鍵盤中。通常使用的鍵盤結(jié)構(gòu)是矩陣式的,如圖2.1所示。設(shè)有m*n個(gè)鍵盤,那么,采用矩陣式結(jié)構(gòu)以后,便只要條引線就行了。比如,有m+n個(gè)鍵,那么,只要用兩個(gè)并行端口和16條引線便可以完成鍵盤的連接。圖2.矩陣鍵盤2.2.2顯示器接口在本設(shè)計(jì)中我們應(yīng)用的是七段數(shù)碼管來顯示想要輸出的數(shù)字。數(shù)碼管是一類價(jià)格便宜使用簡(jiǎn)單,通過對(duì)其不同的管腳輸入相對(duì)的電流,使其發(fā)亮,從而顯示出數(shù)字能夠顯示時(shí)間、日期、溫度等所有可用數(shù)字表示的參數(shù)的器件。我們選用動(dòng)態(tài)顯示驅(qū)動(dòng)作為數(shù)碼管的驅(qū)動(dòng)方式,就是將所有數(shù)碼管通過分時(shí)輪流控制各個(gè)數(shù)碼管的的COM端,就使各個(gè)數(shù)碼管輪流受控顯示。將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。LED數(shù)碼管根據(jù)LED的接法不同分為共陰和共陽(yáng)兩類,了解LED的這些特性,對(duì)編程是很重要的,因?yàn)椴煌愋偷臄?shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。共陰和共陽(yáng)極數(shù)碼管的發(fā)光原理是一樣的,只是它們的電源極性不同而已。將多只LED的陰極連在一起即為共陰式,而將多只LED的陽(yáng)極連在一起即為共陽(yáng)式。圖3.七段數(shù)碼管圖4.共陰極(圖左)共陽(yáng)極(圖右)以共陰式為例講解七數(shù)碼管的發(fā)光原理:如把陰極接地,在相應(yīng)段的陽(yáng)極接上正電源,該段即會(huì)發(fā)光。當(dāng)然,LED的電流通常較小,一般均需在回路中接上限流電阻。假如我們將"b"和"c"段接上正電源,其它端接地或懸空,那么"b"和"c"段發(fā)光,此時(shí),數(shù)碼管顯示將顯示數(shù)字“1”。而將"a"、"b"、"d"、"e"和"g"段都接上正電源,其它引腳懸空,此時(shí)數(shù)碼管將顯示“2”。其它字符的顯示原理類同.當(dāng)然,我們通過單片機(jī)需要七段數(shù)碼管顯示的數(shù)字要通過BCD譯碼器來進(jìn)行譯碼才能正確的顯示出來.本設(shè)計(jì)中我們選用74LS47進(jìn)行譯碼。如下圖所示為譯碼器和七段數(shù)碼管的鏈接方式:圖5.譯碼器與數(shù)碼管連接圖BCD七段譯碼器的輸入是一位BCD碼(以D、C、B、A表示),輸出是數(shù)碼管各段的驅(qū)動(dòng)信號(hào)(以Fa~Fg表示),也稱4—7譯碼器。若用它驅(qū)動(dòng)共陰LED數(shù)碼管,則輸出應(yīng)為高有效,即輸出為高(1)時(shí),相應(yīng)顯示段發(fā)光。例如,當(dāng)輸入8421碼DCBA=0100時(shí),應(yīng)顯示,即要求同時(shí)點(diǎn)亮b、c、f、g段,熄滅a、d、e段,故譯碼器的輸出應(yīng)為Fa~Fg=0110011,這也是一組代碼,常稱為段碼。同理,根據(jù)組成0~9這10個(gè)字形的要求可以列出8421BCD七段譯碼器的真值表:圖6.BCD七段譯碼器的真值表2.3程序設(shè)計(jì)語(yǔ)言單片機(jī)能執(zhí)行的程序可以用很多種語(yǔ)言編寫。從語(yǔ)言結(jié)構(gòu)及其與單片機(jī)的關(guān)系兩方面可分為三大類:分別是機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言。機(jī)器語(yǔ)言:機(jī)器語(yǔ)言是一種用二進(jìn)制代碼“0”和“1”表示指令和數(shù)據(jù)的最原始的程序設(shè)計(jì)語(yǔ)言。由于計(jì)算機(jī)只能識(shí)別二進(jìn)制代碼,因此,這種語(yǔ)言與計(jì)算機(jī)的關(guān)系最為直接,計(jì)算機(jī)能夠快速識(shí)別并立即執(zhí)行,響應(yīng)速度最快。但這種語(yǔ)言編寫程序非常繁瑣、費(fèi)時(shí),且不易看懂,不便記憶,容易出錯(cuò)。匯編語(yǔ)言:匯編語(yǔ)言是一種用助記符來表示的面向機(jī)器的程序設(shè)計(jì)語(yǔ)言。不同的機(jī)器所使用的匯編語(yǔ)言一般是不同的。這種語(yǔ)言比機(jī)器語(yǔ)言更加直觀、易懂、易用,且便于記憶。但是由于不同機(jī)器的匯編語(yǔ)言不同,這種語(yǔ)言有一定的局限性,移植性差。高級(jí)語(yǔ)言:高級(jí)語(yǔ)言是一種面向過程且獨(dú)立于計(jì)算機(jī)硬件結(jié)構(gòu)的通用計(jì)算機(jī)語(yǔ)言。目前在單片機(jī)應(yīng)用最廣泛的是C語(yǔ)言。單片機(jī)C語(yǔ)言的特點(diǎn):①對(duì)單片機(jī)的指令系統(tǒng)不要求了解,僅要求對(duì)單片機(jī)的存儲(chǔ)結(jié)構(gòu)有初步的了解。②寄存器的分配、不同存儲(chǔ)器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理。③程序有規(guī)范的結(jié)構(gòu),可分為不同的函數(shù),可使程序結(jié)構(gòu)化。④關(guān)鍵字及運(yùn)算函數(shù)可用近似人的思維過程方式使用。⑤編程及程序調(diào)試時(shí)間顯著縮短,從而提高效率。⑥提供的庫(kù)包含許多標(biāo)準(zhǔn)子程序,具有較強(qiáng)的數(shù)據(jù)處理能力等。編程軟件:KeiluVision2是德國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),使用接近于傳統(tǒng)c語(yǔ)言的語(yǔ)法來開發(fā),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用,而且大大的提高了工作效率和項(xiàng)目開發(fā)周期,他還能嵌入?yún)R編,您可以在關(guān)鍵的位置嵌入,使程序達(dá)到接近于匯編的工作效率。KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供了C語(yǔ)言環(huán)境,同時(shí)保留了匯編代碼高效,快速的特點(diǎn)。C51編譯器的功能不斷增強(qiáng),使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開發(fā)環(huán)境中,這個(gè)集成開發(fā)環(huán)境包含:編譯器,匯編器,實(shí)時(shí)操作系統(tǒng),項(xiàng)目管理器,調(diào)試器。uVision2IDE可為它們提供單一而靈活的開發(fā)環(huán)境。KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面,使您能在很短的時(shí)間內(nèi)就能學(xué)會(huì)使用keilc51來開發(fā)您的單片機(jī)應(yīng)用程序。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。3.排隊(duì)呼叫系統(tǒng)的硬件設(shè)計(jì)3.1硬件設(shè)計(jì)首先,我們對(duì)排隊(duì)呼叫系統(tǒng)的要求進(jìn)行分析:現(xiàn)在國(guó)內(nèi)很多銀行在辦理業(yè)務(wù)時(shí),顧客可以在銀行里面拿到一個(gè)排隊(duì)號(hào),之后在一旁休息等待,當(dāng)業(yè)務(wù)員叫到該號(hào)數(shù)時(shí)再到柜臺(tái)窗口辦理業(yè)務(wù)。具體操作,在業(yè)務(wù)員手上有一個(gè)數(shù)字小鍵盤,當(dāng)業(yè)務(wù)員用小鍵盤輸入下一個(gè)顧客的排隊(duì)號(hào)時(shí),排隊(duì)號(hào)就會(huì)顯示在銀行大廳的顯示屏上面,用以提示手持該號(hào)碼的顧客到柜臺(tái)辦理業(yè)務(wù)。根據(jù)這個(gè)系統(tǒng)功能的描述,我們?cè)O(shè)計(jì)電路圖排隊(duì)呼叫系統(tǒng)主要基于兩個(gè)單片機(jī)之間的通信,故此中心設(shè)計(jì)方案要圍繞兩個(gè)圖7.排隊(duì)呼叫系統(tǒng)電路圖單片機(jī)通信建立和傳輸。所以在通信之前要“約法三章”即約定通信協(xié)議,否則兩者之間的通信就無法開始。通過一個(gè)日常的例子來解釋這個(gè)約法三章:小李小張之間的電話通話:雙方必須以一定的速率進(jìn)行通話。如果小李說話速度是小張的10倍,那小張就很難聽得懂。語(yǔ)速就好比單片機(jī)的波特率,在兩個(gè)單片機(jī)建立通信之前,雙方需要設(shè)定相同的波特率,否則無法正確接收到對(duì)方的數(shù)據(jù)。一個(gè)呼叫信號(hào)。如果小李發(fā)起對(duì)話,他需要撥通小張的電話號(hào)碼。如果他撥錯(cuò)了號(hào)碼,那小張是無法接收到通信請(qǐng)求的。這就好比單片機(jī)A想要與單片機(jī)B通信,它需要通過串行口向單片機(jī)B發(fā)送例如,發(fā)送一個(gè)立即數(shù)99H,詢問單片機(jī)B是否可以接受數(shù)據(jù)。當(dāng)小李撥打小張的電話撥通后,小張拿起聽筒需要說一聲HELLO,以表示他已經(jīng)做好了對(duì)話的準(zhǔn)備。如果小張不說HELLO,那盡管通信已經(jīng)建立,小李還是不敢確定是否開口說話。所以,當(dāng)單片機(jī)A向B發(fā)送呼叫信號(hào)99H以后,B需要向A回復(fù)一個(gè)應(yīng)答信號(hào)。例如,立即數(shù)01H,表明B可以接受數(shù)據(jù)。通過以上的約法三章,通信才能建立起來。這個(gè)比喻是一個(gè)典型的通信協(xié)議的建立方法。了解了通信協(xié)議的建立方法之后,可以簡(jiǎn)單的約定A和B之間的通信協(xié)議。1.單片機(jī)A和B之間以2400的比特率進(jìn)行串口通信。2.A先向B發(fā)起通信請(qǐng)求,發(fā)送呼叫信號(hào)99H。3.B收到呼叫信號(hào)后,向A回送應(yīng)答信號(hào)01H。4.通信建立,開始數(shù)據(jù)傳輸。3.2系統(tǒng)實(shí)施步驟下面我們來詳細(xì)分析一下這個(gè)電路圖的具體鏈接和系統(tǒng)實(shí)施步驟。我們可以看到電路圖上有兩個(gè)單片機(jī)。首先我們把按鈕開關(guān)分別焊接在傳輸單片機(jī)的p1接口和p0接口的p01.0,p0.2接口上。再在其上加上5V的直流電壓。當(dāng)某個(gè)開關(guān)摁下時(shí),此開關(guān)所連接的單片機(jī)接口點(diǎn)位從高電位變成低電位。第二步,發(fā)送端單片機(jī)按鍵開關(guān)輸入的數(shù)字通過單片機(jī)上的發(fā)送端口TXD將此數(shù)據(jù)發(fā)送出去,而發(fā)送端單片機(jī)的TXD接收端的單片機(jī)的RXD相連接。接收端單片機(jī)的RXD接收到按鍵信號(hào)。第三步,接收端單片機(jī)將從發(fā)送端單片機(jī)接收到的按鍵信號(hào)接入74LS47解碼器,通過74LS47與共陽(yáng)極氣短數(shù)碼管連接。從而在七段數(shù)碼管上顯示出來所鍵入的數(shù)字。4.軟件設(shè)計(jì)軟件方面,我們將分為兩個(gè)模塊來介紹:4.1軟件流程圖:我們首先看一下軟件的主程序流程單片機(jī)1:設(shè)定單片機(jī)設(shè)定單片機(jī)1的初始模式和波特率發(fā)送一個(gè)數(shù)字信號(hào)給單片機(jī)發(fā)送一個(gè)數(shù)字信號(hào)給單片機(jī)2 判斷是否接收到回復(fù)信息 判斷是否接收到回復(fù)信息 否 是發(fā)送鍵盤輸入的數(shù)字給單片機(jī)發(fā)送鍵盤輸入的數(shù)字給單片機(jī)2結(jié)束結(jié)束圖8.發(fā)送方單片機(jī)流程圖設(shè)定單片機(jī)2的初始模式和波特率設(shè)定單片機(jī)2的初始模式和波特率等待單片機(jī)1等待單片機(jī)1發(fā)送數(shù)字請(qǐng)求 判斷請(qǐng)求是否正確 判斷請(qǐng)求是否正確 否輸出鍵入數(shù)字結(jié)束輸出鍵入數(shù)字結(jié)束是等待接收單片機(jī)等待接收單片機(jī)1發(fā)送的鍵入數(shù)字圖9.接收方單片機(jī)流程圖4.2核心程序首先,兩個(gè)單片機(jī)需要進(jìn)行初設(shè)。我們將連個(gè)單片機(jī)的工作模式設(shè)置在模式1下,然后對(duì)他們的波特率進(jìn)行一個(gè)統(tǒng)一的設(shè)定。此處的軟件程序在兩個(gè)單片機(jī)之間是一樣的。voidinit_serialcom(void)//串口通信初始設(shè)定{SCON=0x50;//UART為模式1,8位數(shù)據(jù),允許接收 TMOD|=0x20;//定時(shí)器1為模式2,8位自動(dòng)重裝 PCON|=0x80;//SMOD=1; TH1=0xFD;//Baud:19200fosc="11".0592MHz IE|=0x90;//EnableSerialInterrupt TR1=1;//timer1run TI=1;}第二個(gè)模塊:鍵盤鍵入模塊:我們對(duì)與按鍵開關(guān)連接的單片機(jī)接口進(jìn)行掃描。初始情況下,這些單片機(jī)的接口是和5V正極電壓連接。因此顯示高電平。一旦一個(gè)按鍵開關(guān)按下,此接口的電平變成低電平,由于我們?cè)诔绦蛑惺且獙⑺械陌存I接口全部掃描一遍,遇到低電平結(jié)束掃描,在下程序?qū)嵗?,我們只列出了掃描一個(gè)接口的程序。其余方式一致。在此用省略號(hào)省略。voidgetkey() //獲取按鍵 15ms{ ucharkey_temp,key_temp2; key_temp=(~P2); //取1-8鍵值,先取反,再判斷哪一位變成0; key_temp2=(~P0)&0x03;//取9、0的鍵值,取反,只判斷P0.0與P0.1哪一位變成0; delay(20); if(key_temp) {switch(key_temp) {case0x01: s1=1; send_char_com(1); buzze(); break; …………… default:break }傳輸程序由于分為兩個(gè)獨(dú)立的長(zhǎng)程序,在此不細(xì)細(xì)解釋。5.系統(tǒng)的實(shí)現(xiàn)5.1首先,我們接通電源,電路板上的兩個(gè)指示燈亮,表明電源接通。兩個(gè)七段碼管顯示00這個(gè)初始值。圖10.硬件初始狀態(tài)圖5.2當(dāng)我們摁下13這個(gè)數(shù)字時(shí),七段數(shù)碼管顯示13出來。同時(shí)蜂鳴器鳴叫一下。用以提示顧客有新的號(hào)碼出現(xiàn),拿13這個(gè)號(hào)碼的顧客去辦理業(yè)務(wù)。圖11.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度項(xiàng)目負(fù)責(zé)人聘用合同(生態(tài)農(nóng)業(yè)技術(shù)引進(jìn))
- 針灸理療護(hù)理常規(guī)
- 二零二五年度智慧城市建設(shè)項(xiàng)目股份轉(zhuǎn)讓與系統(tǒng)開發(fā)協(xié)議
- 二零二五年度環(huán)保技術(shù)研發(fā)實(shí)習(xí)生勞動(dòng)合同范本
- 二零二五年度綠色建筑材料授權(quán)獨(dú)家代理協(xié)議
- 二零二五年度終止勞動(dòng)合同協(xié)議書:O公司員工P合同終止及競(jìng)業(yè)限制協(xié)議
- 二零二五年度租賃合同終止及租賃物報(bào)廢處理函
- 二零二五年度建筑工人臨時(shí)用工管理合同
- Module 2 Unit1教學(xué)設(shè)計(jì) 2024-2025學(xué)年外研版英語(yǔ)九年級(jí)上冊(cè)
- 2025年度寵物寄養(yǎng)及寵物心理咨詢服務(wù)合同
- 2025年春人教版九年級(jí)英語(yǔ)下冊(cè) 2025年中考模擬測(cè)試卷
- 果園軌道運(yùn)輸施工方案
- 加油站事故隱患排查清單(主要負(fù)責(zé)人級(jí))
- 《醫(yī)療事故處理?xiàng)l例》解讀
- 《學(xué)位論文選題與寫作》教學(xué)大綱
- 廣西版五年級(jí)下冊(cè)美術(shù)全冊(cè)教案【完整版】
- 礦產(chǎn)資源儲(chǔ)量報(bào)告編制和評(píng)審中常見問題及其處理意見
- 2024版年度中華人民共和國(guó)傳染病防治法
- 總經(jīng)理助理招聘面試題與參考回答(某大型央企)2025年
- 高盛-比亞迪:全球汽車市場(chǎng)上的新興領(lǐng)先企業(yè)-2024-10-企業(yè)研究
- 《中國(guó)人民站起來了》教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修上冊(cè)
評(píng)論
0/150
提交評(píng)論