gpt4 book ai didi

android - NFC操作模式困惑

转载 作者:行者123 更新时间:2023-12-02 10:17:56 24 4
gpt4 key购买 nike

我正在尝试了解 NFC 背后的技术。我对协议(protocol)、技术背后的物理原理以及它为广泛的应用带来的巨大力量有基本的了解。

现在我试图了解支持 NFC 的设备(可能是智能手机)可以运行的不同模式。

我了解该设备可能充当读取器/写入器卡(卡模拟器)的角色。但是,我不明白的是,需要什么发起者目标操作模式?

我的理解是:-

在 2 个支持 NFC 的设备之间的被动通信模式中,一个设备扮演主动角色(因此充当读取器/写入器),另一台设备扮演被动角色(因此充当卡模拟器)。

我们知道主动设备(在 2 个 NFC 设备之间的被动通信模式下)会创建 RF 场并不断轮询以找出附近已准备好充当卡模拟器的支持 NFC 的设备。

那么,充当 Activity 设备(充当读取器/写入器角色)的设备就是通信的发起者,这不是很明显吗?当可以从**读取器/写入器或卡角色轻松推断出它时,为什么需要单独的发起者和目标**模式?

最佳答案

你说得对:

目标和发起者之间的区别仅在点对点通信模式(又名 Android Beam)中才有意义。在此模式下,一个设备为现场供电并充当读卡器/写卡器。这就是始作俑者。另一个设备接管目标角色,从技术上讲就像卡模拟一样。

目标和发起者之间的差异在实现点对点功能的 LLCP 协议(protocol)中非常重要。原因是目标无法自行发送数据。首先必须询问发起者是否要发送某些内容。

LLCP 协议(protocol)(​​除其他外)抽象了这种差异,并让发起者定期轮询目标。如果您在此协议(protocol)之上(或协议(protocol)栈中更高的任何位置)编写通信代码,您根本不必再担心目标/启动器模式。

为了完整起见,这里还有一种点对点操作模式,其中两个设备为现场供电(称为主动模式),但很少使用,因为对其支持不是很好。

回答您的问题:

Why is a separate initiator and target ** mode required when it can be inferred easily from the **reader/writer or card role

命名是为了避免混淆。以点对点启动器模式为例:它在技术上与读取器/写入器模式有 95% 相同,但仍存在一些细微差别。例如,您不希望点对点启动器连接到真实卡,而只连接到点对点目标。

命名此模式启动器而不是读取器/写入器可以避免混淆。

关于android - NFC操作模式困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27188270/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com