我是靠谱客的博主 飞快蜗牛,最近开发中收集的这篇文章主要介绍HCI -- NFCEE discover & Mode Set1 概述2  NFCEE ID3 NFC Discovery 过程4 NFCEE 状态5 NFCEE 供电与通信连接控制,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1 概述

术语:

           DH :  主机

           NFCEE : NFC 可执行环境

           NFCC: NFC控制器,可以理解为NFC芯片(比如NXP 的sn100, pn80T等)

分类:

  •     DH-NFCEE: 集成在DH上
  •     USIM-NFCEE:  唯一USIM上,一般通过SWP协议与NFCC相连
  •     eSE-NFCEE:  一般集成在NFCC上面
  •  

2  NFCEE ID

NFCEE ID: 由NFCEE discover过程中产生,ID为00固定分配给DH-NFCEE, ID为0x10-0x7F 分配给HCI网络外的NFCEE,ID为0x80-0xFE分配给HCI网络内的NFCEE(当前不支持)

NCI规范中NFCEE IDs定义如下:

3 NFC Discovery 过程

        DH -----> NFCC:   发送NFCEE_DISCOVER_CMD命令发现NFCC上连接的NFCEE

        NFCC----->DH:  NFCC收到NFCEE_DISCOVER_CMD后,向DH返回NFCEE_DISCOVER_RSP

NFCEE_DISCOVER_CMD 格式:

NFCEE_DISCOVER_RSP 格式:

  

 

       如果至少有一个NFCEE连接到NFCC上,那么对于每一个连接的NFCEE,NFCC都会向DH发送NFCEE_DISCOVER_NTF消息,如表10-49所示。该通告消息中包含NFCEE ID、NFCEE的状态、NFCEE所支持的协议,以及NFCEE的一些额外信息。在NFCEE发现过程中,如果NFCEE发现过程被开启,任何NFCEE的重新连接或移除都会通过NFCEE_DISCOVER_NTF消息通告给DH。如果NFCEE_DISCOVER_NTF中的NFCEE状态为0x02(NFCEE移出),NFCEE协议信息数将被设置为0,并且DH到该NFCEE的逻辑连接也将被自动关闭,相应的NFCEE接口(协议)立即被去激活。如果NFCEE发现过程被关闭,任何NFCEE状态的变化都不会向DH通知。

   NFCEE_DISCOVER_NTF 格式:           

 

NFCEE发现NTF中TLV
TLV
0x00nHardware / Registration Identification 
0x01nATR bytes
0x029-169T3T Command Set Interface Supplementary Information
0x031Host ID in the HCI Network
Indicates the Host ID assigned by the NFCC/Host Controller to this
NFCEE/Host, as defined in [ETSI_102622].
0x046
0x05-0x9F RFU
0xA0-0xFF  For proprietary use

On receipt of a valid NFCEE_DISCOVER_CMD, if the NFCC has not yet sent all the expected
NFCEE_ DISCOVER_NTFs for a previous NFCEE_DISCOVER_CMD, the NFCC SHALL
respond with NFCEE_DISCOVER_RSP with a Status of STATUS_SEMANTIC_ERROR.
Otherwise, the NFCC SHALL respond with NFCEE_DISCOVER_RSP with a Status of
STATUS_OK

如果NFCC 再次受到NFCEE_DISCOVER_CMD命令, 如果上一次的全部NFCEE_ DISCOVER_NTFs没有发送完成,NFCC将返回STATUS_SEMANTIC_ERROR

比如说: NFCC NFCEE_DISCOVER_RSP 说有3个NFCEE, 实际上报了2个NFCEE_ DISCOVER_NTF, 这时如果DH再次发送NFCEE_DISCOVER_CMD, 将报语法错误;

NFCEE 发现序列:

 

图片来源: https://docs.microsoft.com/zh-cn/windows-hardware/drivers/nfc/nfcee-discovery-sequence

éæ å nci nfcee åç°åºå

 

4 NFCEE 状态

After the NFCC has performed NCI initialization, the initial state of all NFCEEs SHALL be
disabled (NFCEE Status value set to 0x01).

NCI 初始化时,初始化所有的NFCEEs 状态(全部禁止)


If a new NFCEE is connected to the NFCC, the initial state of this NFCEE SHALL be disabled
(NFCEE Status value set to 0x01), or unresponsive (NFCEE Status value set to 0x02).

新的NFCEE链接到, 初始值也将设置为禁止状态或者unresponsive 状态

 

 

NFCEE状态转换:

5 NFCEE 供电与通信连接控制

DH可以通过NFCEE_POWER_AND_LINK_CNTRL_CMD指令设置NFCC与NFCEE之间的供电和连接控制

 

 

 

 

最后

以上就是飞快蜗牛为你收集整理的HCI -- NFCEE discover & Mode Set1 概述2  NFCEE ID3 NFC Discovery 过程4 NFCEE 状态5 NFCEE 供电与通信连接控制的全部内容,希望文章能够帮你解决HCI -- NFCEE discover & Mode Set1 概述2  NFCEE ID3 NFC Discovery 过程4 NFCEE 状态5 NFCEE 供电与通信连接控制所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部