我正在努力了解NFC背后的技术。我对协议,技术背后的物理特性以及它为可能存在的广泛应用带来的巨大力量有了基本的了解。
现在,我正在尝试了解支持NFC的设备(可能是智能手机)可以运行的不同模式。
我了解该设备可能扮演读者/作者或卡(卡片模拟器)的角色。但是,我不明白需要具备发起人和目标操作模式?
我的理解是: -
在2个支持NFC的设备之间的被动通信模式中,一个设备占用活动角色(因此充当读取器/写入器)而另一个设备占据被动角色(因此充当卡仿真器)。
我们知道有源设备(在2个NFC设备之间的被动通信模式下)是创建RF场并不断轮询以找出附近的NFC设备,它们已准备好充当卡模拟器。
因此,作为有源设备(承担读写器角色)的设备是否会成为通信的发起者,这不仅是显而易见的吗?当可以从**读者/作者或卡角色轻松推断时,为什么需要单独的启动器和目标**模式?
答案 0 :(得分:2)
你做得对:
目标和发起者之间的区别仅在点对点通信模式(又称Android Beam)中具有重要意义。在这种模式下,一个设备为该字段供电,其作用类似于读卡器/写卡器。这是发起者。另一个设备接管目标角色,技术上就像卡片仿真一样。
目标和发起者之间的差异在实现对等功能的LLCP协议中很重要。原因是,目标无法自行发送数据。首先必须向发起人询问是否要发送内容。
LLCP协议(以及其他内容)抽象出这种差异,并让发起者定期轮询目标。如果您在此协议之上(或协议堆栈中的任何位置)编写通信代码,则不必再担心目标/启动器模式。
为了完整起见,这里也是点对点的操作模式,其中两个设备正在为该字段供电(称为活动模式),但这很少使用,因为对它的支持不是那么好。
回答您的问题:
为什么需要单独的启动器和目标**模式 从**读者/作者或卡片角色轻松推断
命名是为了避免混淆。以对等启动器模式为例:从技术上讲,它与读写器模式的95%相同,但仍存在一些细微差别。您不希望您的对等发起者连接到真实卡,而只是连接到点对点目标。例如。
命名此模式启动器而不是读取器/写入器可避免混淆。