跳转至

ndef

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef.h"
#include "include/middleware/services/nfc/controller/nfc_ndef_t2t.h"
#include "include/middleware/services/nfc/controller/nfc_ndef_t3t.h"
#include "include/middleware/services/nfc/controller/nfc_ndef_t4t.h"
#include "include/middleware/services/nfc/controller/nfc_ndef_t5t.h"

接口清单

接口名称 功能简述
NFC_NDEF_T2TResetProc T2T NDEF模块状态重置
NFC_NDEF_T2TReadProc T2T NDEF读流程,读取标签NDEF数据
NFC_NDEF_T2TWriteProc T2T NDEF写流程,写入标签NDEF数据
NFC_NDEF_T4TResetProc T4T NDEF模块状态重置
NFC_NDEF_T4TReadProc T4T NDEF读流程,读取标签NDEF数据
NFC_NDEF_T4TWriteProc T4T NDEF写流程,写入标签NDEF数据
NFC_NDEF_T3TResetProc T3T NDEF模块状态重置
NFC_NDEF_T3TReadProc T3T NDEF读流程,读取标签NDEF数据
NFC_NDEF_T3TWriteProc T3T NDEF写流程,写入标签NDEF数据
NFC_NDEF_ResetProc TAG NDEF模块状态重置
NFC_NDEF_ReadProc TAG NDEF读流程,读取标签NDEF数据
NFC_NDEF_WriteProc TAG NDEF写流程,写入标签NDEF数据
NFC_NDEF_T5TResetProc T5T NDEF模块状态重置
NFC_NDEF_T5TReadProc T5T NDEF读流程,读取标签NDEF数据
NFC_NDEF_T5TWriteProc T5T NDEF写流程,写入标签NDEF数据

Functions

NFC_NDEF_T2TResetProc

void NFC_NDEF_T2TResetProc(void)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t2t.h"

功能说明

  • T2T NDEF模块状态重置接口,用于将T2T标签的NDEF处理模块恢复到初始状态
  • 调用后清除T2T NDEF模块内部缓存及状态标记,为后续读写操作做准备
  • 在开始新的NDEF读写流程之前调用,确保模块处于已知初始状态

NFC_NDEF_T2TReadProc

NfcErrorCode NFC_NDEF_T2TReadProc(uint8_t *readBuff, uint16_t *readLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t2t.h"

功能说明

  • T2T标签NDEF数据读取接口,从T2T类型标签中读取NDEF格式数据
  • 输入参数readLen表示缓冲区大小,输出参数readLen表示实际读取到的NDEF数据长度
  • 返回NFC_OK表示读取成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
readBuff uint8_t * 用于接收数据的存储空间 非NULL,指向的内存空间已申请成功
readLen uint16_t * 作为输入参数,代表存储空间的大小;作为输出参数,代表所读NDEF内容的大小 非NULL,输入值表示缓冲区大小

出参

名称 数据类型 输出说明
readBuff uint8_t * 读取到的NDEF数据内容
readLen uint16_t * 实际读取到的NDEF数据长度

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T2T NDEF数据读取成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T2TWriteProc

NfcErrorCode NFC_NDEF_T2TWriteProc(const uint8_t *writeBuff, uint16_t writeLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t2t.h"

功能说明

  • T2T标签NDEF数据写入接口,将NDEF格式数据写入T2T类型标签
  • 输入参数writeBuff指定待写入的数据内容,writeLen指定写入数据的字节长度
  • 返回NFC_OK表示写入成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
writeBuff const uint8_t * 所要写入的内容 非NULL
writeLen uint16_t 写入内容的大小 大于0

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T2T NDEF数据写入成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T4TResetProc

void NFC_NDEF_T4TResetProc(void)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t4t.h"

功能说明

  • T4T NDEF模块状态重置接口,用于将T4T标签的NDEF处理模块恢复到初始状态
  • 调用后清除T4T NDEF模块内部缓存及状态标记,为后续读写操作做准备
  • 在开始新的NDEF读写流程之前调用,确保模块处于已知初始状态

NFC_NDEF_T4TReadProc

NfcErrorCode NFC_NDEF_T4TReadProc(uint8_t *readBuff, uint16_t *readLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t4t.h"

功能说明

  • T4T标签NDEF数据读取接口,从T4T类型标签中读取NDEF格式数据
  • 输入参数readLen表示缓冲区大小,输出参数readLen表示实际读取到的NDEF数据长度
  • 返回NFC_OK表示读取成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
readBuff uint8_t * 用于接收数据的存储空间 非NULL,指向的内存空间已申请成功
readLen uint16_t * 作为输入参数,代表存储空间的大小;作为输出参数,代表所读NDEF内容的大小 非NULL,输入值表示缓冲区大小

出参

名称 数据类型 输出说明
readBuff uint8_t * 读取到的NDEF数据内容
readLen uint16_t * 实际读取到的NDEF数据长度

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T4T NDEF数据读取成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T4TWriteProc

NfcErrorCode NFC_NDEF_T4TWriteProc(const uint8_t *writeBuff, uint16_t writeLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t4t.h"

功能说明

  • T4T标签NDEF数据写入接口,将NDEF格式数据写入T4T类型标签
  • 输入参数writeBuff指定待写入的数据内容,writeLen指定写入数据的字节长度
  • 返回NFC_OK表示写入成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
writeBuff const uint8_t * 所要写入的内容 非NULL
writeLen uint16_t 写入内容的大小 大于0

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T4T NDEF数据写入成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T3TResetProc

NfcErrorCode NFC_NDEF_T3TResetProc(const NfcTechFParams *param)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t3t.h"

功能说明

  • T3T NDEF模块状态重置接口,用于将T3T标签的NDEF处理模块恢复到初始状态
  • 需要传入F技术的参数结构体,用于初始化T3T NDEF模块的通信参数
  • 返回NFC_OK表示重置成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
param const NfcTechFParams * F技术的参数结构体 非NULL

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T3T NDEF模块重置成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T3TReadProc

NfcErrorCode NFC_NDEF_T3TReadProc(uint8_t *readBuff, uint16_t *readLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t3t.h"

功能说明

  • T3T标签NDEF数据读取接口,从T3T类型标签中读取NDEF格式数据
  • 输入参数readLen表示缓冲区大小,输出参数readLen表示实际读取到的NDEF数据长度
  • 返回NFC_OK表示读取成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
readBuff uint8_t * 用于接收数据的存储空间 非NULL,指向的内存空间已申请成功
readLen uint16_t * 作为输入参数,代表存储空间的大小;作为输出参数,代表所读NDEF内容的大小 非NULL,输入值表示缓冲区大小

出参

名称 数据类型 输出说明
readBuff uint8_t * 读取到的NDEF数据内容
readLen uint16_t * 实际读取到的NDEF数据长度

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T3T NDEF数据读取成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T3TWriteProc

NfcErrorCode NFC_NDEF_T3TWriteProc(const uint8_t *writeBuff, uint16_t writeLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t3t.h"

功能说明

  • T3T标签NDEF数据写入接口,将NDEF格式数据写入T3T类型标签
  • 输入参数writeBuff指定待写入的数据内容,writeLen指定写入数据的字节长度
  • 返回NFC_OK表示写入成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
writeBuff const uint8_t * 所要写入的内容 非NULL
writeLen uint16_t 写入内容的大小 大于0

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T3T NDEF数据写入成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_ResetProc

NfcErrorCode NFC_NDEF_ResetProc(const NfcIntfActInfo *nfcIntfActInfo)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef.h"

功能说明

  • TAG NDEF统一重置接口,根据NFC接口激活信息中携带的技术类型,分发到对应标签类型的NDEF重置流程
  • 输入参数nfcIntfActInfo包含接口激活时的技术参数,用于确定当前标签类型
  • 返回NFC_OK表示重置成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
nfcIntfActInfo const NfcIntfActInfo * NFC接口激活信息结构体 非NULL

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 TAG NDEF模块重置成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_ReadProc

NfcErrorCode NFC_NDEF_ReadProc(uint8_t *ndefBuff, uint16_t *ndefLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef.h"

功能说明

  • TAG NDEF统一读取接口,从当前已激活的NFC标签中读取NDEF格式数据
  • 输入参数ndefLen表示缓冲区大小,输出参数ndefLen表示实际读取到的NDEF数据长度
  • 返回NFC_OK表示读取成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
ndefBuff uint8_t * 用于接收数据的存储空间 非NULL,指向的内存空间已申请成功
ndefLen uint16_t * 作为输入参数,代表存储空间的大小;作为输出参数,代表所读NDEF内容的大小 非NULL,输入值表示缓冲区大小

出参

名称 数据类型 输出说明
ndefBuff uint8_t * 读取到的NDEF数据内容
ndefLen uint16_t * 实际读取到的NDEF数据长度

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 TAG NDEF数据读取成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_WriteProc

NfcErrorCode NFC_NDEF_WriteProc(const uint8_t *ndefBuff, uint16_t ndefLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef.h"

功能说明

  • TAG NDEF统一写入接口,将NDEF格式数据写入当前已激活的NFC标签
  • 输入参数ndefBuff指定待写入的数据内容,ndefLen指定写入数据的字节长度
  • 返回NFC_OK表示写入成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
ndefBuff const uint8_t * 所要写入的内容 非NULL
ndefLen uint16_t 写入内容的大小 大于0

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 TAG NDEF数据写入成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T5TResetProc

NfcErrorCode NFC_NDEF_T5TResetProc(const NfcTechVParams *param)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t5t.h"

功能说明

  • T5T NDEF模块状态重置接口,用于将T5T标签的NDEF处理模块恢复到初始状态
  • 需要传入V技术的参数结构体,用于初始化T5T NDEF模块的通信参数
  • 返回NFC_OK表示重置成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
param const NfcTechVParams * V技术的参数结构体 非NULL

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T5T NDEF模块重置成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T5TReadProc

NfcErrorCode NFC_NDEF_T5TReadProc(uint8_t *readBuff, uint16_t *readLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t5t.h"

功能说明

  • T5T标签NDEF数据读取接口,从T5T类型标签中读取NDEF格式数据
  • 输入参数readLen表示缓冲区大小,输出参数readLen表示实际读取到的NDEF数据长度
  • 返回NFC_OK表示读取成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
readBuff uint8_t * 用于接收数据的存储空间 非NULL,指向的内存空间已申请成功
readLen uint16_t * 作为输入参数,代表存储空间的大小;作为输出参数,代表所读NDEF内容的大小 非NULL,输入值表示缓冲区大小

出参

名称 数据类型 输出说明
readBuff uint8_t * 读取到的NDEF数据内容
readLen uint16_t * 实际读取到的NDEF数据长度

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T5T NDEF数据读取成功
Other 其他错误码,参考NfcErrorCode 执行失败

NFC_NDEF_T5TWriteProc

NfcErrorCode NFC_NDEF_T5TWriteProc(const uint8_t *writeBuff, uint16_t writeLen)

头文件清单

#include "include/middleware/services/nfc/controller/nfc_ndef_t5t.h"

功能说明

  • T5T标签NDEF数据写入接口,将NDEF格式数据写入T5T类型标签
  • 输入参数writeBuff指定待写入的数据内容,writeLen指定写入数据的字节长度
  • 返回NFC_OK表示写入成功,其他值表示失败

入参

名称 参数类型 详细说明 约束取值范围
writeBuff const uint8_t * 所要写入的内容 非NULL
writeLen uint16_t 写入内容的大小 大于0

返回值

返回值 文字含义 触发场景
NFC_OK(0x00) 执行成功 T5T NDEF数据写入成功
Other 其他错误码,参考NfcErrorCode 执行失败

Type definitions

NfcErrorCode

typedef uint32_t NfcErrorCode;

使用说明

NFC模块错误码类型定义,在NFC_NDEF_T2TReadProc、NFC_NDEF_T2TWriteProc、NFC_NDEF_T4TReadProc、NFC_NDEF_T4TWriteProc、NFC_NDEF_T3TResetProc、NFC_NDEF_T3TReadProc、NFC_NDEF_T3TWriteProc、NFC_NDEF_ResetProc、NFC_NDEF_ReadProc、NFC_NDEF_WriteProc、NFC_NDEF_T5TResetProc、NFC_NDEF_T5TReadProc、NFC_NDEF_T5TWriteProc接口中作为返回值类型使用

Structures

NfcTechFParams

typedef struct {
    uint8_t bitRate;
    uint8_t sensfResLen;
    uint8_t sensfRes[SENSF_RES_MAX_LEN];
} NfcTechFParams;

成员说明

成员名称 数据类型 描述
bitRate uint8_t 技术F的速率
sensfResLen uint8_t 技术F的轮询感应回复长度
sensfRes uint8_t[SENSF_RES_MAX_LEN] 技术F的轮询感应回复,头部8个字节是NFCID2

NfcIntfActInfo

typedef struct {
    uint8_t interface;
    uint8_t protocol;
    uint8_t techMode;
    NfcTechParams techParams;
} NfcIntfActInfo;

成员说明

成员名称 数据类型 描述
interface uint8_t NCI接口,参考NFC_NCI_RF_INTERFACE_ENUM
protocol uint8_t NCI协议,参考NFC_NCI_RF_PROTOCOL_ENUM
techMode uint8_t NCI技术模式,参考NFC_NCI_RF_TECH_MODE_ENUM
techParams NfcTechParams NFC技术的参数联合体

NfcTechVParams

typedef struct {
    uint8_t resFlag;
    uint8_t dsfid;
    uint8_t uid[UID_LEN];
} NfcTechVParams;

成员说明

成员名称 数据类型 描述
resFlag uint8_t 回复的标记字节信息
dsfid uint8_t DSFID参数信息
uid uint8_t[UID_LEN] UID信息,长度参考UID_LEN

Associations

NfcTechParams

typedef union {
    NfcTechAParams a;
    NfcTechBParams b;
    NfcTechFParams f;
    NfcTechVParams v;
} NfcTechParams;
成员名称 类型 描述 接口使用逻辑
a NfcTechAParams 技术A的参数信息 NfcIntfActInfo结构体成员
b NfcTechBParams 技术B的参数信息 NfcIntfActInfo结构体成员
f NfcTechFParams 技术F的参数信息 NfcIntfActInfo结构体成员,NFC_NDEF_T3TResetProc入参引用
v NfcTechVParams 技术V的参数信息 NfcIntfActInfo结构体成员,NFC_NDEF_T5TResetProc入参引用

Macros

SENSF_RES_MAX_LEN

#define SENSF_RES_MAX_LEN         18

UID_LEN

#define UID_LEN                   8