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

正文內(nèi)容

基于51單片機的密碼鎖(可改密碼-文庫吧資料

2024-11-15 22:15本頁面
  

【正文】 (1)。 //數(shù)據(jù) /指令選擇置為指令 lcd1602_rw=0。y)。x) for(y=110。 for(x=xms。 Stop()。 Scl=0。 Ack()。 Start()。 Send(Address+i)。 Send(0xa0)。iNum。 PData=Data。 } } void RdFromROM(uchar Data[],uchar Address,uchar Num) { uchar i。 Stop()。 Send(*(PData+i))。 Send(Address+i)。 Send(0xa0)。iNum。 PData=Data。 } void WrToROM(uchar Data[],uchar Address,uchar Num) { uchar i。 } while(BitCounter)。 temp=temp1。0xfe。 if(Sda) temp=temp|0x01。 Scl=1。 do{ Scl=0。 uchar BitCounter=8。 } /*讀一字節(jié)的數(shù)據(jù),并返回該字節(jié)值 */ uchar Read(void) { uchar temp=0。 } while(BitCounter)。 Data=temp。 Scl=1。0x80)==0x80) Sda=1。 Nop()。 do { temp=Data。 } 20 /*發(fā)送數(shù)據(jù)子程序, Data 為要求發(fā)送的數(shù)據(jù) */ void Send(uchar Data) { uchar BitCounter=8。 Nop()。 Nop()。 Scl=0。 Scl=1。 } /*應(yīng)答位 */ void Ack(void) { Sda=0。 Sda=1。 Scl=1。 Nop()。 Nop()。 } /*起始條件 */ void Start(void) { Sda=1。 19 _nop_()。} } } void Nop(void) //空操作 { _nop_()。i125。 } } //============================24C02============================ void mDelay(uint t) //延時 { uchar i。 while(TempCycA) { TempCycB=7269。 } //===================400ms 延時 ============================== void Delay400Ms(void) { unsigned char TempCycA = 5。 //=====================5ms 延時 ============================== void Delay5Ms(void) { unsigned int TempCyc = 5552。 //正確輸入計數(shù) unsigned char ReInputCont。 //密碼輸入位數(shù)記數(shù) unsigned char ErrorCont。 //當(dāng)前密碼值 18 unsigned char TempPassword[6]。 unsigned char InputData[6]。 unsigned char code Er_try[]= {error,try again!}。 //INPUT unsigned char code ResetOK[]= {ResetPasswordOK }。 //OPEN unsigned char code SetNew[]= {SetNewWordEnable}。 //輸入錯誤 unsigned char code codepass[] ={ pass }。 //顯示名稱 unsigned char code Correct[]= { correct }。 //控盤掃描控制表 unsigned char code start_line[]={password: }。 //t0 中斷計數(shù)器 ,秒計數(shù)器 void Delay5Ms(void)。 //3 秒按鍵標(biāo)志位 bit key_disable=0。 //重設(shè)密碼充許標(biāo)志 bit ReInputEn=0。 //操作標(biāo)志位 bit pass=0。 //開鎖 sbit open_led=P2^2。 //24C02 串行數(shù)據(jù) sbit ALAM = P2^1。 sbit Scl=P3^4。 sbit lcd1602_rw=P2^6。對我們學(xué)生來說,理論與實際同樣重要,這是我們以后在工作中說明自己能力的一個重要標(biāo)準。 通過這次實習(xí),我感覺有很大的收獲:首先,通過學(xué)習(xí)使自己對課本上的知識可以應(yīng)用于實際,使的理論與實際相結(jié)合,加深自己對課本知識的更好理解,同時實習(xí)也段練了我個人的動手能力:能夠充分利用圖書館去查閱資料,增加了許多課本以外的知識。 此次所設(shè)計的密碼鎖由于自己的能力有限未能將其拓展為紅外遙控密碼鎖。在整個設(shè)計過程中學(xué)到了許多東西,也培養(yǎng)了獨立思考和設(shè)計的能力,樹立了對知識應(yīng)用的信心,相信會對今后的學(xué)習(xí)工作和生活有非常大的幫助,并且提高了自己的動手實踐操作能力, 使自己充分體會到了在設(shè)計過程中的成功喜悅。 13 主程序流程設(shè)計 通過之前的硬件系統(tǒng)設(shè)計,綜合各方面的考慮,系統(tǒng)主控流程圖如圖所示 圖 程序流程圖 修改鍵按下 輸入鍵按下 接受 6 位密碼 密碼是否正確 修 改 并 保存密碼 開鎖 是 是 否 是 否 出錯報警 初始化 屏幕顯示 Wele 掃描按鍵 是否有鍵按下 開始 否 是 14 實習(xí)總結(jié) 以上為本次單片機實習(xí)設(shè)計的電子密碼鎖電路,通過這次實習(xí)發(fā)現(xiàn)自己的看法有點太片面,實習(xí)不僅是對前面所學(xué)知識的一種檢 驗,也是對自己能力的一種提高,通過這次實習(xí)使自己明白了原來的那點知識是非常欠缺的,要學(xué)習(xí)的東西還很多,通過這次實習(xí),明白學(xué)習(xí)是一個長期積累的過程,在以后的工作和生活中都應(yīng)該不斷的學(xué)習(xí),努力提高自己的知識和綜合素質(zhì)。 本設(shè)計整體軟件思路為:大量程測量后切換模擬開關(guān)決策量程范圍,周而復(fù)始的測量,并顯示。而 C 語言既有高級語言的各種特點,又可對硬件進行操作,并可進行結(jié)構(gòu)化程序設(shè)計。匯編語言與系統(tǒng)硬件的關(guān)系密切,可方便地實現(xiàn)諸如中斷管理以及模擬 /數(shù)字量的輸入 /輸出等功能,具有占用系統(tǒng)資源小、執(zhí)行速度快的特點,但是,對復(fù)雜的大型應(yīng)用系統(tǒng),其代碼可讀性差, 并不利于升級和維護。然而,對于一個完整的設(shè)計系統(tǒng)來說,只有硬件電路的設(shè)計完成是不夠的,它必須通過軟件編程來實現(xiàn)系統(tǒng)工作的控制功能,從而才能實現(xiàn)電路應(yīng)有的系統(tǒng)功能。 本設(shè)計使用的是自激蜂鳴器,自激蜂鳴器是直流電壓驅(qū)動的,不需要利用交流信號進行驅(qū)動,只需對驅(qū)動口輸出驅(qū)動電平并通過三 極管放大驅(qū)動電流就能使蜂鳴器發(fā)出聲音。在單片機應(yīng)用的設(shè)計上,很多方案都會用到蜂鳴器,大部分都是使用蜂鳴器來做提示或報警,比如按鍵按下、開始工作、工作結(jié)束或是故障等等。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“ 常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”。當(dāng)線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)吸合。電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。 10 D31 N 4 0 0 7TF 1C13 3 0 0 u FC23 3 0 0 u FC30 . 3 3 u FC40 . 3 3 u FC50 . 1 u FC60 . 1 u FR11k7 9 0 52131237 8 0 5+ V C C V C C+ 5 V 5 V12H e a d e r 圖 ? 5V電源電路 蜂鳴器和繼電器部分 密碼正確時驅(qū)動繼電器開鎖, LED 燈提示,蜂鳴器響 , 電路圖所示 1KARes Pack2Q?PNPD?Photo SenLS?Bell12345K?RelayVCCVCCGNDGND1KR?Res2VCC 圖 繼電器,蜂鳴器電路 繼電器: ( 1) 概述 : 繼電器是一種電子控制器件,它具有控制系統(tǒng)和被控制系統(tǒng) ,通常應(yīng)用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關(guān)”。電路輸出電壓和最大輸出電流決定于所選三端穩(wěn)壓器。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)發(fā)送或接收的模式,通過器件地址輸入端 A0 A1 和 A2 可以實現(xiàn)將最多 8 個 24WC01 和24WC02 器件 4 個 242C04 器件 ,2 個 24WC08 器件和 1 個 24WC16 器件連接到總線上。任何從總線接收數(shù)據(jù)的器件為接收器。用戶設(shè)置的密碼存放在 AT24C02 中,當(dāng)需要更改或讀取用戶密碼時,只需對AT24C02 里的數(shù)據(jù)更改或讀取。 按鍵 行號 列號 鍵值編碼 1 1 1 11H( 00010001) 2 1 2 21H( 00100001) 3 1 3 41H( 01000001) 4 2 1 12H( 00010010) 5 2 2 22H( 00100010) 6 2 3 42H( 01000010) 7 3 1 14H( 00010100) 8 3 2 24H( 00100100) 9 3 3 44H( 01000100) *(取消 ) 4 1 18H( 00011000) 0 4 2 28H( 00101000) (確認) 4 3 48H (01001000) D(修改 ) 4 4 88H( 10001000) 表 按鍵與編碼對應(yīng)關(guān)系表 AT24C02 密碼存儲部分 9 (T2)1(T2EX)2345678RESET9(RXD)10(TXD)11(INT0)12(INT1)13(T0)14(T1)15(WR)16(RD)17XTAL218XTAL119GND20(A0)21(A1)22(A2)23(A3)24(A4)25(A5)26(A6)27(A7)28PSEA29ALE30EA31(AD7)32(AD6)33(AD5)34(AD4)35(AD3)36(AD2)37(AD1)38(AD0)39VCC40U1AT89C51A01A11A23GND4SDA5SCL6WP7VCC8*AT24C02GNDVCC 圖 AT24C02 模塊 為了保存用戶設(shè)置的密碼, 本 系統(tǒng)使用 AT24C02 用來保存用戶設(shè)置的密碼, 它的 SCL、 SDA 端分別接單片機的 T0、 T1 端 ,用于與單片機之間讀寫操作的數(shù)據(jù)傳輸; WP 接低電平表示單片機可以對器件進行正常的讀 /寫操作; A0、 A A2 是器件地址輸入端,都接低電平表示只有一個 AT24C02被器件尋址。圖 中第 4 列前三個暫時不用,可以作以后擴充所用。這樣每按一個鍵,只做一個鍵處理,使二者達 到同步,消除按一次鍵有多個鍵值輸入的錯誤情況。為避免發(fā)生這種情況,必須保證按一次鍵, CPU 只對該鍵做一次處理。這種情況的發(fā)生是由于鍵掃描速度和鍵處理速度較快,當(dāng)某一個鍵按下還未松開時鍵掃描程序和鍵處理程序已執(zhí)行了多遍。在編制鍵盤掃描程序時,只要發(fā)現(xiàn)按鍵狀態(tài)有變化,即無論是按下還是松開,程序都延時 20ms 以后再進行其他操作 。較為簡單的方法就是用軟件延時方法來消除按鍵的抖動,一旦發(fā)現(xiàn)有鍵按下,就延時 20ms 以后再測按鍵的狀態(tài)。這種抖動經(jīng)常發(fā)生在按下或松開瞬間,一般持續(xù)幾到十幾秒,抖動時間隨按鍵的結(jié)構(gòu)不同而不同。當(dāng)各行都掃描以后仍沒有找到,則放棄掃描,認為是鍵 的錯誤動作。 ( 2) 查
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1