This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RF430CL330H:专有文件

Guru**** 2521250 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/668366/rf430cl330h-proprietary-file

器件型号:RF430CL330H

大家好、很抱歉重复本主题。

您能解释一下如何使用专有文件传输到 NFC。

示例
(请访问 http://www.ti.com/lit/an/sloa208a/sloa208a.pdf

uint8_t files_example[]={
/* NDEF 标签应用程序名称*/
0xD2、0x76、0x00、0x00、0x85、 0x01、0x01、
/*功能容器 ID */
0xE1、0x03、/* NDEF ID */
0x00、0x17、/* CCLEN */
0x20、 /* Map 2.0版*/
0x00、0xF9、/* MLE */
0x00、0xF6、/* MLC */

0x04、// NDEF 文件的 T (NDEF 文件) TLV
0x06、// L
0xE1、0x04、//文件 ID
0x01、0xF4、//最大 NDEF - 500字节
0x00、// R
0x00、// W - 0x00 (可用写入功能)、0xFF (只读)

0x05、// T (专有文件) TLV (专有文件)
0x06、// L
0xE1、0x05、//文件 ID
0x00、0xFF、//最大 NDEF
0x00、// R
0x00、// W - 0x00 (可用写入功能)、0xFF (只读)

0xE1、0x04、
0x00、0x2E、//这两个字节被排除在文件长度计数之外
//文件头
0xD1、// NDEF 头
0x01、//记录名称的长度
0x2A、//有效载荷数据的长度
0x54、//记录名称的二进制编码- 0x54 (文本 RTD)
//有效载荷
0x02、//状态字节- UTF-8、两字节语言代码
0x65、0x6E、//语言代码-英语
0x4E、0x46、0x43、0x20、0x2D、 0x20、0x50、0x6f、0x77、0x65、
0x72、0x65、0x64、0x20、0x62、 0x79、0x20、0x54、0x65、0x78、
0x61、0x73、0x20、0x49、0x6E、 0x73、0x74、0x72、0x75、0x6D、
0x65、0x6E、0x74、0x73、0x20、 0x49、0x6E、0x63、0x2E、

0xE1、0x05、
//文件长度
0x00、0x29、//这两个字节不包括在文件长度计数中。
//文件头
0xD1、// NDEF 头
0x01、//记录名称长度
0x25、//有效载荷数据的长度
0x55、//记录名称的二进制编码- 0x55 (URI RTD)
//有效载荷
0x01、// URI 标识符代码- 0x01 = http://www。
0x74、0x69、0x2e、0x63、0x6f、 0x6d、0x2F、0x74、0x6f、0x6f、
0x6c、0x2F、0x44、0x4c、0x50、 0x2D、0x37、0x39、0x37、0x30、
0x41、0x42、0x50
、}; 

  1. 我是否正确地编写了消息?
  2. 在创建应用程序的 Android 应用程序时、将读取第二个文件、还是应将其考虑在内?
  3. 或者、使用其他类型的记录来传输字节数组是否更好?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Egor、

    1) 1)您需要参考 NFC 论坛规范以确保正确、但乍一看、这似乎没关系。

    2) 2)取决于 Android 应用我认为、我从未尝试读取多个文件、因此我不确定-这绝对是您自己开发 Android 应用的一个考虑因素。

    3) 3)不确定"字节阵列"是什么意思、但总的来说、如果您使用的不仅仅是 E104记录、如果我记对、它应该是专有记录、但 NFC 论坛规范也是定义这一点的原因。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ralph、感谢您的回复!

    按字节数组、我意味着这种消息:

    uint8_t ndef_file_hello_Kostya[]={
    /* NDEF 标签应用程序名称*/
    0xD2、0x76、0x00、0x00、0x85、 0x01、0x01、
    /*功能容器 ID */
    0xE1、0x03、/* NDEF ID */
    0x00、0x0F、/* CCLEN */
    0x20、 /* Map 2.0版*/
    0x00、0xF9、/* MLE */
    0x00、0xF6、/* MLC */
    
    0x04、 /*标签、文件控制 TLV (4 - NDEF)*/
    0x06、 /*长度、文件控制 TLV (6 -标签的数据字节*/
    0xE1、0x04、/*文件 ID */
    0x0B、0xDF、/*最大文件大小*/
    0x00、 /*读取访问*/
    0x00、 /*写入访问*/
    
    0xE1、0x04、/* NDEF 文件 ID */
    0x00、0x14、// NLEN:NDEF 长度*/
    0xD1、 /* MB (消息开始= 1)、
    ME (消息结束= 1)、
    CF (块标志= 0)、
    SR (短记录= 1)、
    IL (ID 长度= 0)、
    TNF (已知类型= 001)*/
    0x01、0x10、/*类型长度= 0x01、有效载荷长度= 0x10 */
    0x54、 /*类型= T (文本)*/
    0x02、 /*状态字节= UTF-8、两字节语言代码*/
    0x65、0x6E、/*语言代码-英语*/
    /*字节*/
    0x01、0x02、0x03、0x04、0x05、 0x06、0x07、0x08、0x09、0x0A、 0x0B、0x0C、0x0D、
    }; 

    这里的数据只是不代表任何文本消息的字节。 也就是说、传输数据的能力不会指示类型、状态、语言、但仅指示有用数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Egor、

    有多种方法可以满足您的需求、所有这些方法都需要读者/应用程序知道您通过了什么。 您当然可以通过文本 RTD 消息传递数据-但应用需要知道如何处理数据、而不仅仅是显示数据。 或者、我非常确信您可以制作专有 RTD、这也需要应用定制。

    实际上、您需要做的是获取 NFC 论坛文档并通读、其中将包含您所需的全部答案。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ralph、非常感谢您的回复!

    我会更加仔细地处理 NSF 论坛文档、我认为我将能够找到合适的解决方案来解决我的问题。