freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的指紋識別系統(tǒng)設(shè)計畢業(yè)設(shè)計-資料下載頁

2024-11-12 14:56本頁面

【導(dǎo)讀】(此文檔為word格式,下載后您可任意編輯修改!科學(xué)技術(shù)的發(fā)展在讓社會進(jìn)步的同時,也讓傳統(tǒng)的安全管理系統(tǒng)受到威脅。生物識別技術(shù)的出現(xiàn)給身份識別的研究帶來了突飛猛進(jìn)的發(fā)展。己特有的特征,用本身的特征來驗證身份有著得天獨(dú)厚的優(yōu)勢。該系統(tǒng)實現(xiàn)單片機(jī)和指紋模塊之間的串口通信。戶、刪除指定用戶、刪除全部用戶、認(rèn)證用戶,以及管理用戶權(quán)限等功能。

  

【正文】 ACK_FAIL ACK_TIMEOUT 0 CHK 0xF5 (5) 比對 1: N(命令應(yīng)答均為 8 字節(jié)) 27 表 9 比對 1: N指令格式 字節(jié) 1 2 3 4 5 6 7 8 命令 0xF5 0x0C 0 0 0 0 CHK 0xF5 應(yīng)答 0xF5 0x0C 用戶號(高 8位) 用戶號(低 8位) ACK_SUCCESS ACK_FAIL ACK_TIMEOUT 0 CHK 0xF5 (6) 取用戶權(quán)限(命令應(yīng)答均為 8 字節(jié)) 表 10 取用戶權(quán)限指令格式 字節(jié) 1 2 3 4 5 6 7 8 命令 0xF5 0x0A 用戶號(高 8位) 用戶號(低 8位) 0 0 CHK 0xF5 應(yīng)答 0xF5 0x0A 0 0 用戶權(quán)限 123 ACK_NOUSER 0 CHK 0xF5 (7) 設(shè)置讀取比對等級(命令應(yīng)答均為 8 字節(jié)) 表 11 設(shè)置讀取比對等級指令格式 字節(jié) 1 2 3 4 5 6 7 8 命令 0xF5 0x28 0 Byte=0:新比對等級 Byte=1:0 0:設(shè)置新的比對等級 1:讀取當(dāng)前比對等級 0 CHK 0xF5 應(yīng)答 0xF5 0x28 0 當(dāng)前對比等級 ACK_SUCCESS ACK_FAIL 0 CHK 0xF5 說明:比對等級取值為 09,取值越大比對越嚴(yán)格,默認(rèn)值為 5。 (8) 設(shè)置讀取指紋采集等待超時(命令應(yīng)答均為 8 字節(jié)) 表 12 設(shè)置讀取指紋采集等待超時 指令格式 字節(jié) 1 2 3 4 5 6 7 8 28 命令 0xF5 0x2E 0 Byte=0:新超時時間 Byte=1:0 0:設(shè)置新的超時時間 1:讀取當(dāng)前超時時間 0 CHK 0xF5 應(yīng)答 0xF5 0x2E 0 當(dāng)前超時時間 ACK_SUCCESS ACK_FAIL 0 CHK 0xF5 說明: 指紋等待超時時間( tout)范圍為 0255。若此值為 0,若無指紋按壓則指紋采集過程將一直持續(xù);若此值非 0,在 tout*T0 時間內(nèi)若無指紋按壓則系統(tǒng)將超時 退出。 注: T0 為采集處理一幅圖像所需的時間,一般為 。 . 29 單片機(jī)的程序設(shè)計 . 鍵盤管理及指示燈響應(yīng)程序設(shè)計 為實現(xiàn)各按鍵功能,需要對按鍵編號定義。 表 13 按鍵功能 按鍵 1 2 3 4 5 6 7 8 功能 休眠 添加用戶 刪除指定用戶 刪除所有用戶 驗證用戶 上翻 下翻 權(quán)限管理 鍵掃流程圖如下: 圖 13 鍵掃流程圖 開始 IT0=1,選擇 INT0 為脈沖觸發(fā)觸發(fā)方式下降沿有效; EX0=1, EA=1 KEY_value=0xff 賦初始鍵值,關(guān)系統(tǒng)中斷 讀取 P1口狀態(tài),給KEY_value,消抖,判斷是否有效 等待按鍵釋放,消抖 判按鍵,轉(zhuǎn)到相應(yīng)子程序 返回 N Y 30 程序設(shè)計見附錄 F。 鍵 1 用于休眠,即向指紋模塊發(fā)送休眠信號,以等待后續(xù)操作,或在本次操作完成后,使模塊休眠以便下一次使用。按下鍵 1 后,休眠指示燈點(diǎn)亮。 程序設(shè)計見附錄 F。 當(dāng)添加用戶信息時,通過按鍵 2 操作,添加指示燈點(diǎn)亮,單片機(jī)向 DSP 芯片發(fā)出命令, 指紋傳感器 獲取 指紋 圖像 , 其后 DSP 以 固化程序執(zhí)行圖像處理相關(guān)計算 并將處理后的值存入緩存區(qū),若第一次添加成功,則指紋采集儀指示燈再次點(diǎn)亮, DSP 合并處理兩次信息成功后,通過串口向單片機(jī)發(fā)送應(yīng)答信號,此時確認(rèn)指示燈點(diǎn)亮,表示此用戶信息添加成功。用戶 ID 自動遞增,并在 LED 數(shù)碼管上顯示。第一次和第二次采集失敗均返回失敗響應(yīng),其余應(yīng)答信號包括用戶已存在應(yīng)答以及超時應(yīng)答。 程序流程如圖 14 所示: 31 圖 14 添加用戶流程圖 鍵 8 用于權(quán)限管理,循環(huán)按鍵,在 3 之間循環(huán)滾動,按鍵停留時,顯示數(shù)字表示當(dāng)前要添加的用戶權(quán)限, 1 為最低, 3 為最高。此操作需要在添加用戶之前操作(因為協(xié)議未提供讀取用戶權(quán)限及修改命令),然后按下鍵 2 以確認(rèn),隨后由指紋識別頭采集圖像。 初始化串口 讀取最后用戶編號,并加 1 若 TL=FF,則 TL=00, TH=TH+1 否則 TL=TL+1, TH 不變 設(shè)置權(quán)限等級,按鍵 2 發(fā)送CMD=0x01 指令,指 示燈 2 亮 讀取失敗,返回 Q3=FAIL 應(yīng)答 操作失敗指示燈亮 第一次采集圖像 采集失敗 若返回 Q3=FAIL,顯示: FAIL 若返回 Q3=FULL,顯示: FULL 若返回 Q3=TIMEOUT,顯示: OU 操作失敗指示燈亮 采集成功 返回 Q3=SUCCESS 應(yīng)答 顯示:用戶 ID+AFFI 開始 返回 第一次采集成功,則進(jìn)行第二次采集 采集失敗 若返回 Q3=FAIL,顯示: FAIL 若返回 Q3=EXIST,顯示: EIS 若返回 Q3=TIMEOUT,顯示: OU 操作失敗指示燈亮 32 程序設(shè)計見附錄 F。 鍵 3 用于刪除指定用戶,首先以鍵 6 和鍵 7 上下調(diào)節(jié)以選定要操作的用戶,然后通過按鍵 3 確認(rèn)操作,并發(fā)送刪除當(dāng)前選定用戶指令。 程序流程如圖 15 所示: 圖 15 刪除指定用戶流程圖 程序設(shè)計見附錄 F。 刪除所有用戶時,以按鍵 4 執(zhí)行。成功返回 SUCCESS 應(yīng)答,失敗返回 FAIL應(yīng)答。 程序流程如圖 16 所示: 開始 返回 按鍵 3 發(fā)送 CMD=0X04 指令 指示燈 3 亮,刪除指定用戶 調(diào)節(jié)用戶名 ID 返回 Q3= SUCCESS 應(yīng)答 顯示: ID+DELE 刪除失敗,返回 Q3= FAIL 應(yīng)答 操作失敗指示燈亮 33 圖 16 刪除所有用戶流程圖 程序設(shè)計見附錄 F。 需要驗證用戶時,按下鍵 5 即執(zhí)行搜索比對操作,單片機(jī)向 DSP 發(fā)送采集圖像并進(jìn)行 1:N 比對命令,比對成功后,返回信息, LED 數(shù)碼管顯示用戶 ID,若用戶不存在,則返回相應(yīng)信息, LED 顯示 NOUS。 程序流程如圖 17 所示: 圖 17 認(rèn)證用戶流程圖 程序設(shè)計見附錄 F。 當(dāng)按下操作鍵或返回應(yīng)答信號后,指示燈響應(yīng)內(nèi)容如表 14 所示: 表 14 指示燈響應(yīng)含義 指示燈 1 2 3 4 5 6 7 8 響應(yīng) 含義 休眠 添加 用戶 刪除指定用戶 刪除所有用戶 用戶認(rèn)證 超時 失敗 程序設(shè)計見附錄 F。 注:相應(yīng)的點(diǎn)亮熄滅指令已經(jīng)包含在對應(yīng)的功能子程序當(dāng)中。 開始 返回 指示燈 4 亮,刪除所有用戶 按鍵 4 發(fā)送 CMD=0X05 指令 返回 Q3= SUCCESS 應(yīng)答 顯示: ALLD 刪除失敗,返回 Q3= FAIL 應(yīng)答 操作失敗指示燈亮 開始 返回 指示燈 5 亮,采集圖像比對 按鍵 5 發(fā)送 CMD=0x0C 指令 返回 Q3= SUCCESS 應(yīng)答 顯示: ID+ACCE 比對 失敗 若返回 Q3= FAIL,顯示: FAIL 若返回 Q3=NOUSER,顯示: NOUS 若返回 Q3=TIMEOUT,顯示: OU 操作失敗指示燈亮 34 . LED 顯示模塊設(shè)計 當(dāng)操作不同功能按鍵或者返回 不同的應(yīng)答信號時,數(shù)碼顯示管顯示相應(yīng)的內(nèi)容,對應(yīng)各功能,具體顯示內(nèi)容如表 15 所示: 表 15 LED 顯示 應(yīng)答 顯示 添加用戶成功 “ ID” +“ AFFI” 刪除指定用戶成功 “ ID” +“ DELE” 刪除所有用戶成功 “ ALLDELE” 用戶認(rèn)證成功 “ ID” +“ ACCE” 續(xù)表 15 添加、刪除、搜索失敗 “ FAIL” 用戶存儲已滿 “ FULL” 用戶已存在 “ EIS” 用戶不存在 “ NOUS” 超時 “ OU” 其中,“ AFFI”表 Affixion,“ DELE” 表 Delete, “ ACCE”表 Access,“ EIS”表“ EXIST”,“ NOUS”表“ NOUSER”,“ OU”表“ TIMEOUT”。 35 程序流程如圖 18 所示: 圖 18 LED 顯示流程圖 程序設(shè)計見附錄 F。 . 通信模塊程序設(shè)計 單片機(jī)和指紋模塊的通信首先需要將串口初始化,即設(shè)定二者之間的串口通信命令:波特率為 19200bps, 1 起始位, 1 停止位,無校驗位。當(dāng)單片機(jī)檢測到發(fā)送緩存有數(shù)據(jù)時,開始向 DSP 發(fā)送數(shù)據(jù), DSP 收到命令后,進(jìn)行相應(yīng)操作響應(yīng),隨后向單片機(jī)返回各種結(jié)果的應(yīng)答。 通信中的發(fā)送流程(以單片機(jī)為參考)如圖 19 所示: 開始 選擇最右邊的 LED 送位選碼 延時 段碼 緩沖區(qū)下移一位 LED 左移一位 是否到最后一位 N Y 送段碼 結(jié)束 36 圖 19 通信發(fā)送流程 圖 (以單片機(jī)為參考) 通信中的接收流程(以單片機(jī)為參考)如圖 20 所示: 圖 20 通信接收流程 圖 (以單片機(jī)為參考) 開始 檢測接收緩存是否有數(shù)據(jù) 繼續(xù)等待 判斷返回數(shù)據(jù)第四位 顯示相應(yīng)結(jié)果 N Y 返回 開始 串口初始化 檢測發(fā)送緩存是否有數(shù)據(jù) 繼續(xù)等待 向 DSP 發(fā)送數(shù)據(jù) DSP 響應(yīng)并返回應(yīng)答 N Y 返回 37 程序設(shè)計見附錄 F。 5. 38 調(diào)試 . 單片機(jī)的程序下載 程序存儲器的更新以頁的方式進(jìn)行。在用臨時頁緩沖器存儲的數(shù)據(jù)對一頁存儲器進(jìn)行編程時,首先要將這 一頁擦除。 SPM 指令以一次一個字的方式將數(shù)據(jù)寫入臨時頁緩沖器。臨時頁緩沖器的寫入可以在頁擦除命令之前完成,也可以在頁擦除和頁寫操作之間完成。 通過電腦上的下載軟件將 *.HEX 文件傳輸?shù)?USB下載線板上的 ATmega8 芯片里,程序代碼在這里經(jīng)過處理后從固定的 IO 管腳中輸出燒寫到單片機(jī)的 Flash 存儲器中。此外單片機(jī)一般采用 5V以下的電源供電,USB 接口也采用 5V電源,所以,該下載線還可以通過電腦向單片機(jī)提供工作電源。下載線采用 接口技術(shù)解決了筆記本不帶并口的遺憾,此外下載線下載程序速度快等優(yōu)點(diǎn)得到了眾 多編程愛好者的青睞而被廣泛使用 。 . 串口調(diào)試 在單片機(jī)編程中,串口占了很重要的地位。傳統(tǒng)方式串口程序的調(diào)試,往往是利用專用的單片機(jī)硬件仿真器。在編寫好程序后,利用仿真器來設(shè)置斷點(diǎn),觀察變量和程序的流程,逐步對程序進(jìn)行調(diào)試,修正錯誤。 但是 很多仿真器不能做到完全硬件仿真,因而會造成仿真時正常,而實際運(yùn)行時出現(xiàn)錯誤的情況;也有仿真不能通過,但實際運(yùn)行正常的情況。對于一些較新的芯片或者是表面貼裝的芯片, 往往缺少 合適的仿真器或仿真頭 。 利用 Keil 軟件 可以 仿真更多的單片機(jī)功能 , 使用這種方法,無需任何硬件仿真器 ,甚至都不需要用戶電路板 ,可以 利用計算機(jī)的串口來模擬單片機(jī)的串口(這不同于很多軟件在仿真時使用的激勵文件方式,可以直接與其他串口進(jìn)行通信,更加方便、靈活)。 本次設(shè)計用到的晶振大小為 ,故需在目標(biāo)文件屬性里對晶振頻率進(jìn)行設(shè)置如下: 39 圖 21 Keil 仿真晶振設(shè)置 下面以發(fā)送添加用戶指令為例。首先按上述方法設(shè)置晶振,編譯程序,執(zhí)行“開始停止調(diào)試”,打開軟件工具欄外圍設(shè)備里的串口調(diào)試窗口,如下圖所示: 圖 22 串口調(diào)試窗口 然后單步運(yùn)行程序,第一次運(yùn)行到 while(TI==0)語句時,可看到窗口 SBUF一欄中數(shù)據(jù)由 0x00 變?yōu)?0xF5,即表示此時發(fā)送了 8 字節(jié)數(shù)據(jù)中的第一字節(jié)。因為發(fā)送完一個字節(jié)之后,單片機(jī)會自動將 TI 置 1 以表示幀發(fā)送結(jié)束,所以運(yùn)行到此步時需要手動將串口調(diào)試窗口中的 TI 選框標(biāo)記,而后由程序清零,以繼續(xù)執(zhí)行。 40 圖 23 程序單步執(zhí)行調(diào)試 為便于操作和觀測,在 Proteus 中進(jìn)行軟件仿真。發(fā)送添加 01 號用戶指令時,完整的命令數(shù)據(jù)應(yīng)該是: 0xF5, 0x01, 0x00, 0x01, 0x01, 0x00, 0x01, 0xF5。仿真電路如下: 圖 24 Proteus 仿真電路圖 執(zhí)行單步操作后,可得到波形圖和虛擬終端界面顯示數(shù)據(jù)分別如圖 25
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1