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

正文內(nèi)容

基于單片機(jī)的電子密碼鎖設(shè)計(jì)69444(編輯修改稿)

2025-07-24 19:57 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 會(huì)變成01111101(注意1111變成1101),其中LSB的第三個(gè)bit會(huì)由1變成0,這是因?yàn)檫@個(gè)按鍵被按下之后,會(huì)被垂直的掃描碼電位short,而把讀取的LSB的bit電位拉到0,此即為掃描原理。 由於這種按鍵是機(jī)械式的開關(guān),當(dāng)按鍵被按下時(shí),鍵會(huì)震動(dòng)一小段時(shí)間才穩(wěn)定,為了避免讓8051誤判為多次輸入同一按鍵, 我們必須在偵測(cè)到有按鍵被按下,就Delay一小段時(shí)間,使鍵盤以達(dá)穩(wěn)定狀態(tài),再去判讀所按下的鍵,就可以讓鍵盤的輸入穩(wěn)定。圖38為鍵盤整體模框圖:圖38鍵盤整體??驁D 顯示電路設(shè)計(jì)顯示設(shè)計(jì)采用字符型液晶屏設(shè)計(jì),由單片機(jī)的p0口控制顯示,~。本設(shè)計(jì)采用以下液晶顯示設(shè)計(jì):圖39 LCD液晶顯示電路抓圖 電路設(shè)計(jì)總圖Proteus軟件是Labcenter Electronics公司的一款電路設(shè)計(jì)與仿真軟件,它包括ISIS、ARES等軟件模塊,ARES模塊主要用來完成PCB的設(shè)計(jì),而ISIS模塊用來完成電路原理圖的布圖與仿真。Proteus的軟件仿真基于VSM技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢(shì)就在于它能仿真大量的單片機(jī)芯片,比如MCS51系列、PIC系列等等,以及單片機(jī)外圍電路,比如鍵盤、LED、LCD等等。通過Proteus軟件的使用我們能夠輕易地獲得一個(gè)功能齊全、實(shí)用方便的單片機(jī)實(shí)驗(yàn)室。 本密碼鎖采用proteus進(jìn)行電路圖設(shè)計(jì),經(jīng)過元件選型,用萬能實(shí)驗(yàn)版進(jìn)行硬件焊接,以實(shí)現(xiàn)硬件部分。 下圖為proteus設(shè)計(jì)的密碼鎖電路圖整體抓圖圖310 電路設(shè)計(jì)總圖第4章 系統(tǒng)軟件設(shè)計(jì)因設(shè)計(jì)主要是作用匯編語言來開發(fā)的51單片機(jī)項(xiàng)目程序,所以首先必須有一個(gè)可以在Windows XP或Windows vista操作系統(tǒng)下執(zhí)行的匯編語言編譯器,本設(shè)計(jì)采用Keil編譯器進(jìn)行編程,因?yàn)樗梢灾С忠幌盗械?1單片機(jī)。開始初始化模式選擇開鎖模式密碼輸入密碼校驗(yàn)是否正確開門手動(dòng)清除修改密碼輸入舊密碼輸入新密碼再次輸入密碼兩次密碼不相同同重新輸入存入緩存區(qū)設(shè)置完畢返回圖41 主程序的流程圖 主程序模塊主程序主要是完成系統(tǒng)初始化、設(shè)置中斷向量、檢查有無鍵按下、以及調(diào)用顯示等等。主程序部分如下所示:void main(){ uchar m=0。 EA=1。 EX0=1。 IT0=0。 LED=0。 LED1=0。 InitLCD()。//初始12864 ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 while(1) { jianpan()。 if(flag==2) { } if(m==3) { } if(flag==1) { } }}void EX_INT0() interrupt 0{ shizhi()。 delay(2000)。} 鍵盤掃描及識(shí)別子程序鍵盤采用查詢的方式,放在主程序中,當(dāng)沒有按鍵按下的時(shí)候,單片機(jī)循環(huán)主程序,一旦有按鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理,處理結(jié)束再返回。其程序流程如圖42所示 鍵盤部分程序如下key: 。鍵盤程序名稱call ks 。調(diào)用子程序ksjnz k1 。判斷是否有鍵按下jmp key 。跳回鍵盤程序ks:mov p1,0f0h。mov a,p1。xrl a,0f0h。ret。圖42 鍵盤掃描程序流程圖 系統(tǒng)模塊密碼設(shè)置子程序由于設(shè)計(jì)是分模塊化進(jìn)行,所以子程序是整體軟件系統(tǒng)的組成部分,子程序不但可以使程序化整為零,使其復(fù)雜簡(jiǎn)單化,同時(shí)也方便閱讀,修改等,每個(gè)功能模塊都有它自己的子程序,在本設(shè)計(jì)中是用LCD顯示數(shù)據(jù),所以就要用到顯示子程序,設(shè)計(jì)中用的是矩陣鍵盤,所以就用到鍵盤掃描子程序,例如還有顯示初始化子程序、LCD忙檢測(cè)子程序、關(guān)閉狀態(tài)顯示子程序、開鎖狀態(tài)顯示子程序、密碼輸入及修改狀態(tài)顯示子程序、密碼輸入錯(cuò)誤后的提示子程序等。如下圖為密碼修改子程序流程圖選擇模式舊密碼輸入新密碼輸入 存入緩存再次輸入密碼 比較密碼 重新輸入返回YN是否大于3次 鎖定NY圖43 設(shè)置密碼子程序 程序調(diào)試在硬件支持的環(huán)境下,用proteus設(shè)計(jì)好的電路,Keil編好的程序編譯成芯片可識(shí)別的S51文件,利用PC機(jī)寫進(jìn)proteus程序圖芯片內(nèi)進(jìn)行仿真測(cè)試,并對(duì)其出現(xiàn)的錯(cuò)誤進(jìn)行修改,由圖44~圖48可看出最終調(diào)試成功。圖44 keil編譯程序成功圖45 keil生成hex文件圖46 proteus調(diào)用keil的hex文件進(jìn)行仿真圖47仿真成功密碼正確圖48 密碼正確綠燈亮結(jié)  論為了能夠更好地完成這次的畢業(yè)設(shè)計(jì)的任務(wù),我通過不同的渠道學(xué)習(xí)了本課題相關(guān)的一些知識(shí),這些是我在課堂上無法學(xué)到的。三個(gè)月的時(shí)間里不僅讓我對(duì)學(xué)過的單片機(jī)知識(shí)有了很多的鞏固,同時(shí)也對(duì)單片機(jī)這一門課程產(chǎn)生了更大的興趣并讓我對(duì)專業(yè)知識(shí)有了更深的理解。在搞畢業(yè)設(shè)計(jì)的這段時(shí)間里,我學(xué)會(huì)了在網(wǎng)絡(luò)上查找有關(guān)本設(shè)計(jì)的各硬件的資源,其中包括:電子密碼鎖國(guó)內(nèi)外發(fā)展現(xiàn)狀、AT89S51單片機(jī)及其引腳說明等,為本次課程設(shè)計(jì)提供了一定的資料。在做畢業(yè)設(shè)計(jì)的初期階段,難度很大,沒有頭緒。通過求助于老師、胡同學(xué)理清了思路。同時(shí),在圖書館里、網(wǎng)上查閱資料,攻克了畢業(yè)設(shè)計(jì)中的道道難題。最后經(jīng)過老師的耐心指點(diǎn)和連續(xù)的奮戰(zhàn)才算基本合格。本次設(shè)計(jì)我能獨(dú)立完成,算是有了很大的收獲??偟母惺苡幸韵聨追矫妫?1)鞏固了課本上的知識(shí)。通過本次設(shè)計(jì),我不但對(duì)單片機(jī)有了更為深入的了解,對(duì)一個(gè)課題如何畫流程圖,編程序等,有了一定的認(rèn)識(shí)。(2)在本次畢業(yè)設(shè)計(jì)中,我進(jìn)一步加強(qiáng)了自己的動(dòng)手能力和運(yùn)用專業(yè)知識(shí)的能力,從中學(xué)習(xí)到如何去思考和解決問題,以及如何靈活地改變方法去實(shí)現(xiàn)設(shè)計(jì)方案;特別是深刻體會(huì)到的是軟件和硬件結(jié)合的重要性,以及兩者的聯(lián)系和配合作用。(3)通過本次畢業(yè)設(shè)計(jì),讓我了解到電子技術(shù)和軟件編程對(duì)當(dāng)今人們生活的重要性。同時(shí)這次做畢業(yè)設(shè)計(jì)的經(jīng)歷也使我受益匪淺。讓我知道做任何事情都應(yīng)腳踏實(shí)地,刻苦努力地去做。在這次畢業(yè)設(shè)計(jì)中,我既鞏固了專業(yè)知識(shí),又學(xué)到了在電子密碼鎖設(shè)計(jì)過程中的許多流程和該注意的事項(xiàng),增強(qiáng)了電子產(chǎn)品設(shè)計(jì)和開發(fā)的意識(shí)。本次經(jīng)歷將是我在大學(xué)時(shí)期很好的一次實(shí)踐和鍛煉機(jī)會(huì)。參考文獻(xiàn)[1] [M]. 北京國(guó)防工業(yè)出版社,[2] 楊西明,[M]. 北京機(jī)械工業(yè)出版社,,133147[3] [M]. 北京清華大學(xué)出版社,[4] [M]. 北京人民郵電出版社,[5] [M].計(jì)算機(jī)仿真,2005[6] 房小翠,[M]. 北京國(guó)防工業(yè)出版社,[7] 王寬仁,可靠安全的智能密碼鎖[M]. 電子技術(shù)應(yīng)用 ,2001[8] [M].國(guó)外電子元器件, [9] [M]. 北京:北京航空航天大學(xué)出版社,1999.[10] [M].北京:清華大學(xué)出版社,2004[11] (C51)版[M].電子工業(yè)出版社, [12] 王為青, Cx51 應(yīng)用開發(fā)技術(shù)[M].人民郵電出版社, [13] 范風(fēng)強(qiáng),[M].電子工業(yè)出版社, [14] [M].清華大學(xué)出版社, [15] [M].清華大學(xué)出版社, [16] [M].北京希望電子出版社,附  錄附錄A 電子密碼鎖整體設(shè)計(jì)圖附錄B 電子密碼鎖整體PCB設(shè)計(jì)圖附錄C 電子密碼鎖程序源代碼/****************/include include include sbit LED=P3^7。 sbit LED1=P3^0。include include include void main(){ uchar m=0。 EA=1。 EX0=1。 IT0=0。 LED=0。 LED1=0。 InitLCD()。//初始12864 ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,0)。 Display(2,0,1*16,1)。 Display(2,0,2*16,2)。 Display(2,0,3*16,3)。 Display(1,0,0*16,4)。 while(1) { jianpan()。 if(flag==2) { ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,9)。 Display(2,0,1*16,10)。 Display(2,0,2*16,11)。 Display(2,0,3*16,12)。 flag=0。 LED=0。 delay(2000)。 ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,0)。 Display(2,0,1*16,1)。 Display(2,0,2*16,2)。 Display(2,0,3*16,3)。 Display(1,0,0*16,4)。 m++。 } if(m==3) { LED1=1。 m=0。 } if(flag==1) { ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,5)。 Display(2,0,1*16,6)。 Display(2,0,2*16,7)。 Display(2,0,3*16,8)。 flag=0。 LED=1。 } }}void EX_INT0() interrupt 0{ ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,13)。 Display(2,0,1*16,14)。 Display(2,0,2*16,15)。 Display(2,0,3*16,16)。 shizhi()。 delay(2000)。 ClearScreen(0)。//清屏 SetStartLine(0)。//顯示開始行 Display(2,0,0*16,0)。 Display(2,0,1*16,1)。 Display(2,0,2*16,2)。 Display(2,0,3*16,3)。 Display(1,0,4*16,4)。 }/********************/define uint unsigned intdefine uchar unsigned chardefine ulong unsigned longdefine DATA P0 //LCD12864數(shù)據(jù)線sbit RS=P2^2。 // 數(shù)據(jù)\指令 選擇sbit RW=P2^1。 // 讀\寫 選擇sbit EN=P2^0。 // 讀\寫使能sbit cs1=P2^4。 // 片選1sbit cs2=P2^3。 // 片選2/********************************//* 定義中文字庫 *//********************************/uchar code Hzk[]={/* 文字: 輸 0 *//* 宋體12。 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 */0x88,0x68,0x1F,0xC8,0x08,0x10,0xC8,0x54,0x52,0xD1,0x12,0x94,0x08,0xD0,0x10, 0x00,0x09,0x19,0x09,0xFF,0x05,0x00,0xFF,0x12,0x92,0xFF,0x00,0x5F,0x80,0x7F,0x00, 0x00,/* 文字: 入 1*//* 宋體12。 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 */0x00,0x00,0x00,0x00,0x00,0x01,0xE2,0x1C,0xE0,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x03,0x0C,0x30,0x40,0x80,0x80, 0x00,/* 文字: 密 2*//* 宋體12。 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 */0x10,0x8C,0x44,0x04,0xE4,0x04,0x95,0xA6,0x44,0x24,0x14,0x84,0x44,0x94,0x0C, 0x00,0x02,0x02,0x7A,0x41,0x41,0x43,0x42,0x7E,0x42,0x42,0x42,0x43,0xF8,0x00,0x00, 0x00,/* 文字: 碼 3*//* 宋體12。 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 */0x04,0x8
點(diǎn)擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1