男女午夜激情_www.天堂av.com_亚洲综合小说区_亚洲欧美自拍视频_成年精品_久久www免费人成—看片_激情综合五月天_久久高潮视频_最新国产成人ab网站_国产精品卡一

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發
培訓信息
贊助商
簡單的電子密碼鎖
簡單的電子密碼鎖
 更新時間:2008-7-26 17:09:46  點擊數:4
【字體: 字體顏色
    這并不是一個真正的電子密碼鎖,僅供學習單片機用。
   
    電路所完成的功能是等待密碼的輸入,通過數碼管滾動顯示輸入的文本。輸入密碼的方
法是:電路中有一個撥碼開關(看實物圖)用前3位來輸入密碼,第4位先撥到上,再撥到下
(相當于按了一下“回車”鍵)以確認。重復以上動作可輸入一個6位的密碼。 單片機將把
輸入的密碼與單片機內部的密碼相比較,如果一致,比較后顯示“ACCEPTED”則意味著密碼
正確,鎖被打開,然后電路返回初始狀態。如果比較的結果是不一致,顯示“DENIED”表示
密碼不正確。

;***** VARIABLE DEFINITIONStempEQU     0x0C        ; temp variablepincodeEQU     0x0D        ; the PINdelaytemp1EQU0x0Edelaytemp2EQU0x0Fdelaytemp3EQU0x010countEQU0x011entryEQU0x012;**********************************************************************                ORG     0x000             ; processor reset vector                goto    main              ; go to beginning of program                ORG     0x004             ; interrupt vector location                retfie                    ; return from interrupt;table1ADDWFPCL, F; JumpRETLW0x086; ERETLW0x0AB; nRETLW0x087; tRETLW0x086; E
RETLW0x0AF; rRETLW0x0FF; spaceRETLW0x08C; PRETLW0x0F9; IRETLW0x0AB; nRETLW0x07F; dpRETLW0x00; null char;table2ADDWFPCL, FRETLW0x088; ARETLW0x0C6; CRETLW0x0C6; CRETLW0x086; ERETLW0x08C; PRETLW0x087; tRETLW0x086; ERETLW0x0A1; dRETLW0x00; \0;table3ADDWFPCL, FRETLW0x0A1; dRETLW0x086; ERETLW0x0AB; nRETLW0x0F9; IRETLW0x086; ERETLW0x0A1; dRETLW0x00; \0;main            bsfSTATUS, RP0; Set page bitclrfTRISB; All outputsbcfSTATUS, RP0; Clear page bit; 7-seg on PORTB, dp on                         ; bit 7 seg a on bit 0MOVLWb'00111111'MOVWFpincode; Main loop, while PIN is wrong say ENTER PINCLRFcount; char countMOVLWb'10000000'MOVWFentry; first entry flag setmain_loopMOVFcount, WCALLtable1ANDLW0x0FF;test if at end of messageBTFSCSTATUS, ZGOTOdisp_doneMOVWFPORTB; Display charCALLdel500ms; delayINCFcount, FBTFSCPORTA, 0; Enter key, switch 5GOTOmain_loop;MOVFPORTA, WMOVWFtempMOVLW0x03A; Debounce switchCALLdel_xW; delay of ~ 30 msBTFSCentry, 7; first or second press                                 ;of enter ?GOTOfirstMOVLWb'00001110'ANDWFtemp, F; maskRLFtemp, F; shift left 1 bitRLFtemp, W; shift left 1 bitIORWFentry, FMOVFentry, WCLRFcountSUBWFpincode, WBTFSSSTATUS, ZGOTOdenied;acceptedMOVFcount, WCALLtable2ANDLW0x0FF;test if at end of messageBTFSCSTATUS, ZGOTOcode_doneMOVWFPORTB; Display charCALLdel500ms; delayINCFcount, FGOTOaccepted; Do all chars;deniedMOVFcount, WCALLtable3ANDLW0x0FF;test if at end of messageBTFSCSTATUS, ZGOTOcode_doneMOVWFPORTB; Display charCALLdel500ms; delayINCFcount, FGOTOdenied; Do all chars;code_doneCALLdel500msCLRFcountMOVLWb'10000000'MOVWFentry; first entry flag setGOTOmain_loop;firstMOVLWb'00001110'ANDWFtemp, F; maskRRFtemp, W; shift right 1 bitMOVWFentry; clears first flag bitGOTOmain_loop; Keep displaying message;disp_doneCLRFcountGOTOmain_loop;del_xWmovwfdelaytemp2; delay 256 cycles * Wclrfdelaytemp1; min delay ~ 512us                                 ;max ~ 131072us = 0.131 sdel_loopdecfszdelaytemp1, f;delay time = gotodel_loop;msd * ((3 * 256) + 3) * tcydecfszdelaytemp2, f;gotodel_loop;Actual delay time is 925 usreturn;del500msMOVLW0x03MOVWFdelaytemp3; 4 loopsdel_loop2MOVLW0x0C3; 195 loops ~ 100ms * 5 = ~500msCALLdel_xW; Delay routineDECFSZdelaytemp3, FGOTOdel_loop2RETURN; Return from routine                END; directive 'end of program'
 
  • 上一篇: LCD驅動HT1621的PIC單片機源代碼
  • 下一篇: PIC選型簡單介紹
  • 發表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發消息66821730(技術支持)點擊這里給我發消息66821730(廣告投放) 點擊這里給我發消息41031197(編輯) 點擊這里給我發消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業自行提供,該企業負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(濱江)機電一體化學會
    中國行業電子商務100強網站

    網站經營許可證:浙B2-20080178-1
    主站蜘蛛池模板: 普格县| 白山市| 宾阳县| 油尖旺区| 恩平市| 四会市| 承德县| 汤阴县| 恭城| 乌鲁木齐市| 西安市| 灵山县| 秭归县| 陇南市| 聂拉木县| 开阳县| 天柱县| 宜城市| 福鼎市| 海安县| 开鲁县| 怀集县| 舟曲县| 大新县| 轮台县| 城市| 左云县| 衢州市| 阳江市| 祁东县| 柘城县| 肥东县| 永吉县| 青河县| 平南县| 台中县| 太仆寺旗| 五华县| 通山县| 方城县| 阳山县|