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

下載本文檔

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

文檔簡介

1、<p>  《單片機技術(shù)》課程設(shè)計說明書</p><p><b>  密碼鎖</b></p><p>  系 、 部: 電氣與信息工程系 </p><p>  學生姓名: </p><p>  指導教師: 職稱 副教授</p><p>  專 業(yè):

2、 自動化 </p><p>  班 級: </p><p>  完成時間: 2012年1月1日 </p><p><b>  摘 要</b></p><p>  隨著科技的日益發(fā)展,針對傳統(tǒng)機械鎖安全性能低,需隨身攜帶且易丟失鑰匙和出現(xiàn)故障的缺點,另外隨著經(jīng)濟技術(shù)的發(fā)

3、展和人們對生活水平的提高,電子密碼鎖控制系統(tǒng)已經(jīng)越來越符合人們的要求,本文設(shè)計了一種使用單片機實現(xiàn)的電子密碼鎖。</p><p>  該密碼鎖采用AT89S52作為主控芯片和數(shù)據(jù)存儲單元,結(jié)合外圍的矩陣式鍵盤輸入 、LCD液晶顯示 、報警等,用C語言編寫主控芯片與EEPROM讀寫程序相結(jié)合,設(shè)計了一個可以多次修改密碼,并且具有報警功能的電子密碼鎖控制系統(tǒng)。</p><p>  關(guān)鍵詞 :

4、 密碼鎖;AT89S52;AT24C02 </p><p><b>  ABSTRACT</b></p><p>  Along with the development of science and technology,in view of the traditional mechanical lock security low,need to carry and

5、 easy lost key and failure shortcomings,in addition with economic technical development and people to the improvement of living standard requirements,electronic combination lock control system has been more and more acco

6、rd with the requirement of people,this paper introduces a design using microcomputer electronic combination lock.</p><p>  This electronic lock adopts the monolithic integrated circuit AT89S52 as the master

7、chip and data storage locations,combines with the matrix keyboard input,liquid crystal display,alarm,written in C contro chip with an EEPROM literacy programs combining,design of a password,an can be changed several time

8、s with alarm function of electronic combination lock control system.</p><p>  Key words trick lock;at89s52;at24c02</p><p><b>  目 錄</b></p><p>  1 系統(tǒng)總體設(shè)計方案1</p>

9、<p>  1.1 設(shè)計課題任務(wù)1</p><p>  1.2 功能要求說明1</p><p>  1.3 設(shè)計課題總體方案介紹及工作原理說明1</p><p>  2 硬件系統(tǒng)的設(shè)計2</p><p>  2.1 硬件系統(tǒng)各模塊功能簡要介紹2</p><p>  2.1.1 AT8

10、9S52控制模塊2</p><p>  2.1.2 鍵盤模塊2</p><p>  2.1.3 時鐘信號模塊2</p><p>  2.1.4 復(fù)位模塊2</p><p>  2.1.5 掉電存儲模塊2</p><p>  2.1.6 報警模塊2</p><p>  2.1

11、.7 LCD顯示模塊2</p><p>  2.1.8 下載電路模塊3</p><p>  2.2 系統(tǒng)電路原理、PCB圖、元器件布局圖3</p><p>  2.3 系統(tǒng)元器件清單3</p><p>  3 軟件系統(tǒng)的設(shè)計4</p><p>  3.1 使用單片機資源的介紹4</p>

12、;<p>  3.2 軟件系統(tǒng)各模塊功能簡要介紹4</p><p>  3.2.1 液晶顯示模塊4</p><p>  3.2.2 AT24C02讀寫模塊4</p><p>  3.3 軟件系統(tǒng)程序流程框圖4</p><p>  3.4 軟件系統(tǒng)程序清單5</p><p>  4 系

13、統(tǒng)仿真分析及結(jié)論6</p><p>  4.1 系統(tǒng)使用說明6</p><p>  4.2 系統(tǒng)實物仿真結(jié)果6</p><p>  4.3 系統(tǒng)誤差分析7</p><p>  4.4 設(shè)計體會7</p><p><b>  結(jié)束語8</b></p><p&g

14、t;<b>  致 謝9</b></p><p><b>  參考文獻 10</b></p><p>  附 錄 A 11</p><p>  附 錄 B 12</p><p>  附 錄 C 13</p><p>  附 錄 D 14</

15、p><p>  1 系統(tǒng)總體設(shè)計方案</p><p>  1.1 設(shè)計課題任務(wù) </p><p>  設(shè)計一個具有特定功能的密碼鎖。</p><p>  1.2 功能要求說明</p><p>  該密碼鎖具有上電或按鍵復(fù)位后能自動顯示系統(tǒng)提示符“P.”, 進入準備工作狀態(tài)。該密碼鎖具有系統(tǒng)原始密碼888888,用戶可

16、以設(shè)定并存儲用戶密碼,密碼輸入時應(yīng)處于保密顯示狀態(tài),密碼輸入正確時應(yīng)顯示密碼輸入正確提示信息,否則,顯示密碼輸入錯誤提示信息,一旦遺忘密碼只能通過輸入“超級密碼”123456才能解鎖。</p><p>  1.3 設(shè)計課題總體方案介紹及工作原理說明</p><p>  該課題是以單片機AT89S52作為本次設(shè)計的核心元件,利用單片機靈活的編程設(shè)計和豐富的IO端口,及其控制的準確性,實現(xiàn)基

17、本的密碼控制功能。在單片機的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制,外接FYD12864-0402B液晶顯示器用于輸出顯示。</p><p>  本設(shè)計主要由單片機、矩陣行列式鍵盤、液晶顯示器和密碼存儲等部分組成。其中矩陣式鍵盤用于輸入數(shù)字密碼和進行各種功能的實現(xiàn)。由用戶通過連接單片機的矩陣式鍵盤輸入密碼,然后經(jīng)過單片機對用戶輸入的密碼與自己保存的密碼進行對比,從而判斷密碼是否正確。</p>

18、;<p>  系統(tǒng)一共有兩部分組成,硬件電路和軟件部分。其中硬件部分由鍵盤輸入部分、復(fù)位電路、晶振部分、報警部分組成,軟件部分主要有主程序、初始化程序、液晶顯示程序、鍵掃程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫程序、延時程序等組成。其原理框圖如圖1所示。</p><p>  圖1 系統(tǒng)原理框圖</p><p>  2 硬件系統(tǒng)的設(shè)計</p><

19、p>  2.1 硬件系統(tǒng)各模塊功能簡要介紹</p><p>  2.1.1 AT89S52控制模塊</p><p>  AT89S52是種低功耗、高性能COMS8位微控制器,具有4K可編程Flash存儲器,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。掉電模式下,RAM內(nèi)容被保存,單片機停止一切工作,直到下一個中斷或硬件復(fù)位為止。</p><p>  2.1.2

20、 鍵盤模塊</p><p>  根據(jù)系統(tǒng)的基本要求,密碼的輸入和修改要求具有修改和設(shè)定等功能,所以采用4*4矩陣式鍵盤接在AT89S52單片機的接口非常方便,同時相對于獨立式鍵盤大大節(jié)省了資源,在軟件的設(shè)計時帶來了極大的方便,使程序簡化。</p><p>  2.1.3 時鐘信號模塊</p><p>  單片機工作所需的同步時鐘信號可以有兩種方法獲得:由單片機內(nèi)

21、部時鐘電路結(jié)合外部晶振、電容產(chǎn)生和直接從單片機外部引入脈沖信號。我采用的是第一種方法產(chǎn)生時鐘信號。電路用12MHz的石英晶體和兩個33pF的微調(diào)電容連接起來接到單片機的XTAL1和XTAL2引腳上。</p><p>  2.1.4 復(fù)位模塊</p><p>  復(fù)位是單片機的硬件初始化操作。經(jīng)復(fù)位操作后,單片機系統(tǒng)才能開始正常工作。單片機上有復(fù)位引腳RST,用于外接復(fù)位電路,這里的復(fù)位電

22、路采用按鍵電平復(fù)位。</p><p>  2.1.5 掉電存儲模塊</p><p>  此次設(shè)計采用的是掉電存儲模塊AT24C02作為密碼存儲芯片。具有工作電壓,擦寫次數(shù)多,寫入速度快,抗干擾能力強,數(shù)據(jù)不易丟失,體積小等優(yōu)點。并且采用I²C總線進行數(shù)據(jù)的讀寫串行操作,只占用很少的資源和I/0口線。</p><p>  2.1.6 報警模塊</p

23、><p>  電子密碼鎖的另外一個功能要求是在輸入密碼錯誤時要發(fā)出報警,利用蜂鳴器來實現(xiàn),具有電路結(jié)構(gòu)非常簡單,控制方便等優(yōu)點。</p><p>  2.1.7 LCD顯示模塊</p><p>  顯示模塊要具有顯示輸入密碼,修改密碼的信息準確性,綜合以上要求我選擇FYD12864-0402B液晶作為顯示的器件。</p><p>  2.1.8

24、 下載電路模塊</p><p>  下載電路用于連接單片機內(nèi)部電路,將程序下載到硬件電路中實現(xiàn)功能。</p><p>  2.2 系統(tǒng)電路原理、PCB圖、元器件布局圖</p><p>  系統(tǒng)電路原理圖、PCB圖、元器件布局圖分別見附錄A、B、C。</p><p>  2.3 系統(tǒng)元器件清單</p><p>  

25、系統(tǒng)中所用到的元器件清單如表1所示。</p><p>  表1 系統(tǒng)元器件清單</p><p>  3 軟件系統(tǒng)的設(shè)計</p><p>  3.1 使用單片機資源的介紹</p><p>  此次設(shè)計主要使用了單片機的P0口和P1口,以及其他若干口線。P0口是單片機與液晶通訊的數(shù)據(jù)口線,P1口主要是用于鍵盤電路的擴展,P3.3、P3.4分

26、別接24C02的SCL、SDA,P3.7接蜂鳴器。</p><p>  3.2 軟件系統(tǒng)各模塊功能簡要介紹</p><p>  3.2.1 液晶顯示模塊</p><p>  液晶顯示的程序中,將液晶的系統(tǒng)設(shè)置,初始化程序?qū)懗勺映绦?,等?0ms,顯示開關(guān)控制初始化,然后調(diào)用void lcd_set 和oid lcd_clear,再調(diào)用顯示子程序就可以在液晶顯示器

27、上顯示所需的內(nèi)容。</p><p>  3.2.2 AT24C02讀寫模塊</p><p>  AT24C02子程序包括從AT24C02中讀取信息和將信息寫入AT24C02,當單片機需要從AT24C02中讀出數(shù)據(jù)和寫入數(shù)據(jù)時只需要調(diào)用相應(yīng)的子程序。</p><p>  3.3 軟件系統(tǒng)程序流程框圖</p><p>  本系統(tǒng)軟件設(shè)計有主程

28、序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設(shè)置程序、AT24C02讀寫程序和延時程序等組成。</p><p>  軟件系統(tǒng)的總體流程框圖如圖2所示,鍵掃和顯示程序流程框圖分別如圖3、圖4所示。</p><p>  圖2 總體流程框圖</p><p>  圖3 鍵掃流程框圖 圖4 顯示流程框圖&l

29、t;/p><p>  3.4 軟件系統(tǒng)程序清單</p><p>  軟件系統(tǒng)程序清單見附錄D。</p><p>  4 系統(tǒng)仿真分析及結(jié)論</p><p>  4.1 系統(tǒng)使用說明</p><p>  在系統(tǒng)上電后系統(tǒng)顯示P.等待系統(tǒng)初始化,然后輸入密碼,在輸入正確的密碼后,按下E鍵確認,密碼鎖就可以打開了,若是連續(xù)

30、三次輸入密碼錯誤,在三秒后系統(tǒng)會自動進入超級密碼輸入模式,通過輸入超級密碼也可以打開密碼鎖。密碼鎖成功打開后,可以按2鍵進入密碼修改模式,在輸入原始密碼正確后才可以修改密碼,通過兩次的密碼確認之后,就能產(chǎn)生新的密碼了。</p><p>  4.2 系統(tǒng)實物仿真結(jié)果</p><p>  系統(tǒng)最終顯示的結(jié)果如下列各圖所示,其中圖5是系統(tǒng)上電后顯示的主界面圖,圖6是密碼輸入錯誤三次時的液晶顯示

31、圖,圖7是修改密碼時再次輸入密碼的液晶顯示圖。</p><p>  圖5 主界面顯示圖 圖6 密碼輸入錯誤三次顯示圖</p><p>  圖7 修改密碼再次輸入顯示圖</p><p>  4.3 系統(tǒng)誤差分析</p><p>  在調(diào)試過程中遇到了AT24C02讀取錯誤,就是不能用初始密碼打開

32、密碼鎖,這主要是沒能把初始密碼寫進AT24C02中或者是沒能把AT24C02中的內(nèi)容初始化即把AT24C02清0,最終導致不能用初始密碼解鎖。</p><p><b>  4.4 設(shè)計體會</b></p><p>  通過本次的程設(shè)計,讓我了解到智能化技術(shù)對當今人們生活的重要性。同時讓我知道做任何事情都應(yīng)腳踏實地,刻苦努力地去做。只有這樣,才能做好。在這次課程設(shè)計中

33、,我既鞏固了專業(yè)知識,又學到了在設(shè)計過程中的許多流程和該注意的事項,增強了電子產(chǎn)品開發(fā)的意識。從中學習到如何去思考和解決問題,以及如何靈活地改變方法去實現(xiàn)設(shè)計方案;特別是深刻體會到的是軟件和硬件結(jié)合的重要性,以及兩者的聯(lián)系和配合作用。此次經(jīng)歷將是我在大學時期很好的一次實踐和鍛煉機會。</p><p><b>  結(jié)束語</b></p><p>  本次課程設(shè)計可以說基

34、本上完成了所要求的功能要求,密碼鎖的課程設(shè)計到此結(jié)束,要做好本次課程設(shè)計首先就要搞懂密碼鎖的原理,此外其他每個部分電路也相當重要,首先要構(gòu)建設(shè)計電路的總體框架然后再分細節(jié)去解決,明確自己要做什么、怎么做。怎么才能利用我們設(shè)計的電路板,怎么去網(wǎng)上查找自己需要的資料,要學會怎么去學習自己上課沒有學過的東西,將理論與實踐相結(jié)合起來。在編寫程序時要學會怎么去查找錯誤,其實就是的通過不斷的調(diào)試,使其最終功能達到我們想要的結(jié)果,還有就是編寫程序時需

35、要耐心,不要愁程序多長,其實很長的程序也是一個個子程序組成的,把每段程序功能加起來就能達到我們所需要的功能要求。</p><p>  總而言之,通過本次課程設(shè)計,我掌握了密碼鎖的設(shè)計原理,積累了一些寶貴的經(jīng)驗,為以后的深入學習打下了一定的基礎(chǔ)。</p><p><b>  致 謝</b></p><p>  非常感謝學校給我們提供這次課程設(shè)計

36、的機會,通過這次課程設(shè)計,讓我意識到理論結(jié)合實際的重要性,同時也提升了我各方面的動手能力。在此首先要感謝的就是我們的xx老師,感謝他一個學期以來對我們的悉心教育和教導,不僅讓我們學習了課本知識,還讓我們學習了除課堂上以外的很多東西,若不是他的這些教導,我們的課程設(shè)計也不可能這么順利的完成。</p><p>  在此次課程設(shè)計的進展中,我也得到了很多同學的幫助,若不是得到他們的幫助,我將難以解決在課程設(shè)計過程中所遇

37、到的諸多問題。所以在此我也要對那些給與我?guī)椭拿恳粋€人表示衷心的感謝!</p><p><b>  參考文獻</b></p><p>  [1]李廣弟.單片機基礎(chǔ)[M].北京:北京航空航天大學出版社,2007</p><p>  Li Guangdi.microcontroller based[M]. Beijing: Beijing Aero

38、space University press, 2007</p><p>  [2]馬忠梅.單片機的C語言應(yīng)用程序設(shè)計[M],北京:北京航空航天大學出版社2007.219 ~228</p><p>  Ma zhongmei.SCM C language program design[M],Beijing: Beijing Aerospace University press, 2007.

39、219~228</p><p>  [3]張洪潤,蘭清華.單片機應(yīng)用技術(shù)教程[M].北京:清華大學出版社,1997</p><p>  Zhang Hongrun,Lan Qinghua.Microcomputer application technology tutorial [M].Beijing:Tsinghua University press, 1997</p>&

40、lt;p>  [4]李華.MCS-51系列單片機實用接口技術(shù)[M].北京:北京航空航天大學出版社,1993</p><p>  Li Hua.MCS-51 series MCU interface technology and practical [M].Beijing:Beijing Aerospace University press, 1993</p><p><b&g

41、t;  附 錄A</b></p><p>  圖A1 系統(tǒng)原理電路圖</p><p><b>  附 錄B</b></p><p>  圖B1 PCB頂層圖</p><p>  圖B2 PCB底層圖</p><p><b>  附 錄C</b><

42、/p><p>  圖C1 元器件布局圖</p><p><b>  附 錄D </b></p><p>  /***************************************************************</p><p>  *項目名稱:密碼鎖的設(shè)計 *&

43、lt;/p><p>  *設(shè)計者: 何德旅 *</p><p>  *設(shè)計日期:2011年12月22日 *</p><p>  *根據(jù)液晶的提示便能進行相應(yīng)的操作,其中鍵盤的E鍵為確認鍵, *</p><p>  *輸入密碼后都要按確認鍵才能確認,密碼長度為6

44、位。 *</p><p>  *初始密碼為888888,超級密碼為123456。 *</p><p>  *P1口作為鍵盤的輸入接口,P3.3﹑P3.4分別接24C02的SCL,SDA引腳。*</p><p>  /*********************************************************

45、******/</p><p>  #include<reg52.h></p><p>  #include<intrins.h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>

46、  #define Ta 500 //unsigned int</p><p>  #defineOP_READ0xa1// 器件地址以及讀取操作</p><p>  #defineOP_WRITE 0xa0// 器件地址以及寫入操作</p><p>  #defineMAX_ADDR 0x7f// AT24C02最大

47、地址</p><p>  sbit SDA = P3^4;</p><p>  sbit SCL = P3^3;</p><p>  sbit LE=P3^6;</p><p>  sbit rs = P3^0;</p><p>  sbit rw = P3^1;</p><p>  sbit

48、en = P3^5;</p><p>  uchar command0,data0,count=0;</p><p>  uchar v=0;</p><p>  bit tuichu=0;</p><p>  bit tuichu1=0;</p><p>  bit yy=0;</p><p&

49、gt;  uchar savein=0;</p><p>  void write(uchar command0);</p><p>  uchar keyscan(void);</p><p>  /**************************************************/ </p><p>  #defi

50、ne v_th0 0x3c</p><p>  #define v_tl0 0xb0</p><p>  #define v_tmod 0x01</p><p>  uchar click_0=0; //定時器1定時中斷次數(shù)</p><p>  uchar click_1=0; //1秒是否到了&

51、lt;/p><p>  bit time=0 ;</p><p>  /*******************定時器的初始化*******************/</p><p>  void init_sys(void)</p><p>  {// 定義定時器TO時間常數(shù)和方式控制字</p><p&

52、gt;  TMOD=v_tmod; TH0=v_th0; TL0=v_tl0; //設(shè)置時間計數(shù)初值</p><p>  TR0=0; EA=1; ET0=1; TR1=0; //開定時器0中斷</p><p><b>  } </b></p><p>  /****************延時子程序**********

53、*****************/</p><p>  void delay(uint m)</p><p><b>  {</b></p><p>  while(--m); </p><p><b>  }</b></p><p>  void delayms(ucha

54、r ms)</p><p><b>  {</b></p><p><b>  uchar i;</b></p><p>  while(ms--)</p><p><b>  {</b></p><p>  for(i = 0; i < 120

55、; i++);</p><p><b>  }</b></p><p><b>  }</b></p><p>  /*******************************************************/</p><p>  uchar code Table[]={0xfe

56、,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};</p><p>  ucharcodedis_code[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39}; ////0-9寫入24C02中</p><p>  uchar code dis_code1[]={0x31,0x32,0x33,0x34,0x3

57、5,0x36,}; //超級密碼123456</p><p>  uchar yuanshimima[]={0x38,0x38,0x38,0x38,0x38,0x38,};//系統(tǒng)原始密碼88888</p><p>  uchar shuzu0[6];</p><p>  uchar shuzu1[6];</p><p>  uchar

58、xiugai0[6];</p><p>  uchar xiugai1[6];</p><p>  /********************************************************/ </p><p>  void start()// 開始位</p><p>  { SDA = 1;SCL = 1;<

59、/p><p>  _nop_();_nop_();</p><p><b>  SDA = 0;</b></p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><p><b>  SCL

60、 = 0;</b></p><p><b>  }</b></p><p>  /************************************************/</p><p>  void stop()// 停止位</p><p><b>  {</b></p

溫馨提示

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

評論

0/150

提交評論