<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 1-wire系統(tǒng)中TM卡的單片機(jī)等效替換

          1-wire系統(tǒng)中TM卡的單片機(jī)等效替換

          作者:常州輕工職業(yè)技術(shù)學(xué)院 高羅卿 時間:2008-09-08 來源:單片機(jī)與嵌入式系統(tǒng)應(yīng)用 收藏

            對從機(jī)來說,則為發(fā)送64位ID處理。程序處理的難點(diǎn)在于從機(jī)必須在15 μs之前拉高或拉低總線,以供主機(jī)在15 μs處采樣總線。程序通過判斷位地址00H處的狀態(tài)來實(shí)現(xiàn)此功能。通過判斷位地址01H處的狀態(tài)來確定發(fā)送位0或發(fā)送位1。從機(jī)發(fā)送64位ID處理的中斷服務(wù)程序流程如圖8所示。

          本文引用地址:http://www.ex-cimer.com/article/87775.htm


          圖8  從機(jī)發(fā)送64位ID處理的中斷服務(wù)程序流程

            在完整地實(shí)現(xiàn)一次ROM功能的過程中,從機(jī)首先等待主機(jī)發(fā)送的復(fù)位脈沖,待檢測到后發(fā)圖9實(shí)現(xiàn)ROM功能的流程送存在脈沖應(yīng)答。隨后,從機(jī)開始接收主機(jī)發(fā)送的ROM命令,并將其保存,以判斷隨后的操作。最后,從機(jī)發(fā)送的64位標(biāo)識碼,完成一次ROM命令的執(zhí)行。實(shí)現(xiàn)ROM功能的流程如圖9 所示。

            的匯編程序如下:

              ORG0000H
              AJMPInit//跳到Init段
              ORG0003H
              AJMPJudge//跳到中斷服務(wù)程序
            Init: //初始化
              MOVDPTR,#ID//ID表地址
              MOVR5,#001H
              MOVR7,#000H
              CLR00H
              SETB01H
              SETBP3.2
              LCALLDelay10s
              CLRP3.2//拉低總線叫醒主機(jī)
              LCALLDelay100us
              SETBP3.2
              SETBEA
              SETBIT0
              SETBEX0
            MAIN:  AJMPMAIN//主循環(huán)
            Judge:CLREX0//判斷執(zhí)行動作,關(guān)中斷
              JNB00H,SecondJ//跳到二次判斷
            ID_IN:JB01H,SEND1//從機(jī)發(fā)送64位標(biāo)識碼
              CLRP3.2//發(fā)送位0
            SEND1:SETBP3.2 //發(fā)送位1
              LCALLDelay30us
              MOVA,R5//R5循環(huán)左移
              RLA
              MOVR5,A
              MOVA,#00H
              MOVCA,@A+DPTR
              ANLA,R5
              CLR01H//設(shè)置01H狀態(tài)
              JZRelease1
              SETB01H
            Release1:SETBP3.2
              MOVA,R5
              ANLA,#080H//判斷字節(jié)發(fā)送完否
              JZINTEND
              INCDPTR
              AJMPINTEND//跳到中斷結(jié)束
            SecondJ:MOVA,R7//二次判斷
              JZWaitReply//跳到執(zhí)行應(yīng)答判斷是否命令接收結(jié)束
              ANLA,#008H
              JZWaitOrder//跳到執(zhí)行接收命令
              SETB00H
            WaitOrder: LCALLDelay15us//接收命令
              NOP
              NOP
              MOVA,P3//采樣P3.2
              ANLA,#004H
              JZSAVE_R6
              MOVA,#001H
            SAVE_R6:
              ORLA,R6 //保存命令到R6
              RRA
              MOVR6,A
            RLOOP1:
              MOVA,P3//判斷主機(jī)的發(fā)送狀態(tài),是否返回
              ANLA,#004H
              JZRLOOP1
              AJMPINTEND//跳到中斷結(jié)束
            WaitReply://執(zhí)行應(yīng)答
            RLOOP:MOVA,P3//判斷主機(jī)的復(fù)位信號
              ANLA,#004H
              JZRLOOP
              LCALLDelay30us
              CLRP3.2//從機(jī)拉低電平應(yīng)答
              LCALLDelay150us
              SETBP3.2//釋放總線
              NOP
              NOP
              NOP
              NOP
            INTEND:
              INCR7
              CLRIE0
              SETBEX0//開中斷
              RETI//中斷返回
            ID:DB001H//ID表
              DB0C3H
              DB04DH
              DB057H
              DB033H
              DB022H
              DB000H
              DB0D2H

            本文代碼在實(shí)際運(yùn)用中得到了很好的驗(yàn)證,能夠穩(wěn)定地替代SMC1990A1實(shí)現(xiàn)的ROM功能,極大地方便了權(quán)限管理人員用于丟失或損壞的TM卡的權(quán)限管理。

          參考文獻(xiàn)

          [1]  SMC1990A1 Datasheet. Version 0.1, June, 2004.
          [2]  陳志英,李光輝. 單總線(1Wire Bus) 技術(shù)及其應(yīng)用[J]. 國外電子元器件, 2003(8) : 47.
          [3]  丁明勇,李昔華. TM卡智能電子鎖與門禁系統(tǒng)研制[J]. 重慶工商大學(xué)學(xué)報, 2004, 21(5) : 488  490.
          [4]  徐敏,諸葛振榮,宋加仁. 基于1Wire技術(shù)的數(shù)字溫度儀[J]. 機(jī)電工程, 2007, 24(4) : 26 29.
          [5]  楊振野, 韋方明, 陳坤城,等. DS1991信息紐扣的密鑰破解和等效替換[J]. 電子技術(shù), 2006(12): 61  63.

          高羅卿(碩士),從事機(jī)電一體化專業(yè)教學(xué)任務(wù)。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 單片機(jī) TM卡 1wire IC卡

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();