




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于單片機的學生簽到系統(tǒng)的設計與實現題目:基于單片機的學生簽到系統(tǒng)的設計與實現1學生簽到系統(tǒng)分析與設計1.1方案設計具體思路本設計是基于AT89C52單片機設計的學生簽到打卡系統(tǒng),本系統(tǒng)是由RC522射頻芯片采集射頻卡片數據ID號,然后51單片機通過獲得的ID號查詢錄入的數據庫來判斷是哪個人簽到,同時保存一下打卡時間記錄。日歷時間設置是通過上位機軟件獲取電腦精確時間,并通過串口將日歷更新到板子系統(tǒng),操作比按鍵設置簡單易懂。同樣通過電腦端軟件發(fā)送串口指令錄入學生信息、修改學生信息、設置日歷、設置簽到上下限時間,同時使用市場上通用的12864液晶顯示屏顯示時間和打卡詳情功能。1.2方案設計總體框圖1.3數據庫設計1.3.1主控制芯片AT89C52的結構在這一塊AT89C52單片機芯片上,集成了一臺微型計算機的主要組成部分,其中包括CPU、存儲器、可編程I/O口、定時器/計數器,各部分通過內部總線相連。下面介紹幾個主要部分。圖1.2為AT89C52單片機的基本組成功能方塊圖。1.3.2AT89C52管腳說明VCC:供電電壓。GND:接地。P0口:P0口為一個8位漏級開路雙向I/O口,有8TTL門電流被腳吸收。當P1管腳寫入1時,就叫做高阻輸入。P0能夠用于外部ROM數據,又叫做數據/地址的第八位。在FLASH編程時,原碼輸入口為PO,當正在校驗時,PO輸出原碼,此時PO外部必須升高。P1口:準雙向通用I/0口。P1口管腳寫入1后,上拉電阻升高,做為輸入,當P1變?yōu)榈碗娖綍r,有電流輸出。P1口作為第八位地址接收,也可以用來進行FLASH的變成和校驗。P2口:準雙向I/0口。P2口輸出其特殊功能寄存器的內容。P3口:P3口為8個上拉電阻雙向I/O接口組成的。當P3口寫入1后,P3口被內部升為高電平,用來輸入。作為輸入,外部下降為低電平,所以P3口會有電流的輸出。P3口管腳還有其他功能,如下:P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0)P3.3INT1(外部中斷1)P3.4T0(記時器0外部輸入)P3.5T1(記時器1外部輸入)P3.6(外部數據存儲器寫選通)P3.7(外部數據存儲器讀選通)RST:復位。振蕩器需要復位時,要保持RST腳兩個機器周期的高電平時間。ALE/:地址鎖存信號輸出端/EPROM編程脈沖輸入端。PSEN:外部程序ROM的選通信號端。外部程序取指的時候,僅僅只有兩次的PSEN有效。所以在外部ROM不工作的時候,信號是不會出現的。 /VP:內/外部ROM選擇端.XTAL1:反向振蕩放大器的輸入,內部時鐘電路的輸入。XTAL2:反向振蕩器的輸出。1.4串口電路1.4.1CH374概述CH374是一個USB總線的通用接口芯片,USB-DEVICE/SLAVE設備方式都是支付USB的主機方式。HUB根集線器有3個端口,低速和全速的控制傳輸、批量傳輸、中斷傳輸以及同步/等時傳輸。CH374采用8位數據總線支持讀、寫、片選控制線以及中斷輸出。該電路應用于51單片機和PC端的串口通訊,改串口模塊電路用于設置時間和錄入學生信息和修改學生信2系統(tǒng)實現2.1程序模塊設計本次設計采用的是模塊化程序結構,可以分成以下程序模塊:1、系統(tǒng)初始化程序:實現完成變量的設定、中斷入口的設定、堆棧、輸入輸出口及外部件的初始化工作(如12864、RC522、串口和定時器的初始化)。2、鍵盤掃描程序:定時100ms輪訓按鍵,來判斷是否有按鍵發(fā)生。3、主程序:完成鍵盤掃描、射頻模塊的讀寫、日歷時間的顯示、當有卡片刷卡時顯示刷卡信息,如果超過預設的打卡時間段啟動蜂鳴器報警。4、射頻模塊程序:51單片機通過并口與射頻模塊通訊,定時檢測天線周圍是否有卡片介入,并通過ISO1443卡標準完成讀卡寫卡功能。5、顯示子程序:12864的內部讀寫設定,顯示校名和日歷和顯示刷卡信息狀態(tài)。6、蜂鳴器程序:判斷是否滿足刷卡條件,來控制是否報警。7、日歷程序:年月日時分秒和星期的計算。2.2軟件部分圖2.1系統(tǒng)設計流程圖本次設計采用的是模塊化程序結構,可以分成以下程序模塊:1、系統(tǒng)IO初始化,主要就是MCUIO口的電平設置。InitializeSystem()2、學生卡軟件參數的初始化,主要就是學生卡結構體變量參數賦值和BUF清0操作,以及設置打卡簽到時間。StudentCardInit();3、蜂鳴器的初始化,關閉蜂鳴器操作,防止一上電就長響beep_init();4、日歷結構體參數初始化,主要是設置默認上電日歷時間星期。Calendar_Init();5、定時器初始化,定時器在程序中起了至關重要的做用,主要實現了系統(tǒng)輪訓機制。bsp_InitTimer();6、射頻模塊復位初始化,切記RC500上電后應延時500ms才能可靠初始化,否則有可能射頻模塊初始化失敗,造成不能正常刷卡。Rc500Ready();7、串口任務初始化,設置串口通訊參數波特率為:9600,校驗位:NONE,數據位:8,停止位:1。Creak_UsartTask();8、按鍵任務初始化,主要對按鍵變量參數的初始化,以及硬件軟件設置操作。Creak_KeyTask();9、顯示屏12864初始化,接口為并口通訊方式,在寫數據之前要記得清屏,設置功能、顯示、光標設置等參數設置,設置參數完成之后,顯示學校校名以及歡迎使用簽到機系統(tǒng)頁面。Creak_LCDTask();10、射頻模塊天線設置為關閉狀態(tài),并啟動射頻模塊輪訓任務,任務間隔時間為500msCreak_CardTask();11、射頻模塊輪訓處理任務,主要負責射頻模塊卡片讀寫操作。并查詢刷到的卡號所對應的學生信息。Card_Task();12、按鍵任務輪訓處理,主要負責檢查三個按鍵是否被按下,如果有按鍵發(fā)生,并做相應的處理操作,按鍵主要觸發(fā)系統(tǒng)查詢簽到遲到的卡片有哪些。Key_TASK();13、串口任務處理,主要是處理接受下來上位機軟件發(fā)過來的數據之后,再來判斷是什么命令,系統(tǒng)再做相應處理(如:更新系統(tǒng)時間、錄入和修改、刪除卡號操作)。UsartTask();14、顯示屏任務處理,主要是用來顯示當前系統(tǒng)狀態(tài),例如系統(tǒng)刷卡界面包含日歷時間等信息,更新時間成功界面,以及系統(tǒng)查詢遲到界面等等。LCD_TASK();2.3上位機軟件1、界面如下:圖2.2上位機界面2、串口設置如下:圖2.3串口設置圖切記波特率一定要跟下位機串口設置一致。串口號可以在設備管理器中查詢得到,如圖2.4所示圖2.4串口查詢圖3、錄入和修改卡號和學號操作:圖2.5修改界面圖輸入姓名和學號之后,點擊錄入和修改即可。4、刪除學號操作,如圖2.6所示圖2.6刪除學號圖輸入相應要刪除的卡號,點擊刪除即可。5、更新系統(tǒng)時間操作,如圖2.7所示圖2.7系統(tǒng)時間點擊更新時間,下位機時間立即更新為PC端系統(tǒng)時間。2.3.1上位機與下位機通訊協(xié)議如下:幀頭 數據一個字節(jié) N個字節(jié)a)更新系統(tǒng)時間幀頭 數據0Xe0 N個字節(jié)b)錄入和修改幀頭 數據0Xe1 N個字節(jié)c)刪除卡號:幀頭 數據0Xe3 N個字節(jié)圖2.8通訊協(xié)議圖2.4程序下載方法:首先須裝好USB驅動,然后選擇對應的MCU型號”STC89C58RC”,打開程序要燒錄的HEX文件,選擇與您計算機對應的端口,即COM口,先關閉開發(fā)板電源,即開關彈起,當點擊“下載”時提示請給MCU上電時,您再給開發(fā)板供電,即開關按下,燒寫過程可見進度條。圖2.9程序燒錄運行圖2.5整體分析這次畢業(yè)設計從軟件設計到硬件制作過程中,都是以AT89C52單片機為核心設計的,通過芯片的識別來完成學生簽到的過程。將白芯片放入識別區(qū)域,這時在電腦上就可以設定學生的信息,學號,當白芯片錄入進信息后,在指定的識別區(qū)域刷卡,從而完成學生簽到的。當需要修改學生的信息時,將芯片放入識別區(qū)域,用做好的上位機軟件來更新學生的信息,刪除或者修改學生的信息。此外還可以通過按鍵裝置,來查詢遲到的學生。3.系統(tǒng)運用的各個模塊3.1單片機AT89C52外圍晶振電路每一個單片機都含有著晶振,它的全部名稱為晶體震蕩器,晶體振蕩器的作用非常大,因為它不僅僅結合了單片機內部的電路,從而讓單片機產生了必要的時鐘頻率,一直不停的工作,單片機所發(fā)出的所有指令的執(zhí)行都是在晶體振蕩器上建立起來的,它提供的時鐘頻率越高,則單片機運行速度就越快。該課程設計晶振為11.0592MHz,如圖3.1為晶振電路。3.2單片機AT89C52外圍復位電路復位的作用是使中央處理器CPU以及其他功能部件都恢復到一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。AT89C52單片機的復位是靠外部電路實現的,信號由RESET(RST)引腳輸入,低電平無效,在振蕩器工作時,只要RST引腳高電平是兩個周期,就會復位,復位后,PC程序計數器的內容為0000H,片內RAM中的內容不變。本設計采用的復位電路是手動開關復位,圖3.2為手動復位電路。復位電路的第一功能是上電復位。VCC上電時,C充電,在10K電阻上出現電壓,使得單片機復位;在一定時間之后,C充滿,電阻上的電流變?yōu)?,同時電壓也變?yōu)?,從而讓單片機進入工作狀態(tài)。復位電路的第二功能是手動復位電路,在有按鍵按下時,由于電容充電產生一點時間的高電平,就可以使單片機復位。這種情況在工作時間下,撥下S時,C放電。松開S時,C充電,同時電阻出現電壓,然后單片機復位。在一點時間后,單片機進入工作模式。3.3射頻采集電路RC522射頻芯片主要特性:1、模擬電路可以讓卡應答的解調和解碼。2、支持IC和ISO14443A14部分。3、10cm內為有效范圍。4、天線上的緩沖輸出驅動器使用最少數的元件連接的。5、內部非易失性密匙存儲器必須加密并且保護。6、微處理器接口在并行是由內部地址鎖存和IRQ線組成的。7、中斷處理非常靈活。8、芯片采用自主檢驗接口類型。9、方便的發(fā)送64字節(jié)和FIFO緩沖區(qū)的接收。10、消耗功率少的硬件復位。11、軟件可以控制掉電模式。12、定時器是可以編程。13、序列號是唯一的。14、啟動配置是用戶可編程的。15、位和字節(jié)是用定位幀來定位的。16、發(fā)送器部分與數字模擬分別使用自獨立的電源輸入腳。17、13.56MHz石英晶體與內部振蕩器緩沖鏈接從而產生低相位抖動。18、濾波時鐘頻率。19、在短距離的應用,天線驅動器必須為3.3V才可操作。3.4電源電路電源電路選擇最常用的USB口供電,可以通過USB線插到PC的USB口供電也可以插到手機適配器上面,因為板子的供電電壓剛好是5V,也不需要額外的轉換電壓。上面的發(fā)光二極管用于指示電源是否供電。開關是用來控制整個板子的用電開與關。3.5報警電路由于蜂鳴器的工作電流一般比較大,以致于單片機的I/O口是無法直接驅動蜂鳴器的,所以要利用放大電路來驅動,一般使用三極管來放大電流就可以了。本電路使用了I/O口定時翻轉電平驅動蜂鳴器方式。該報警器主要用來刷卡指示和打卡異常指示。3.6液晶顯示電路12864漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形,顯示內容與技術參數:電源:VDD3.3V到+5V(內部含有升壓電路并且不需要負壓);顯示內容:128×64顯示顏色:綠色黃色LCD類型:STN和MCU接口:8位或3位串行/4位并行128X64液晶引腳說明:引腳號 引腳名稱 方向 功能說明1 VSS - 電源地2 VDD - 電源的正端3 V0 - LCD的輸入為驅動電壓4 RS(CS) H/L 串行的片選信號5 R/W(SID) H/L 并行讀寫信號;數據口串行6 E(CLK) H/L 使能信號并行;同步時鐘串行7 DB0 H/L 數據08 DB1 H/L 數據19 DB2 H/L 數據210 DB3 H/L 數據311 DB4 H/L 數據412 DB5 H/L 數據513 DB6 H/L 數據614 DB7 H/L 數據715 PSB H/L 接口選擇:H-并行;L-串行16 NC 空腳17 /RET H/L 硬件復位(高電平無效)18 NC 空腳19 LED_A (LED+5V) 背光源的正極20 LED_K (LED-OV) 背光源的負極4.硬件與軟件的檢測與調試4.1硬件電路調試仔細檢查所接電路,按照硬件原理圖接線,理論上是能實現的,如果液晶12864不顯示,則應該檢查液晶屏線路是否正確,或是因為單片機沒有工作,還是晶振沒有起振。如果不能正常刷卡,檢測一下RC522電路部分是否連接正確,看看RC522周圍電路是否存在虛焊問題。蜂鳴器是低電平有效。如果能注意這些問題,電路基本不會出錯。4.2軟
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 調試工序管理辦法模板
- 科協(xié)項目審批管理辦法
- 定向委托采購管理辦法
- 電信工單培訓課件
- 照明學習培訓課件
- 肝硬化中醫(yī)課件
- 高考 人教 數學試卷
- 分班考高中數學試卷
- 二年級河南數學試卷
- 高3試卷數學試卷
- DB3502∕T 166-2024 既有廠區(qū)及老舊小區(qū)海綿城市方案設計導則
- 2025年 江西省金控科技產業(yè)集團有限公司招聘考試筆試試卷附答案
- 2025云南中考歷史真題及答案
- 四川省成都市蓉城聯(lián)盟2024-2025學年高一下學期6月期末考試物理試題(含答案)
- 壓軸訓練:全等三角形(多解、動點、新定義型壓軸)(原卷版)
- 【人教版】吉林長春2024-2025學年 五年級下學期期末數學試題【附答案】
- 福建省三明市永安林業(yè)(集團)股份有限公司招聘筆試題庫2025
- 2025年安慶望江縣融媒體中心專業(yè)技術人員招聘考試筆試試題(含答案)
- 2025公文寫作考試真題庫(含答案)
- DLT 5035-2016 發(fā)電廠供暖通風與空氣調節(jié)設計規(guī)范
- 2024年廣東省中考生物+地理試卷(含答案)
評論
0/150
提交評論