新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 1-wire系统中TM卡的单片机等效替换

1-wire系统中TM卡的单片机等效替换

作者:常州轻工职业技术学院 高罗卿 时间:2008-09-08 来源:单片机与嵌入式系统应用 收藏

  对从机来说,则为发送64位ID处理。程序处理的难点在于从机必须在15 μs之前拉高或拉低总线,以供主机在15 μs处采样总线。程序通过判断位地址00H处的状态来实现此功能。通过判断位地址01H处的状态来确定发送位0或发送位1。从机发送64位ID处理的中断服务程序流程如图8所示。

本文引用地址:https://www.eepw.com.cn/article/87775.htm


图8  从机发送64位ID处理的中断服务程序流程

  在完整地实现一次ROM功能的过程中,从机首先等待主机发送的复位脉冲,待检测到后发图9实现ROM功能的流程送存在脉冲应答。随后,从机开始接收主机发送的ROM命令,并将其保存,以判断随后的操作。最后,从机发送的64位标识码,完成一次ROM命令的执行。实现ROM功能的流程如图9 所示。

  的汇编程序如下:

    ORG0000H
    AJMPInit//跳到Init段
    ORG0003H
    AJMPJudge//跳到中断服务程序
  Init: //初始化
    MOVDPTR,#ID//ID表地址
    MOVR5,#001H
    MOVR7,#000H
    CLR00H
    SETB01H
    SETBP3.2
    LCALLDelay10s
    CLRP3.2//拉低总线叫醒主机
    LCALLDelay100us
    SETBP3.2
    SETBEA
    SETBIT0
    SETBEX0
  MAIN:  AJMPMAIN//主循环
  Judge:CLREX0//判断执行动作,关中断
    JNB00H,SecondJ//跳到二次判断
  ID_IN:JB01H,SEND1//从机发送64位标识码
    CLRP3.2//发送位0
  SEND1:SETBP3.2 //发送位1
    LCALLDelay30us
    MOVA,R5//R5循环左移
    RLA
    MOVR5,A
    MOVA,#00H
    MOVCA,@A+DPTR
    ANLA,R5
    CLR01H//设置01H状态
    JZRelease1
    SETB01H
  Release1:SETBP3.2
    MOVA,R5
    ANLA,#080H//判断字节发送完否
    JZINTEND
    INCDPTR
    AJMPINTEND//跳到中断结束
  SecondJ:MOVA,R7//二次判断
    JZWaitReply//跳到执行应答判断是否命令接收结束
    ANLA,#008H
    JZWaitOrder//跳到执行接收命令
    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//判断主机的发送状态,是否返回
    ANLA,#004H
    JZRLOOP1
    AJMPINTEND//跳到中断结束
  WaitReply://执行应答
  RLOOP:MOVA,P3//判断主机的复位信号
    ANLA,#004H
    JZRLOOP
    LCALLDelay30us
    CLRP3.2//从机拉低电平应答
    LCALLDelay150us
    SETBP3.2//释放总线
    NOP
    NOP
    NOP
    NOP
  INTEND:
    INCR7
    CLRIE0
    SETBEX0//开中断
    RETI//中断返回
  ID:DB001H//ID表
    DB0C3H
    DB04DH
    DB057H
    DB033H
    DB022H
    DB000H
    DB0D2H

  本文代码在实际运用中得到了很好的验证,能够稳定地替代SMC1990A1实现的ROM功能,极大地方便了权限管理人员用于丢失或损坏的TM卡的权限管理。

参考文献

[1]  SMC1990A1 Datasheet. Version 0.1, June, 2004.
[2]  陈志英,李光辉. 单总线(1Wire Bus) 技术及其应用[J]. 国外电子元器件, 2003(8) : 47.
[3]  丁明勇,李昔华. TM卡智能电子锁与门禁系统研制[J]. 重庆工商大学学报, 2004, 21(5) : 488  490.
[4]  徐敏,诸葛振荣,宋加仁. 基于1Wire技术的数字温度仪[J]. 机电工程, 2007, 24(4) : 26 29.
[5]  杨振野, 韦方明, 陈坤城,等. DS1991信息纽扣的密钥破解和等效替换[J]. 电子技术, 2006(12): 61  63.

高罗卿(硕士),从事机电一体化专业教学任务。


上一页 1 2 下一页

关键词: 单片机 TM卡 1wire IC卡

评论


相关推荐

技术专区

关闭