1-wire系统中TM卡的单片机等效替换
[09-11 23:03:30] 来源:http://www.88dzw.com 单片机学习 阅读:8331次
文章摘要:下面是主机写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时刻释放总线,一般在t
1-wire系统中TM卡的单片机等效替换,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com下面是主机写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
《1-wire系统中TM卡的单片机等效替换》相关文章
- › 1-wire系统中TM卡的单片机等效替换
- › 为嵌入式应用选择合适的1-Wire®主机
- 在百度中搜索相关文章:1-wire系统中TM卡的单片机等效替换
- 在谷歌中搜索相关文章:1-wire系统中TM卡的单片机等效替换
- 在soso中搜索相关文章:1-wire系统中TM卡的单片机等效替换
- 在搜狗中搜索相关文章:1-wire系统中TM卡的单片机等效替换