版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑-wire系统中TM卡的单片机等效替换-基础电子
1TM卡简介
TM(TouchMemory)卡是美国Dallas公司的产品。它采用单线协议通信,通过瞬间碰触完成数据读写,既具有非接触式IC卡的易操作性,又具有接触式IC卡的廉价性,是当前性价比秀的IC卡之一。它的外形类似于一个钮扣(button)电池,可镶嵌于卡片、钥匙扣等物体上。
TM卡通过一个多功能器将数据线、地址线、控制线和电源线合并为1根线,实现单线通信。当主机加电时,TM卡通过500kΩ和50Ω阻抗之间的切换来响应主机,用信号被拉低的时长(长或短)来表示数字逻辑(长为1,短为0)。由于阻抗切换的幅度为10000∶1,因此,触点的接触电阻不会影响数字信号的辨识。
21wire通信协议
单总线即只有1根数据线,系统中的数据交换、控制都由这根线完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其他设备使用总线。单总线通常要求外接一个约为4.7kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。主机和从机之间的通信可通过3个步骤完成:初始化1wire器件;识别1wire器件;交换数据。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问1wire器件都必须严格遵循单总线命令序列,即初始化、ROM命令、功能命令。如果出现序列混乱,1wire器件将不响应主机(搜索ROM命令,报警搜索命令除外)。
SMC1990A1是具有工厂激光刻度的64位ROMID码,其中包括48位的序列号、1个8位的CRC编码和1个8位的产品系列号。数据遵循单总线协议传输,用于读和写的电源由数据线本身提供,而不需要提供外部电源。
3SMC1990A1的等效替换
单总线技术具有节省I/O口线资源,线路简单,硬件开支少,成本低,便于总线扩展和维护等优点。在分布式测控系统中有着广泛的应用。在实际应用过程中,可能会出现TM卡丢失和损坏的情况,如果发生此类情况,往往需要根据一个新TM卡来设置多个采集点的权限。如果采集点设置得很多,将浪费大量的人力。此时,利用单片机来替换已丢失或损坏的TM卡就显得很有必要。
3.1系统硬件组成
系统采用AT89C51作为控制器,并采用24MHz晶振。为了能尽量适应标准的单总线通信协议,晶振频率应尽量高。考虑到单总线通信协议所有的传输都是由主机发起的,因此为了尽快地响应主机,采用中断处理。选择AT89C51的INT0(即P3.2)作为SMC1990A1等效替换的正极。图1为TM卡的等效替换示意图。
图1TM卡的等效替换
3.2系统软件设计
对于SMC1990A1的等效替换,主要是对其时序的分析。对于SMC1990A1子设备,主要的编程是针对主机而言的,传输都是由主机发起的。现在改为单片机模拟SMC1990A1子设备(现称为“从机”)。
图2初始化时序
首先,初始化时序,如图2所示。主机首先发送一个复位脉冲,历时tRETL(短为480μs的低电平信号),然后释放总线并进入接收状态。从机在检测到总线的上升沿后,等待tPDH时间后,从机拉低总线发出存在脉冲,历时tPDL(低电平,持续60~240μs),然后释放总线。释放总线通过拉高总线实现。
对应于从机,初始化时序的中断服务程序流程如图3所示。
图3初始化时序的中断服务程序流程
下面是主机写0和写1时序。在初始化时序后,当主机总线从高电平拉至低电平时,就产生写时间隙。在开始15μs之内,应将所需写的位送到总线上,从机在开始后15~60μs间对总线采样。若为低电平,写入的位是0,如图4所示;若为高电平,写入的位是1,如图5所示。连续写多位间的间隙tREC应大于1μs。
图4主机写0时序
图5主机写1时序
对应于从机,是等待主机命令。从机等待主机命令的中断服务程序流程如图6所示。
图6从机等待主机命令的中断服务程序流程
是主机读数据时序,如图7所示。主机总线在开始时刻从高电平拉至低电平时,总线只需保持低电平1~7μs。之后在tLOWR时刻释放总线,一般在tRDV时刻采样总线(15μs处),读时间隙在tLOWR与tRDV之间有效。从机必须在tRDV时刻前拉高或拉低总线,主机在tRDV时刻采样,并在60~120μs内释放总线。
图7主机读数据时序
对从机来说,则为发送64位ID处理。程序处理的难点在于从机必须在15μs之前拉高或拉低总线,以供主机在15μs处采样总线。程序通过判断位地址00H处的状态来实现此功能。通过判断位地址01H处的状态来确定发送位0或发送位1。从机发送64位ID处理的中断服务程序流程如图8所示。
图8从机发送64位ID处理的中断服务程序流程
在完整地实现ROM功能的过程中,从机首先等待主机发送的复位脉冲,待检测到后发图9实现ROM功能的流程送存在脉冲应答。随后,从机开始接收主机发送的ROM命令,并将其保存,以判断随后的操作。,从机发送TM卡的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//从机发送TM卡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:DB0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度无人机驾驶员派遣及培训合同4篇
- 二零二五年度城市综合体幕墙设计施工合同4篇
- 2025年度城市商业圈门面房租赁及商业运营合同4篇
- 2025年度离婚后子女赡养费调整起诉合同
- 二零二五年度充电桩充电站安全教育与培训合同2篇
- 二零二五年度农产品电商平台技术开发合同11篇
- 二零二五年度协同设计软件销售合同规范文本2篇
- 2025年度民间借贷合同修改补充协议4篇
- 二零二五年度土地流转风险评估与管理合同
- 2025年度企业内部培训讲师选拔与培训合同3篇
- 2024-2025学年山东省潍坊市高一上册1月期末考试数学检测试题(附解析)
- 江苏省扬州市蒋王小学2023~2024年五年级上学期英语期末试卷(含答案无听力原文无音频)
- 数学-湖南省新高考教学教研联盟(长郡二十校联盟)2024-2025学年2025届高三上学期第一次预热演练试题和答案
- 决胜中层:中层管理者的九项修炼-记录
- 幼儿园人民币启蒙教育方案
- 单位就业人员登记表
- 卫生监督协管-医疗机构监督
- 记录片21世纪禁爱指南
- 腰椎间盘的诊断证明书
- 移动商务内容运营(吴洪贵)任务七 裂变传播
- 单级倒立摆系统建模与控制器设计
评论
0/150
提交评论