999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機(jī)電子密碼鎖加密模塊的研究與設(shè)計(jì)

2012-07-26 04:57:16潘雪峰李臘元楊威棣
自動(dòng)化儀表 2012年5期
關(guān)鍵詞:單片機(jī)程序系統(tǒng)

潘雪峰 李臘元,2 楊威棣

(武漢生物工程學(xué)院計(jì)算機(jī)與信息工程系1,湖北 武漢 430415;武漢理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院2,湖北 武漢 430063)

0 引言

安全問題是現(xiàn)代社會(huì)各界普遍關(guān)注的焦點(diǎn)之一。目前,常見的安全產(chǎn)品有指紋識(shí)別系統(tǒng)、IC卡辨識(shí)系統(tǒng)以及紅外防盜系統(tǒng)等。這些系統(tǒng)一般用于保密要求較高或供個(gè)人使用的保險(xiǎn)箱(或保險(xiǎn)柜)。雖然產(chǎn)品的安全性高,但由于其生產(chǎn)成本高,攜帶、安裝及使用不方便等缺點(diǎn),在一定程度上限制了這類產(chǎn)品的普及和推廣[1-2]。針對(duì)這些缺點(diǎn),基于單片機(jī)的電子密碼鎖使用8051單片機(jī)來實(shí)現(xiàn)多功能密碼模塊。這種電路設(shè)計(jì)具有加密更快速、可靠性更高、成本更低的特點(diǎn),特別適用于家庭、辦公室、學(xué)生宿舍及賓館等場(chǎng)所,具有很強(qiáng)的社會(huì)推廣價(jià)值。

傳統(tǒng)電子密碼鎖的基本功能要求有:①一定的密碼位數(shù)與取值范圍,密碼位數(shù)決定鎖體健壯程度;②用戶自行設(shè)定和修改密碼;③按鍵時(shí)有相應(yīng)提示,若輸入的開鎖密碼不正確,則需另行處理;④開鎖密碼錯(cuò)誤次數(shù)超過限制則報(bào)警;⑤鍵入正確開鎖密碼后開鎖;⑥硬件成本低廉,軟件簡(jiǎn)潔可靠,易于批量生產(chǎn)。

智能電子鎖的功能擴(kuò)展要求有:①功能多樣化;②計(jì)算機(jī)及網(wǎng)絡(luò)通信擴(kuò)展智能電子鎖的功能;③與智能現(xiàn)場(chǎng)儀器和中央監(jiān)控系統(tǒng)連接;④模塊高度集成,結(jié)構(gòu)簡(jiǎn)單可靠,操作方便;⑤人機(jī)界面智能化、友善化;⑥智能識(shí)別系統(tǒng),擴(kuò)展信號(hào)提取技術(shù)[3-5]。

本設(shè)計(jì)基于單片機(jī)實(shí)現(xiàn)傳統(tǒng)電子密碼鎖基本功能,并引入嵌入式技術(shù),減少了電子密碼鎖外圍元器件,硬件電路簡(jiǎn)單;以C語言進(jìn)行程序設(shè)計(jì),簡(jiǎn)化了源程序結(jié)構(gòu)及代碼,降低了ROM空間的占用。

1 方案分析與設(shè)計(jì)

1.1 芯片的選擇

中央處理單元采用Intel 8051,其具有4個(gè)8位準(zhǔn)雙向I/O口,只需1個(gè)晶振和2個(gè)電容即可工作。其結(jié)構(gòu)簡(jiǎn)單、運(yùn)行可靠[6-8]。Intel 8051內(nèi)置4 kB的程序ROM以及128 B的數(shù)據(jù)RAM[9-10]。為了降低成本,沒有外接存儲(chǔ)器,而是直接使用片內(nèi)的存儲(chǔ)空間。由于鍵盤輸入密碼采用的是中斷方式,因而采用74LS21四輸入與非門作為單片機(jī)的中斷源。

1.2 功能設(shè)計(jì)

用戶通過矩陣式鍵盤中斷輸入密碼,中斷后系統(tǒng)調(diào)用密碼驗(yàn)證函數(shù)。如果密碼輸入正確,單片機(jī)輸出開鎖信號(hào)開鎖。同時(shí),實(shí)現(xiàn)鍵盤的中斷控制還要為鍵盤的擴(kuò)展功能留出CPU時(shí)間。當(dāng)用戶發(fā)現(xiàn)輸入錯(cuò)誤時(shí),可以清除重新輸入。此外,當(dāng)密碼輸入后,可通過驗(yàn)證程序進(jìn)行判斷。如果密碼錯(cuò)誤,則啟動(dòng)出錯(cuò)提示。當(dāng)密碼錯(cuò)誤次數(shù)達(dá)到一定次數(shù),系統(tǒng)將鎖定鍵盤,一段時(shí)間內(nèi)禁止輸入。

1.3 結(jié)構(gòu)設(shè)計(jì)

1.3.1 單片機(jī)引腳的分配

在進(jìn)行數(shù)據(jù)交換時(shí),基于單片機(jī)的電子密碼鎖采用的是 Intel 8051 的4 個(gè)8 位 I/O 口,其中 P2.0~ P2.4作為掃描的輸入輸出口使用,而P3.2則作為輸出口使用。

1.3.2 存儲(chǔ)分配

用戶通過鍵盤進(jìn)行輸入,需要為鍵盤分配一個(gè)用來存儲(chǔ)鍵入數(shù)據(jù)的緩沖區(qū)。由于密碼位數(shù)一般在10位以內(nèi),因此,分配10 B給該緩沖區(qū)。

在進(jìn)行密碼驗(yàn)證過程中,需要使用密碼表來存放密碼,因此,分配一個(gè)256 B的密碼表并存放在code區(qū),同時(shí),code區(qū)用來存代碼。

1.3.3 電路設(shè)計(jì)

Intel 8051通過8根數(shù)據(jù)線直接與鍵盤連接,其中4根作為行掃描線,掃描輸入高電平;另外4根與8051直接連接的是列掃描線,列掃描輸出線置低電平。當(dāng)鍵盤按下時(shí),將在中斷輸入產(chǎn)生一個(gè)上升沿的跳變,觸發(fā)中斷進(jìn)入中斷處理程序。該信號(hào)通過四輸入與門發(fā)送給8051。8051電子密碼鎖原理如圖1所示。

圖1 8051電子密碼鎖原理圖Fig.1 Principle schematic of 8051 electronic cryptogram lock

2 系統(tǒng)程序模塊設(shè)計(jì)

目前,國(guó)內(nèi)使用較多的是Hi-Tech的Hi-Tech PICC編譯器,且目前的單片機(jī)仿真器也支持Hi-Tech PICC編譯格式。因此,本文采用Hi-Tech C編譯器的格式編寫程序模塊。

程序模塊包括鍵盤接收模塊、加密模塊和驗(yàn)證密碼模塊這3部分。在功能模塊之前,還要加上密碼格式定義的內(nèi)容。該內(nèi)容用于對(duì)密碼的長(zhǎng)度和格式類型進(jìn)行定義。密碼長(zhǎng)度定義為10,類型定義為unsigned char。

2.1 鍵盤接收模塊

鍵盤接收模塊由兩個(gè)程序組成,分別是中斷例程和讀取鍵盤鍵值程序。中斷例程是一個(gè)中斷服務(wù)程序。該程序可記錄下按鍵次數(shù);讀取鍵盤程序則是將輸入的鍵值記錄下來。

2.1.1 中斷例程

中斷例程的主要功能是當(dāng)按下鍵盤任意一按鍵時(shí)產(chǎn)生中斷,此時(shí)執(zhí)行中斷程序aa(void)。該程序首先將外部中斷位清0,然后調(diào)用讀取鍵值的程序readbyte(),記錄下按鍵次數(shù),并判斷相應(yīng)位數(shù)是否為10,最后將外部中斷位置1。程序代碼如下。

2.1.2 讀取鍵盤鍵值程序

讀取鍵盤鍵值程序的主要功能是根據(jù)單片機(jī)P2口相應(yīng)引腳電平的變化情況,返回一個(gè)相應(yīng)的鍵值。其程序代碼如下。

2.2 加密模塊代碼

加密模塊首先獲取系統(tǒng)時(shí)間,然后借助系統(tǒng)時(shí)間產(chǎn)生隨機(jī)數(shù),通過循環(huán)初始化生成一個(gè)密碼矩陣。接著,程序會(huì)打開一個(gè)文件,如果文件成功打開,則將矩陣寫入該文件中;如果文件無法打開,則返回。在將矩陣寫入文件時(shí),先寫入數(shù)組頭;然后格式化數(shù)組串,將矩陣分行寫入文件,每行尾部加上換行,寫入最后一個(gè)文件并加上數(shù)組結(jié)尾;加密模塊最后給出關(guān)閉文件句柄,并將寫好的文件關(guān)閉。其程序代碼如下。

2.3 驗(yàn)證密碼模塊

在進(jìn)行密碼驗(yàn)證的過程中,主要是核對(duì)輸入的信息和存儲(chǔ)的信息是否一致,在此使用scanf_s()函數(shù)進(jìn)行驗(yàn)證。如果信息一致,即給出密碼驗(yàn)證成功的提示;如果不一致,則給出相應(yīng)編號(hào)。其程序代碼如下。

3 仿真測(cè)試

常用的電路仿真軟件有Multisim、Protel、Proteus、Pspice這4種。由于Mulstisim在模擬器件和一些分離器件的仿真方面功能較強(qiáng),因此,在電路仿真測(cè)試中選用的是 Multisim 11.0。

使用Multisim 11.0時(shí),可以借助特殊功能寄存器窗口對(duì)寄存器進(jìn)行監(jiān)控,同時(shí)還可以借助IRAM窗口對(duì)變量進(jìn)行跟蹤。通過仿真測(cè)試,可觀測(cè)到flag變量地址為20H,值為0H。由于密碼長(zhǎng)度被定義為10,因此用戶鍵盤的緩沖區(qū)的地址范圍為10 B,地址是從21H到2AH。在未按下任何按鍵時(shí),該緩沖區(qū)的值均為0。

在鍵盤上按下預(yù)定的10位密碼后,中斷程序即進(jìn)行響應(yīng),并執(zhí)行讀鍵程序和判斷程序;驗(yàn)證正確后,在開鎖控制端給出高電平。為了使試驗(yàn)更直觀,在開鎖控制端接一個(gè)燈泡,根據(jù)燈泡是否發(fā)光來判斷試驗(yàn)是否成功。

在仿真測(cè)試的過程中,當(dāng)按鍵符合預(yù)設(shè)時(shí),燈泡變亮,同時(shí)緩存區(qū)的數(shù)據(jù)顯示為11H,并將緩存區(qū)指針復(fù)位,測(cè)試結(jié)果與設(shè)計(jì)相符。

在完成系統(tǒng)功能測(cè)試的同時(shí),在密碼輸入過程中對(duì)密碼驗(yàn)證模塊進(jìn)行了測(cè)試,使用6組不同的十六進(jìn)制值來測(cè)試相應(yīng)單元,測(cè)試值分別為 12h、34h、01h、bfh、21h和1dh。這6組不同的值,在仿真測(cè)試中均可以生成密碼,并能夠?qū)Ⅱ?yàn)證密碼模塊中的提示“密碼驗(yàn)證成功!”逐個(gè)顯示。這就說明模塊完成了編譯運(yùn)行工作[11-15]。

4 結(jié)束語

為降低密碼鎖的成本,設(shè)計(jì)了基于8051單片機(jī)的密碼鎖加密模塊。由于該模塊具有8位操作數(shù),故能夠十分方便地移植到8位的8051上并高速、正確運(yùn)行。同時(shí),該系統(tǒng)模塊中的程序簡(jiǎn)短,不需額外的存儲(chǔ)器來存放程序,為整個(gè)系統(tǒng)節(jié)省了成本。

[1]鄭詩(shī)程,朱虹,武衛(wèi)華.FPGA與AVR單片機(jī)的通訊與智能監(jiān)控系統(tǒng)研究[J].自動(dòng)化與儀表,2009,44(11):13-17.

[2]周功明.基于AT89C2051單片機(jī)的防盜自動(dòng)報(bào)警電子密碼鎖系統(tǒng)的設(shè)計(jì)[J].綿陽(yáng)師范學(xué)院學(xué)報(bào),2007(5):112-115.

[3]郭海英.基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2005,28(13):95-97.

[4]魏學(xué)海.基于MULTISIM10的單片機(jī)系統(tǒng)仿真研究[J].計(jì)算機(jī)仿真,2010,27(1):246-248.

[5]曹建國(guó),王威,王丹.基于VHDL語言的電子密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)[J].沈陽(yáng)大學(xué)學(xué)報(bào),2006,18(4):77-79.

[6]潘永雄.單片機(jī)控制程序加密策略探索與應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(11):2466-3469.

[7]劉振海.一種基于單片機(jī)和串行E2PROM的智能密碼鎖[J].微計(jì)算機(jī)信息,2007,23(35):133-134.

[8]楊亭.單片機(jī)C51程序功能設(shè)計(jì)教程與實(shí)驗(yàn)[M].北京:北京航空航天大學(xué)出版社,2004:99-109.

[9]王幸之,王雷,鐘愛琴,等.單片機(jī)應(yīng)用系統(tǒng)電磁干擾與抗干擾技術(shù)[M].北京:北京航空航天大學(xué)出版社,2006:88-99.

[10]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1992:42-47.

[11]沈建華,楊艷琴.MSP430系列16位超低功耗單片機(jī)實(shí)踐與系統(tǒng)設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005:2-10.

[12]胡大可.MSP430系列單片機(jī)C語言程序設(shè)計(jì)與開發(fā)[M].北京:北京航空航天大學(xué)出版社,2003:2-5.

[13]錢峰.EZ-USB FX2單片機(jī)原理、編程及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006:20-27.

[14]吳振宇,常玉保,馮林.基于FPGA和USB2.0的高速數(shù)據(jù)采集系統(tǒng)[J].儀器儀表學(xué)報(bào),2006,27(z1):1-3.

[15]謝運(yùn)祥,歐陽(yáng)森.電力電子單片機(jī)控制技術(shù)[M].北京:機(jī)械工業(yè)出版社,2007.

猜你喜歡
單片機(jī)程序系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
主站蜘蛛池模板: 国产精品hd在线播放| 天天色综网| 中文字幕一区二区人妻电影| 91视频首页| 国产一二视频| aⅴ免费在线观看| 99国产在线视频| 国产人妖视频一区在线观看| 一本大道香蕉中文日本不卡高清二区| 国产一区二区三区视频| 午夜日本永久乱码免费播放片| 精品免费在线视频| 国产欧美视频一区二区三区| 日本一区二区三区精品国产| 99视频精品在线观看| 伊大人香蕉久久网欧美| 欧美色99| 99无码中文字幕视频| 伊人久久精品无码麻豆精品| 三级毛片在线播放| 亚洲美女一级毛片| 国产精品制服| 国产成人av大片在线播放| 尤物亚洲最大AV无码网站| 呦女精品网站| 五月天久久综合| 91久久精品国产| 欧美成人精品在线| 激情在线网| a毛片基地免费大全| 九九久久精品国产av片囯产区| 国产欧美日韩va| 免费一级无码在线网站| 真实国产乱子伦高清| 免费看av在线网站网址| 亚洲日韩在线满18点击进入| 欧美不卡视频在线观看| 九九热这里只有国产精品| 东京热av无码电影一区二区| 欧美精品导航| 高清视频一区| 伊人中文网| 亚洲欧美在线综合图区| 人妻一区二区三区无码精品一区| 波多野结衣在线一区二区| 亚洲国产精品久久久久秋霞影院| 久久香蕉欧美精品| 尤物特级无码毛片免费| 国产中文一区二区苍井空| 国产综合网站| 国产精品开放后亚洲| 2024av在线无码中文最新| 国产小视频在线高清播放| 少妇极品熟妇人妻专区视频| 六月婷婷综合| 国产网站一区二区三区| 国产在线专区| 午夜a级毛片| 青草视频久久| 日韩国产精品无码一区二区三区 | 蜜桃视频一区| 久久久精品无码一区二区三区| 婷婷丁香在线观看| 中文字幕欧美成人免费| 日本精品中文字幕在线不卡| 欧洲精品视频在线观看| 国产网站黄| 狠狠亚洲五月天| 国产人成午夜免费看| 午夜日b视频| 国内精品一区二区在线观看| 嫩草国产在线| 国产精品久久久久久久久kt| 久草性视频| 不卡无码网| 国产成人综合在线观看| 欧美日韩国产综合视频在线观看| 国产精品尹人在线观看| 亚洲成人播放| 色九九视频| 男女男免费视频网站国产| 国产午夜在线观看视频|