銀行叫號排隊系統(tǒng)_課程設(shè)計.doc_第1頁
銀行叫號排隊系統(tǒng)_課程設(shè)計.doc_第2頁
銀行叫號排隊系統(tǒng)_課程設(shè)計.doc_第3頁
銀行叫號排隊系統(tǒng)_課程設(shè)計.doc_第4頁
銀行叫號排隊系統(tǒng)_課程設(shè)計.doc_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

能力擴展訓(xùn)練學(xué) 號: 0121011360701課 程 設(shè) 計題 目銀行叫號排隊系統(tǒng)學(xué) 院自動化學(xué)院專 業(yè)自動化專業(yè)班 級自動化1007班姓 名董晨指導(dǎo)教師劉永紅2013年7月9日能力拓展訓(xùn)練任務(wù)書學(xué)生姓名: 董晨 專業(yè)班級: 1007 班 指導(dǎo)教師: 劉永紅 工作單位: 自動化學(xué)院 題 目: 銀行叫號排隊系統(tǒng)的設(shè)計 初始條件: 1)實地調(diào)研,了解銀行叫號過程;(2)畫出一個實例的狀態(tài)轉(zhuǎn)移圖;(3)程序設(shè)計,用單片機實現(xiàn)。(匯編語言或c語言)要求完成的主要任務(wù): (包括課程設(shè)計工作量及其技術(shù)要求,以及說明書撰寫等具體要求)1. 題目內(nèi)容: 根據(jù)實際情況,制定可行的技術(shù)路線,滿足客戶要求。(如,等待時間最短;vip優(yōu)先;老人優(yōu)先(專柜);“飛號”不清除等。飛號是指叫了該號3次后,而該號人沒出現(xiàn)服務(wù)窗口,就不再呼叫,該號被清除了,該號就稱之為飛號??捎脩粲只貋砹?,只好再取一個新號。)2. 課程設(shè)計說明書應(yīng)包括:a)設(shè)計任務(wù)及要求b)方案比較及認證c)程序設(shè)計基本思想,程序流程圖,部分源程序及注解d)調(diào)試記錄及結(jié)果分析e)參考資料f)附錄:全部源程序清單g)總結(jié)時間安排:2013年 7 月 1-2 日 選題、查閱資料和方案設(shè)計2013年 7 月 3 日 編程2013年 7 月 4-5 日 調(diào)試程序,改進與提高2013年 7 月 6-8 日 撰寫設(shè)計報告(有調(diào)試過程及結(jié)果的截屏)2013年 7 月 9 日 答辯和交課程設(shè)計報告指導(dǎo)教師簽名: 2013 年 月 日系主任(或責(zé)任教師)簽名: 2013 年 月 日摘 要 排隊叫號管理系統(tǒng)是針對銀行、工商、稅務(wù)、通訊、政府機構(gòu)等部門的大廳工作流程設(shè)計的,是利用電腦的科學(xué)管理客戶排隊的系統(tǒng),很好地解決了客戶在服務(wù)機構(gòu)辦理業(yè)務(wù)時所遇到的各種排隊、擁擠和混亂現(xiàn)象,為客戶辦理業(yè)務(wù)帶來莫大的方便和愉悅。該題研究的目的是研制一款無人排隊的排隊叫號機,它主要由主控制器、鍵盤、顯示電路、蜂鳴器電路等部分構(gòu)成。 系統(tǒng)利用單片機進行控制,通過串行通信方式傳輸處理數(shù)據(jù);通過按鍵取號,在lcdlm016l上顯示排隊的號碼以及當(dāng)前正在等待的人數(shù);通過按鍵叫號,在lcdlm016l上顯示叫到的號碼,由揚聲器發(fā)出聲音提示客戶。同時免除了令客戶不舒服的站立式排隊,這種現(xiàn)代化的高科技產(chǎn)品徹底解決了銀行普遍存在的站立等候,服務(wù)無序的問題,深化并完善了服務(wù)的質(zhì)量。本系統(tǒng)采用單片機進行控制,利用lcdlm016l顯示,蜂鳴器鳴叫提示的人機交互界面,模擬排隊管理系統(tǒng),科學(xué)地處理各種排隊情況。操作簡便,控制靈活,顯示清晰,制作成本低,性價比較高。 關(guān)鍵詞: stc89c52芯片 液晶顯示lcdlm016l 按鈕目 錄1 系統(tǒng)方案論證11.1 設(shè)計要求11.2 單片機芯片的選擇方案和論證11.3 顯示模塊選擇方案和論證11.4 系統(tǒng)方案設(shè)計22 系統(tǒng)硬件設(shè)計32.1 系統(tǒng)總電路32.2 單片機處理部分設(shè)計32.3 顯示電路部分42.4 時鐘振蕩電路52.5 復(fù)位電路62.6 蜂鳴電路62.7 按鍵電路73 系統(tǒng)軟件設(shè)計84系統(tǒng)測試95 小結(jié)10參考文獻11附錄12源程序:12銀行叫號排隊系統(tǒng)的設(shè)計1 系統(tǒng)方案論證1.1 設(shè)計要求(1)實地調(diào)研,了解銀行叫號過程;(2)畫出一個實例的狀態(tài)轉(zhuǎn)移圖;(3)程序設(shè)計,用單片機實現(xiàn)。(匯編語言或c語言) 注:根據(jù)實際情況,制定可行的技術(shù)路線,滿足客戶要求。(如,等待時間最短;vip優(yōu)先;老人優(yōu)先(專柜);“飛號”不清除等。飛號是指叫了該號3次后,而該號人沒出現(xiàn)服務(wù)窗口,就不再呼叫,該號被清除了,該號就稱之為飛號??捎脩粲只貋砹?,只好再取一個新號。)1.2 單片機芯片的選擇方案和論證方案一:采用at89s51芯片作為硬件核心,內(nèi)部具有4kb rom 存儲空間,而且與mcs-51系列單片機完全兼容,但是運用于電路設(shè)計中時由于不具備isp在線編程技術(shù),所以在對電路進行調(diào)試時,由于程序的錯誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r,對芯片的多次拔插會對芯片造成一定的損壞。方案二:采用stc89c52芯片,stc89c52是一種低功耗、高性能的8位cmos微控制器,具有8k的可編程flash存儲器。同樣具有at89s51的功能,且具有在線編程可擦除技術(shù),當(dāng)對電路進行調(diào)試時,由于程序的錯誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r,不需要對芯片多次拔插,所以不會對芯片造成損壞。綜上所述,選擇采用stc89c52作為主控制系統(tǒng)核心。1.3 顯示模塊選擇方案和論證方案一:采用led數(shù)碼管動態(tài)掃描,led數(shù)碼管價格適中,對于顯示數(shù)字合適,采用動態(tài)掃描法與單片機連接時,雖然占用的單片機口線少,但連線還需要花費一點時間,所以也不用此種作為顯示。方案二:采用點陣式數(shù)碼管顯示,點陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對于顯示文字比較適合,若采用在顯示數(shù)字顯得太浪費,且價格也相對較高,所以在此也不用此種作為顯示。方案三:采用lm016l液晶顯示屏,該液晶顯示屏的顯示功能強大,內(nèi)置192種字符,可顯示大量符號、數(shù)字,清晰可見,而且功率消耗小壽命長抗干擾能力強。綜上所述,在設(shè)計中采用lm016l液晶顯示屏。1.4 系統(tǒng)方案設(shè)計系統(tǒng)采用如圖1所示的電路,通過stc89c52單片機直接擴展的獨立鍵盤,完成排隊取號流程(本系統(tǒng)直接利用系統(tǒng)的中斷0按鍵控制),單片機控制lcdlm016l顯示排隊等待情況,控制蜂鳴器發(fā)聲完成叫號功能。 89c52 lcdlm016l 獨立鍵盤 蜂鳴器圖1整體方案框圖 因為采用矩陣鍵盤完成排隊取號流程,但客戶較多的時候要實現(xiàn)排隊取號的功能,就要占去過多的i/o端口,操作起來也比較復(fù)雜,而方案二的獨立鍵盤操作控制簡單,占用主機資源少,所以選擇方案二,采用獨立鍵盤控制排隊取號,通過串行通信的方式,模擬排隊取號管理系統(tǒng)的流程顯得更加方便、科學(xué)。2 系統(tǒng)硬件設(shè)計2.1 系統(tǒng)總電路系統(tǒng)電路由單片機部分,顯示電路,時鐘振蕩電路,復(fù)位電路,叫號電路和按鍵電路組成。圖2 系統(tǒng)總電路圖2.2 單片機處理部分設(shè)計設(shè)計的思想是簡單實用,中心處理部分采用stc89c52單片機。stc89c52單片機完全可以滿足本系統(tǒng)的設(shè)計要求,相對于其他具有相當(dāng)功能的器件來說,具有價格便宜,對環(huán)境要求不高,工作穩(wěn)定等優(yōu)點。stc89c52高性能coms 8位單片機,片內(nèi)含4k bytes的可反復(fù)擦寫的只讀程序存儲器(rom)和128 bytes的隨機存取數(shù)據(jù)存儲器(ram)。具有32個可編程的i/o口,其中p0口為一個8位漏極開路雙向i/o口,編程時作為原碼輸入口,校驗時,輸出原碼;p1口是一個內(nèi)部提供上拉電阻的8位雙向i/o口,在編程和校驗時,作為第八位地址接收;p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,在編程和校驗時接收高八位地址信號和控制信號;p3口為8個帶內(nèi)部上拉電阻的雙向i/o口,同時也偶一些特殊功能,我們所使用到的p3.6/wr可作為外部數(shù)據(jù)存儲器寫選通,p3.7/rd可作為外部數(shù)據(jù)存儲器讀選通;rst口為復(fù)位輸入;xtal1口為反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入;xtal2口為反向振蕩器的輸出。圖3 at89c52管腳圖2.3 顯示電路部分 顯示電路部分如下圖所示,采用的是液晶顯示屏lm016l模塊,lm016l字符型lcd通常有14條引腳線或16條引腳線的lcd,多出來的2條線是背光電源線。它可以顯示兩行,每行16個字符,采用單+5v電源供電,外圍電路配置簡單,價格便宜,具有很高的性價比。stc89c52的p0.0至p0.7的8個端口用來控制數(shù)碼管的顯示。x圖4 顯示電路部分2.4 時鐘振蕩電路sct98c52中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反向放大器,引腳xtal1和xtal2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,震蕩電路如圖5所示。因為一個機器周期含有6個狀態(tài)周期,而每個狀態(tài)周期為2個震蕩周期,所以一個機器周期共有12個震蕩周期,如果外接石英晶振的震蕩頻率為12mhz,故而一個機器周期為1us 。圖5 時鐘振蕩電路外接石英晶體及電容c1、c2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容c1、c2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響震蕩頻率的高低、震蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性。外接石英晶體,電容使用30pf。2.5 復(fù)位電路復(fù)位電路雖然簡單,但其作用非常重要,一個單片機系統(tǒng)能否正常運行,首要檢查是否能復(fù)位成功。復(fù)位操作有上電自動復(fù)位和手動復(fù)位兩種方式,本文采用手動復(fù)位方式。手動復(fù)位是通過開關(guān)實現(xiàn)的其電路如圖6所示。在通電瞬間電容c通過電阻r充電,rst出現(xiàn)正脈沖,用以復(fù)位。只要電源vcc上升時間不超過1ms,就可以實現(xiàn)手動復(fù)位,即按下開關(guān)就可以實現(xiàn)系統(tǒng)的復(fù)位初始化。關(guān)于參數(shù)的選定在震蕩穩(wěn)定后應(yīng)保證復(fù)位高電平持續(xù)時間大于2個機器周期。這里選用的是12mhz的石英晶振可取c=4.7uf,r=4.7k。圖6 復(fù)位電路2.6 蜂鳴電路實現(xiàn)蜂鳴的接口電路比較簡單,其發(fā)音原件通常采用壓電蜂鳴器,當(dāng)在蜂鳴器兩引腳加上+3v+15v只留工作電壓時,就能產(chǎn)生3khz左右的蜂鳴器震蕩音響。壓電式蜂鳴器結(jié)構(gòu)簡單、耗電少、更適合于單片機系統(tǒng)的應(yīng)用。壓電式蜂鳴器,需要10ma的驅(qū)動電流,可在p3.0口接上一直三極管和電阻組成的驅(qū)動電路來驅(qū)動,如圖7所示。圖7 蜂鳴電路 在圖中,p3.0接三極管的極端輸入端,當(dāng)p3.0輸出高電平時,三極管導(dǎo)通,蜂鳴器通電而發(fā)音,當(dāng)p3.0輸出低電平時,三極管截止,蜂鳴器停止發(fā)音。2.7 按鍵電路 按鍵電路實現(xiàn)的功能是取號和叫號,客戶通過按鍵實現(xiàn)取號,工作人員通過按鍵實現(xiàn)叫號,使客戶前來相應(yīng)的窗口辦理業(yè)務(wù),按鍵電路如圖8所示。圖8 按鍵電路3 系統(tǒng)軟件設(shè)計本程序可實現(xiàn)設(shè)計的基本要求,設(shè)備上電后,顯示器屏幕亮,無信息顯示。當(dāng)客戶按鍵后,每按一下,隊伍加1,顯示器顯示客戶隊伍號;排滿20位后,再按取號鍵,屏幕顯示“隊伍滿”。當(dāng)客服叫號時,隊伍減1,程序進行信息處理,在顯示器上顯示“幾號客戶到幾號窗口”,同時進行聲音提示。lm016l通過d0d7的8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令,其模塊內(nèi)的控制器有11條控制指令。當(dāng)液晶顯示屏的接口電路與單片機系統(tǒng)i/o按照并行數(shù)據(jù)傳輸方式連接完成以后,即可以對stc89c52單片機進行編程。在液晶屏完成顯示之前首先要對液晶進行初始化。程序流程圖如圖9所示。開始 初始化取號沒lm016l液晶顯示叫號沒 n n y y 取號處理y 蜂鳴器 叫號處理 隊伍號碼遞減 隊伍號碼累加 lm016l液晶顯示結(jié)束圖9總程序流程圖4系統(tǒng)測試 在proteus上畫出電路圖,用c語言編寫的程序,在keil中生成hex文件,裝入單片機中,這樣可在prteus中運行和仿真,實現(xiàn)排隊叫號。 圖10 服務(wù)叫號圖 圖11 服務(wù)窗口圖 5 小結(jié) 本次課程設(shè)計所做的是基于單片機的排隊叫號機系統(tǒng)。主要是為了解決大量客戶的擁擠排隊的問題,并同時使事業(yè)單位改善服務(wù)品質(zhì)、提升營業(yè)形象。排隊系統(tǒng)完全模擬了人群排隊全過程,通過取號進隊、排隊等待、叫號服務(wù)等功能,代替了人們站隊的辛苦,把顧客排隊等待的煩惱變成一段難得的休閑時光,使客戶擁有了一個自由的空間和一份美好的心情。 在整個設(shè)計過程中,我充分發(fā)揮了人的主觀能動性,自主學(xué)習(xí),學(xué)到了許多課堂上沒學(xué)到的知識。程序編寫中,由于思路不清晰,開始時遇到了很多的問題,經(jīng)過靜下心來思考查資料,和同學(xué)討論,向老師請教,理清了思路,再加上先前做計算機控制技術(shù)課程設(shè)計積累的經(jīng)驗,完成對程序的編寫。進一步提高了對單片機的認識,進一步熟悉和掌握單片機的結(jié)構(gòu)及工作原理。通過實際程序設(shè)計和調(diào)試,逐步掌握模塊化程序設(shè)計方法和調(diào)試技術(shù),提高軟件設(shè)計、調(diào)試能力;通過這次設(shè)計熟悉以單片機核心的應(yīng)用系統(tǒng)開發(fā)的全過程,掌握硬件電路設(shè)計的基本方法和技術(shù)。最終較好的完成了設(shè)計,達到了預(yù)期的目的,完了最初的設(shè)想。 經(jīng)過了一個星期課設(shè),我學(xué)到了不少課堂上未曾接觸過的知識。同時又把把以前沒有學(xué)好的程序?qū)I(yè)知識進行了補充和加強,加深了我對于單片機和數(shù)字電路的認識和理解,鞏固了自己所學(xué)的專業(yè)知識,相信在以后的學(xué)習(xí)和工作中碰到這些基礎(chǔ)的元器件我會更加得心應(yīng)手。參考文獻1 四??萍家荼娕抨牴芾硐到y(tǒng)eb/ol2 北京平安力合科技發(fā)展(集團)有限公司中國排隊產(chǎn)品市場分析eb/ol3 劉守義單片機應(yīng)用技術(shù)m 西安:西安電子科技大學(xué)出版社,20024 劉勇數(shù)字電路m北京:電子工業(yè)出版社,20045 譚浩強c程序設(shè)計m(第三版)北京:清華大學(xué)出版社,20056 戴佳,戴衛(wèi)恒51單片機c語言應(yīng)用程序設(shè)計實例精講m北京:電子工業(yè)出版社,2006附錄源程序:void main(void)lcd1602init();p1=0xff;speaker=1; while(1)if(key_5=0) delayms(1000); /延時去抖 num+;currunt_num=num+b; speaker=0; if(currunt_num-call_num)=20) writecom(0x01);/顯示清屏 writechar1(); delayms(2000); if(key_1=0) delayms(1000); /延時去抖 display220=0+0; display221=1+0; call_num+; writechar2(); speaker=0; num-;b+; delayms(1000);if(key_2=0) delayms(1000); /延時去抖 display220=0+0; display221=2+0; call_num+; writechar2(); num-; b+; delayms(1000); if(key_3=0) delayms(1000); /延時去抖 display220=0+0; display221=3+0; call_num+; writechar2(); num-; b+; delayms(1000); if(key_4=0) delayms(1000); /延時去抖 display220=0+0; display221=4+0; call_num+; writechar2(); num-;b+; delayms(1000); if(currunt_num-call_num)=21)writechar3();delayms(1000);num-;currunt_num=num+1;if(currunt_num-call_num)=0)delayms(500); writechar4();delayms(500); void delayms(int ms) int i,j;for(i=0;i10;i+) for(j = 0;jms;j+);void lcd1602init(void)writecom(0x38);/顯示模式設(shè)置 writecom(0x0c);/開顯示 不顯示光標(biāo) 不閃爍 writecom(0x06);/地址指針自動加一 不移動 writecom(0x01);/顯示清屏 writecom(0x80);/數(shù)據(jù)指針設(shè)置void writecom(unsigned char command) /寫命令 lcd_en = 0; lcd_rw = 0; /寫 lcd_rs = 0; /命令 p0 = command;/所寫命令 delayms(2); lcd_en = 1; /高脈沖 delayms(4); lcd_en = 0; void writedata(unsigned char dat) /寫數(shù)據(jù) lcd_en = 0; lcd_rw = 0; /寫 lcd_rs = 1; /數(shù)據(jù) p0 = dat; /所寫數(shù)據(jù) delayms(2); lcd_en = 1; /高脈沖 delayms(4); lcd_en = 0; void writechar1(void) int i; if(currunt_num-call_num)!=0) display112=currunt_num/10+0; display113=currunt_num%10+0; wri

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論