2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  基于微機(jī)原理簡(jiǎn)易數(shù)碼鎖的設(shè)計(jì)</p><p><b>  摘 要</b></p><p>  隨著電子技術(shù)的發(fā)展,計(jì)算機(jī)應(yīng)用技術(shù)起著越來越重要的作用。多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)、智能信息處理技術(shù)、自適用控制技術(shù)、數(shù)據(jù)挖掘與處理技術(shù)等都離不開計(jì)算機(jī)。本課程設(shè)計(jì)是基于微機(jī)原理與接口技術(shù)的簡(jiǎn)單應(yīng)用。運(yùn)用所學(xué)的微機(jī)原理和接口技術(shù)知識(shí)完成簡(jiǎn)易數(shù)碼鎖。</p

2、><p>  本課程設(shè)計(jì)以TDN 86/88微機(jī)系統(tǒng)教學(xué)實(shí)驗(yàn)箱為基礎(chǔ),以Intel 8255A芯片作為擴(kuò)展接口,連接密碼輸入電路、顯示電路、密碼確認(rèn)電路等,作為系統(tǒng)的硬件部分;以西安唐都科教儀器公司出版的《微機(jī)原理及應(yīng)用技術(shù)試驗(yàn)系統(tǒng)Wmd86》軟件4.0版為平臺(tái),以匯編語(yǔ)言為基礎(chǔ)編程,作為系統(tǒng)的軟件部分,實(shí)現(xiàn)了密碼輸入判斷、顯示機(jī)構(gòu)操作、修改密碼的功能設(shè)計(jì)。</p><p>  本課程設(shè)計(jì)的主

3、要目的是提高學(xué)生的實(shí)踐能力,包括提高匯編等語(yǔ)言的編程能力及對(duì)接口等硬件的理解分析能力和設(shè)計(jì)接口電路的能力,從而學(xué)以致用。只有通過實(shí)際編程和微機(jī)及接口的硬件實(shí)踐,才能真正掌握軟硬件設(shè)計(jì)的方法,從中得到收益和提高。</p><p><b>  目 錄</b></p><p>  前言…………………………………………………………………………………………·</

4、p><p>  第一章 數(shù)碼鎖的設(shè)計(jì)要求及方案························1</p><p>  1.1 初始條件·

5、3;····································&#

6、183;···········1</p><p>  1.2 設(shè)計(jì)要求 ···················&#

7、183;·····························1</p><p>  1.3 設(shè)計(jì)方案…………·

8、;····································

9、83;····1</p><p>  第二章 數(shù)碼鎖的硬件設(shè)計(jì)··························&

10、#183;················1</p><p>  2.1 硬件設(shè)計(jì)概述··············

11、····································

12、3;··1</p><p>  2.2 硬件框圖·····························

13、;·····························1</p><p>  2.3 硬件工作流程·

14、3;····································&#

15、183;··············2</p><p>  第三章 數(shù)碼鎖的軟件設(shè)計(jì)················

16、··············2</p><p>  3.1 主程序流程圖設(shè)計(jì)················

17、83;·······························2 </p><p>  3.2 驗(yàn)

18、證密碼程序設(shè)計(jì)···································

19、83;············3</p><p>  3.3 重設(shè)密碼程序設(shè)計(jì)··················

20、························4</p><p>  第四章 數(shù)碼鎖的安裝與調(diào)試······

21、83;·································4</p><p&

22、gt;  4.1 硬件調(diào)試··································&#

23、183;······················4</p><p>  4.2 軟件調(diào)試········

24、83;····································&

25、#183;···········4</p><p>  4.3 系統(tǒng)整體調(diào)試···················

26、·································5</p><p>

27、  第五章 設(shè)計(jì)體會(huì)與小結(jié)··································

28、83;··········6 </p><p>  附錄·····················

29、3;····································&#

30、183;··········7</p><p>  參考文獻(xiàn)·····················&

31、#183;·································9</p><

32、p><b>  前 言</b></p><p>  電子課程設(shè)計(jì)是電子技術(shù)學(xué)習(xí)中非常重要的一個(gè)環(huán)節(jié),是將理論知識(shí)和實(shí)踐能力相統(tǒng)一的一個(gè)環(huán)節(jié),是真正鍛煉學(xué)生能力的一個(gè)環(huán)節(jié)。只有通過實(shí)際的操作才能將理論知識(shí)運(yùn)用到實(shí)踐中來,才能真正的掌握所學(xué)知識(shí)。</p><p>  數(shù)碼鎖由于其保密性高,使用靈活性好;同時(shí)它的編碼量多、密碼可以根據(jù)需要隨時(shí)改變,這大大提高了安全性能

33、。數(shù)碼鎖的設(shè)計(jì)比較簡(jiǎn)單,僅利用一小塊存儲(chǔ)芯片,外加少量的控制電路,即可實(shí)現(xiàn)大量保密信息的存儲(chǔ)以及對(duì)信息安全的良好保障。因此它受到廣大用戶的青睞。</p><p>  本課程設(shè)計(jì)是利用現(xiàn)有的環(huán)境, 在基于Intel 8255A芯片的8086微機(jī)試驗(yàn)箱基礎(chǔ)上,探究簡(jiǎn)易密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)的方法。</p><p>  第一章 簡(jiǎn)易數(shù)碼鎖的設(shè)計(jì)要求及方案</p><p>&

34、lt;b>  1.1 初始條件</b></p><p>  1)運(yùn)用所學(xué)的微機(jī)原理和接口技術(shù)知識(shí);</p><p>  2)微機(jī)原理和接口技術(shù)實(shí)驗(yàn)室的實(shí)驗(yàn)箱設(shè)備。</p><p><b>  1.2 設(shè)計(jì)要求</b></p><p>  1)采用數(shù)字按鍵輸入,數(shù)碼為6位;</p>&l

35、t;p>  2)開機(jī)上電后系統(tǒng)自動(dòng)復(fù)位,處于準(zhǔn)備接收數(shù)碼的準(zhǔn)備狀態(tài);</p><p>  3)設(shè)置一只認(rèn)可鍵,每次輸入數(shù)碼后必須按認(rèn)可鍵。認(rèn)可鍵只承認(rèn)最后6位輸入數(shù)碼,若與本鎖規(guī)定數(shù)碼相符則使執(zhí)行機(jī)構(gòu)動(dòng)作;</p><p>  4)擴(kuò)展功能:可增加修改內(nèi)設(shè)密碼功能; </p><p><b>  1.3 方案設(shè)計(jì)</b></p&g

36、t;<p>  數(shù)碼鎖主要由8086系統(tǒng)及Intel 8255A可編程并行接口芯片和密碼輸入電路、顯示電路、密碼確認(rèn)電路這幾部分構(gòu)成。根據(jù)設(shè)計(jì)的功能和要求,編寫相應(yīng)的匯編程序,以支持整個(gè)系統(tǒng)的運(yùn)行,實(shí)現(xiàn)數(shù)碼鎖的功能。</p><p>  匯編程序只要可分為輸入密碼、判斷密碼、修改密碼這幾部分流程來編寫,以滿足整個(gè)數(shù)碼鎖的設(shè)計(jì)要求并完成相應(yīng)的功能.</p><p>  第二章

37、 數(shù)碼鎖的系統(tǒng)設(shè)計(jì)</p><p>  2.1 硬件設(shè)計(jì)概述</p><p>  硬件部分主要以8255芯片為主,用控制密碼輸入鍵()、 彩燈顯示(LED UNIT) , 在實(shí)驗(yàn)箱上模擬整個(gè)數(shù)碼鎖的工作流程。 </p><p><b>  2.2 硬件框圖</b></p><p><b>  硬件框圖如圖1&

38、lt;/b></p><p><b>  圖1 系統(tǒng)硬件框圖</b></p><p><b>  硬件工作流程</b></p><p>  首先對(duì)可編程器件進(jìn)行初始化操作,即對(duì)8255寫入方式控制字,配置I/O端口的輸入輸出方向。本系統(tǒng)選擇PA端口(60H)為輸入口,接收密碼輸入?yún)^(qū)的電平狀態(tài);選擇PB端口(61H)為

39、輸出口,控制彩燈的顯示。對(duì)8255的配置如表1所示,具體接法詳見附錄的系統(tǒng)硬件原理圖部分。</p><p>  表1 8255 I/O資源配置表</p><p>  按照系統(tǒng)硬件原理圖 和8255的配置連接好電路, 即可按照用戶操作流程,對(duì)8255進(jìn)行相應(yīng)的I/O端口操作即可</p><p>  第三章 簡(jiǎn)易數(shù)碼鎖的軟件設(shè)計(jì)</p><p&g

40、t;  3.1 主程序流程圖設(shè)計(jì)</p><p>  軟件設(shè)計(jì)的主要能夠輸入密碼并確認(rèn)每一次輸入的密碼是否有效,而且能夠保存每次輸入的密碼,接著讓最后6位輸入的密碼與正確密碼比較。由輸入密碼正確與否的判斷結(jié)果來引導(dǎo)下一步的動(dòng)作,并且可增加修改內(nèi)設(shè)密碼功能。</p><p>  系統(tǒng)的完整程序流程如下圖所示</p><p><b>  驗(yàn)證密碼程序設(shè)計(jì)&l

41、t;/b></p><p>  程序編譯加載后,開始后對(duì)8255初始化,此時(shí)系統(tǒng)就有一初始密碼,即可輸入已經(jīng)設(shè)置的密碼(本程序初始密碼:88H)。輸入的密碼以只承認(rèn)最后6位輸入數(shù)碼 。撥動(dòng)按鍵K2~K7,對(duì)應(yīng)的彩燈也會(huì)相應(yīng)的亮起,撥好密碼后,再撥動(dòng)按鍵K0, 若K2~K7六位密碼與初始密碼相同,則彩燈的綠燈全部亮,若密碼與初始密碼不同,則彩燈沒有變化。驗(yàn)證密碼流程圖如圖3</p><p&

42、gt;  圖 3 驗(yàn)證密碼流程圖</p><p>  3.3 重設(shè)密碼程序設(shè)計(jì)</p><p>  進(jìn)行重新設(shè)置密碼,首先撥動(dòng)K1鍵,此時(shí)K2~K7六位處于待設(shè)密碼狀態(tài),只要撥動(dòng)K2~K7按鍵就可以設(shè)置新密碼,設(shè)置好以后再次撥回K1,進(jìn)行新密碼的鎖存,此時(shí)新密碼已經(jīng)設(shè)置成功。若要再進(jìn)行解碼,按照驗(yàn)證密碼程序設(shè)計(jì)里的步驟即可。重設(shè)密碼流程如圖4</p><p>  

43、圖4 密碼重設(shè)流程圖</p><p>  第四章 數(shù)碼鎖的安裝與調(diào)試</p><p><b>  4.1 硬件調(diào)試</b></p><p><b>  1. 安裝</b></p><p>  上電前按電路設(shè)計(jì)連接實(shí)驗(yàn)箱電路,連接好實(shí)驗(yàn)箱與主機(jī)的線,并檢查是否有短路,再打開電源。</p>

44、;<p><b>  2. 調(diào)試</b></p><p>  在主機(jī)上安裝并運(yùn)行Wmd86,首先進(jìn)行端口測(cè)試,正常后即可編寫程序。在測(cè)試8255的輸出時(shí)發(fā)現(xiàn)8255工作不正常,其表面溫度過高,故更換8255芯片后方能正常工作。</p><p><b>  4.2 軟件調(diào)試</b></p><p>  按照

45、主程序流程進(jìn)行軟件的編寫,按照實(shí)際的硬件接口來編程,軟件編寫中的許多細(xì)節(jié)問題并不是在編寫程序的時(shí)候能夠檢查出來的,需要一步一步的調(diào)試,通過不斷的調(diào)試程序,加深了對(duì)匯編語(yǔ)言和硬件結(jié)構(gòu)的理解。</p><p>  軟件調(diào)試過程中遇到許多問題是不能通過硬件電路的現(xiàn)象來發(fā)現(xiàn)的,而通過win86的單步運(yùn)行能夠發(fā)現(xiàn)程序的走向,很直觀的查出問題的所在。比如,在程序運(yùn)行中不能看到堆棧中的內(nèi)容,而單步運(yùn)行就能很直觀的看的出來,方便

46、調(diào)試。編寫層序的時(shí)候遇到了一些問題,主要是對(duì)堆棧的概念和應(yīng)用上的認(rèn)識(shí)不太深刻。堆棧遵循“先入后出”的原則。對(duì)于本題中的認(rèn)可最后輸入的6位密碼</p><p>  的要求。必須利用堆棧的這一特點(diǎn)。將開關(guān)輸入的密碼依次壓入堆棧(記錄每次輸入的密碼),再出棧與原密碼逐次比較6次,遇到一個(gè)問題就是,每次只從堆棧彈出6位密碼,如果輸入密碼次數(shù)過多,前幾次的密碼沒有出棧,堆棧就會(huì)被占滿,導(dǎo)致程序無法正常運(yùn)行;或者前一次沒有清

47、空堆棧的數(shù)據(jù)在下一次運(yùn)行程序的時(shí)候被彈出,影響下一次的運(yùn)行結(jié)果。想到如此,就必須讓堆棧在每次程序運(yùn)行結(jié)束以后都要清空。</p><p>  由于代碼段的程序過長(zhǎng),導(dǎo)致代碼段的空間不夠用,往往使程序無法正常運(yùn)行。解決的辦法是使用call指令,利用將子程序壓入堆棧,用ret指令返回??梢怨?jié)省代碼段的空間。在調(diào)用的子程序中注意如果改變堆棧的入口地址的話需要在返回指令ret之前恢復(fù)原來調(diào)用此子程序是的入口地址,否則會(huì)使程

48、序混亂?;诖它c(diǎn),在編寫程序的時(shí)候只是將初始化,顯示等不改變堆棧地址的子程序壓入堆棧。</p><p><b>  系統(tǒng)整體調(diào)試</b></p><p>  整個(gè)系統(tǒng)在經(jīng)過軟硬件調(diào)試成功并正常加載程序運(yùn)行后即可按流程來調(diào)試。首先輸入原始密碼看能否解鎖,如果綠燈都亮則密碼正確。然后任意輸入幾組六位密碼看綠燈是否都亮,如果綠燈均不亮則初始密碼設(shè)置成功。然后檢測(cè)重置密碼功能

49、,先撥動(dòng)按鍵K1,進(jìn)入設(shè)置密碼狀態(tài),任意撥動(dòng)六位密碼,再撥回按鍵K1,將設(shè)置的密碼鎖存,之后輸入自己設(shè)置的密碼看能否解鎖,再多重復(fù)設(shè)置任意六位密碼,如果綠燈都亮,則重置密碼部分運(yùn)行正常。</p><p>  整個(gè)系統(tǒng)經(jīng)過完整的邏輯測(cè)試后沒有發(fā)現(xiàn)問題,整體調(diào)試結(jié)束。</p><p>  第五章 設(shè)計(jì)體會(huì)與小結(jié)</p><p>  剛確定做簡(jiǎn)易密碼鎖的課程設(shè)計(jì)任務(wù)時(shí),自

50、己真的是一頭霧水不知怎么下手,經(jīng)過進(jìn)圖書館、上網(wǎng)查資料自己了解到了許多,現(xiàn)在經(jīng)過一個(gè)星期的努力自己的數(shù)碼鎖已經(jīng)基本成型。但由于自己水平的有限,此設(shè)計(jì)任務(wù)仍有許多不足之處。</p><p>  這次課程設(shè)計(jì)并不是很難,主要的困難來自對(duì)程序的理解。功夫不負(fù)有心人,經(jīng)過我們組的合作和努力,我們最后對(duì)實(shí)驗(yàn)的原理有了清晰的認(rèn)識(shí)。雖然實(shí)驗(yàn)箱上的很多模塊單元沒有用到,但是就系統(tǒng)功能來說,我覺得我們做的還是不錯(cuò)的。這次課程設(shè)計(jì)

51、卻讓我們對(duì)實(shí)驗(yàn)箱有了足夠的了解,特別是8255A芯片;而且它還讓我們對(duì)自己動(dòng)手寫程序來控制實(shí)驗(yàn)箱的運(yùn)作有了一定的基礎(chǔ)。雖然實(shí)驗(yàn)箱只是一個(gè)小型的模擬平臺(tái),但是通過對(duì)它的學(xué)習(xí)和操作,我們對(duì)有關(guān)接口的知識(shí)將會(huì)有一個(gè)更廣泛的認(rèn)識(shí),而且它對(duì)我們以后的學(xué)習(xí)也會(huì)有幫助的。</p><p>  通過此次設(shè)計(jì),發(fā)現(xiàn)自己仍然還有許多不足之處,發(fā)現(xiàn)自己的知識(shí)是非常欠缺的,自己的動(dòng)手能力也不強(qiáng)。自己清醒的認(rèn)識(shí)到該怎么辦,自己應(yīng)該好好的反

52、省一下,該好好的投入學(xué)習(xí)中,多一點(diǎn)時(shí)間用在學(xué)習(xí)中,把所學(xué)知識(shí)都好好的掌握,并很好的利用。在以后的學(xué)習(xí)和生活中,自己多找機(jī)會(huì)鍛煉一下,使自己的動(dòng)手能力得以很大的提高。從而是自己各方面的能力得到很好的發(fā)展,為自己以后很好的工作打下堅(jiān)實(shí)的基礎(chǔ)。</p><p>  總之,這次課程設(shè)計(jì)對(duì)于我們有很大的幫助,通過課程設(shè)計(jì),我更加深入地理解了,微機(jī)原理課程上講到的多種芯片的功能,以及引腳的作用,同時(shí)加深了對(duì)于主要芯片的應(yīng)用的

53、認(rèn)識(shí),同時(shí)在試驗(yàn)室的環(huán)境里熟悉了匯編程序的編寫過程和運(yùn)行過程,并提高了自己的動(dòng)手能力。最后衷心的感謝老師的悉心指導(dǎo)。</p><p><b>  附 錄</b></p><p><b>  系統(tǒng)硬件電路圖</b></p><p><b>  系統(tǒng)程序源代碼</b></p><p&

54、gt;  DATA SEGMENT ;定義數(shù)據(jù)段</p><p>  BLOCK DB 0</p><p>  DATA ENDS</p><p>  CODE SEGMENT ;定義代碼段</p><p>  ASSUME CS:CODE, DS:DATA</p><p>  

55、START: MOV DX, 63H</p><p>  MOV AL, 90H ;設(shè)置8255A方式字</p><p>  OUT DX, AL ;8255A A口輸入,B口輸出</p><p>  MOV BLOCK, 088H ;設(shè)置初始密碼</p><p>  MOV BL

56、, 10H</p><p>  MAIN: MOV DX, 60H</p><p>  IN AL, DX ;讀取A口開關(guān)信息</p><p>  TEST AL, 02H ;判斷開關(guān)K1的狀態(tài)</p><p>  JZ K1 ;K1=0 轉(zhuǎn)移<

57、/p><p>  IN AL, 60H</p><p>  AND AL, 0FCH ;K1=1設(shè)置新密碼,A口高六位有效</p><p>  MOV BLOCK, AL ; 存儲(chǔ)新密碼</p><p><b>  NOT AL</b></p><p>  

58、OUT 61H, AL </p><p>  CALL DELAY</p><p><b>  JMP MAIN</b></p><p>  K1: IN AL, 60H</p><p>  TEST AL, 01H ;判斷開關(guān)K0的狀態(tài)</p><p>

59、  JNZ K0 ;K0=1 轉(zhuǎn)移</p><p>  IN AL, 60H ;K0=0 輸入密碼</p><p>  AND AL, 0FCH ;A口的低二位被屏蔽</p><p><b>  NOT AL</b></p><p>  

60、OUT 61H, AL</p><p>  CALL DELAY</p><p>  JMP MAIN</p><p>  K0: IN AL, 60H </p><p>  AND AL, 0FCH</p><p>  CMP BLOCK, AL ;輸入的密碼與存儲(chǔ)的密碼

61、相比較</p><p><b>  JA MAIN</b></p><p><b>  JB MAIN</b></p><p>  MOV AL, 0FH ;輸出顯示</p><p><b>  NOT AL</b></p><

62、p>  OUT 61H, AL</p><p>  CALL DELAY</p><p>  JMP MAIN</p><p>  DELAY PROC NEAR</p><p>  DELAY1: MOV CX, 10H ;循環(huán)延時(shí)</p><p>  DELAY2: LOOP

63、 DELAY2</p><p><b>  DEC BL</b></p><p>  JNZ DELAY1</p><p><b>  RET</b></p><p>  DELAY ENDP</p><p>  CODE ENDS</p>&

64、lt;p><b>  END START</b></p><p><b>  參 考 文 獻(xiàn)</b></p><p>  1 華中科技大學(xué)電子技術(shù)課程組編,康華光主編. 電子技術(shù)基礎(chǔ)(數(shù)字部分).第五版. 北京:高等教育出版社,2006</p><p>  2 李伯成編. 單片機(jī)及嵌入式系統(tǒng). 北京:清華大學(xué)

65、出版社,2005</p><p>  3. 《微機(jī)原理與接口技術(shù)》. 彭虎,周佩玲,傅忠謙 編. 第二版. 北京:電子工業(yè)出版社,2008;</p><p>  4. 《匯編語(yǔ)言程序設(shè)計(jì)》.程學(xué)先,林姍,程傳慧 編著. 北京:機(jī)械工業(yè)出版社,2009;</p><p>  5. 《微型計(jì)算機(jī)原理與接口技術(shù)》.王寧寧,張瑾,譚彥彬,陳鋮 編著.北京:國(guó)防工業(yè)出版

溫馨提示

  • 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論