Harmony OS – 标签NFC码流烧制

系统教程10个月前发布 whoami
48 0 0

Harmony OS - 标签NFC码流烧制

前言

随着物联网时代的兴起,人们对于生活的便捷和服务智能家具的要求也逐渐增高,万物互联的时代即将到来。接下来我便进入正题,讲讲蓝牙和wifi的NFC码流的烧制。

一、NFC的数据结构

首先我们先看下NFC的完整数据结构:

示例 (蓝牙):0336D2024268772001004800323845390081090037200685031417910306FC58FAA2ECB114114643353846414132454342311701029112464335384641413245434231FC58FAA2ECB1。

示例 (wifi):0336D202316877200100480032394851008109005720068504141791040600BFAFF22192140C303042464146463232313932170100910101。

 注:蓝牙项目MAC地址后面的固定值修改为:1411,wifi设备保持不变:140C)。

  • 蓝牙和wifi数据结构中加粗的部分为变化值,根据自己业务场景而变化,其他部分为固定值 ,下面拿蓝牙的数据举例:
  • 32384539:这个是Product ID(十六进制的转化)。
  • FC58FAA2ECB1: 这个是MAC地址。
  • 464335384641413245434231:这个是MAC十六进制的转化 (转换的时候不要加冒号)。
  • 464335384641413245434231FC58FAA2ECB1:这个是MAC十六进制转化+MAC地址 (注:此处有个问题就是,蓝牙和wifi项目,生成的码流,后面有的需要拼接,有的是不需要拼接,大家可以进行尝试,大家以拿到的码流格式为主,替换相应的部分,主要看DP平台申请的码流)。

ASCII码(十六进制转换)(​​ASCll码在线工具​​)。

Harmony OS - 标签NFC码流烧制

如何获取设备的MAC地址?

方法一

  • 可以通过华为智慧生活连接到设备,在设置里的设备信息里查看。

Harmony OS - 标签NFC码流烧制

方法二

  • 在华为应用市场搜索“BLE调试助手 ”。

Harmony OS - 标签NFC码流烧制

  • 打开”BLE调试助手“,此时会显示所有扫描到的蓝牙设备,MAC地址如图所示(红色箭头指向的就是MAC地址)。

Harmony OS - 标签NFC码流烧制

二、写入NFC标签数据

1、安装HW AirLink测试工具

下载AirLink安装包并安装

​ ​​AirLink测试工具下载​​。

Harmony OS - 标签NFC码流烧制

写入NFC码流

  • 首先准备好需要写入的NFC数据内容(NFC标签码流大家可以到华为BP平台的标签管理,获取NFC的标签码流)。

Harmony OS - 标签NFC码流烧制

  • 我这边提供一份码流,进行参照:

0336D2024268772001004800323845390081090037200685031417910306FC58FAA2ECB1140c4643353846414132454342311701029112464335384641413245434231FC58FAA2ECB1(注:码流最后加粗的部分,根据项目生成的码流为准,有的码流,需要拼接后面的MAC十六进制转和MAC地址,有的码流不需要,切记,如若出现拉不起原子化服务,可以尝试后面不拼接MAC十六进制转和MAC地址)。

注意事项:

  • 我们拿到NFC数据内容后,此时的码流是平台自动生成的默认码流,不能直接使用,需要根据自己的项目(Product ID和设备的MAC地址)进行十六进制转换,替换平台默认的码流(加粗的地方为替换部分)。

 步骤1. 启动AirLink工具:

Harmony OS - 标签NFC码流烧制

步骤2. 点击”add“,输入邀请码,b4zd8bz3,点击”OK“。

Harmony OS - 标签NFC码流烧制

步骤3. 点击NFC选项,进入NFC读写界面,选择”NFC WRITE“选项。

Harmony OS - 标签NFC码流烧制

步骤4. 写入NFC数据,需要勾选”byte code“选项,点击”置入缓存区“。

Harmony OS - 标签NFC码流烧制

注意事项

  • NFC数据内容前两个字节‘’ 03XX‘’要去除,将从D2XXXX开始,全部复制到输入框

列如:申请的码流“0336D202xxxxxxxFC58FAA2ECB1”,应输入“D202****xxxxxxxFC58FAA2ECB1**”否则写入失败

  • 我们第一次用AirLink工具烧制的时候,有概率出现,码流一直写入不成功,这时候我们只需要不勾选**”byte code“**选项,然后进行烧制,(如果还是弹写入失败,多试几次)就会显示写入成功,但是写入的码流是错误的(这个方法主要解决码流写入不成功问题)。
  • 接下来我们只需要用HiDotApplication工具把NFC标签烧录为空即可(具体看第三部分),然后用AirLink工具勾选**”byte code“**选项,把码流重新写入就可以了。
    注:大家每次烧制成功后,推荐用TagInfo工具查看下码流,是否烧制正确。

三、烧空NFC标签数据

前置条件:下载并安装HiDotApplication工具 ,工具已经放置在下放资源处了,需要的童鞋们自取哦。

Harmony OS - 标签NFC码流烧制

步骤1. 打开HiDotApplication工具 ,点击WRITE – GIDOT。

Harmony OS - 标签NFC码流烧制

步骤2. 点击进来后,把HiDot Version下的滑动条,滑动到 HIDOT 2.0,Input HiDot Record下的输入框为空不填,然后点击WRITE按钮,会出现Attach your tag to your handset! 提示然后把标签贴在手机上,出现 write success 表示烧制成功。

Harmony OS - 标签NFC码流烧制

Harmony OS - 标签NFC码流烧制

Harmony OS - 标签NFC码流烧制

注意: 此APP也可以烧制NFC标签,但是有两项注意事项

  • 此APP烧制新的(从未烧制过的)NFC标签时,烧制过程中,有时候会直接跳转到此APP的首页,烧制不成功,这时候就需要,本文的第二部分的AirLink工具进行烧制。
  • 如果你的NFC标签之前已经烧制过,然后用此APP重新烧制码流时,需要把码流前五个字节**“D202426877”**去除,然后烧制,如果不去除,烧制的码流就会出现错误 (详情请看第四部分)。

例如:烧制的码流“D202426877200100xxxxxxxFC58FAA2ECB1”,应输入“200100****xxxxxxxFC58FAA2ECB1**”。

注:HiDotApplication工具 ,大家可以把它,作为烧空NFC标签工具使用,如果要写入NFC码流推荐使用,AirLink工具。

Harmony OS - 标签NFC码流烧制

四、查看NFC码流

前置条件:下载并安装TagInfo工具 工具已经放置在下放资源处了,需要的童鞋们自取哦。

Harmony OS - 标签NFC码流烧制

步骤1. 打开TagInfo NFC查看工具 一直往右滑,下方出现Start按钮提示,然后点击。

Harmony OS - 标签NFC码流烧制

步骤2. 此页面往下滑,然后点击 I Accept 按钮。

Harmony OS - 标签NFC码流烧制

步骤3. 进入APP页面后,不用点击 “获取Google Play服务”,只需要点击背景,让他关闭即可,然后把NFC放到手机上,就可以读取NFC上写入的码流了。

Harmony OS - 标签NFC码流烧制

步骤4. APP读取码流后,点击NDEF 即可查看码流,(红线处为 产品的Product ID和MAC地址)大家根据自己的项目对照是否正确。

Harmony OS - 标签NFC码流烧制

解答:现在我来说一下,第三部分用HiDotApplication工具 烧制之前烧录过得NFC标签,为什么要去掉码流前五个字节**“D202426877”**,我给大家详细解答下。

  • 我们刚拿到新的NFC标签(从未烧录过的)我们用TagInfo工具进行查看,NDEF显示为空,如图:

Harmony OS - 标签NFC码流烧制

  • 当我们写入了NFC码流后,我们用TagInfo工具进行查看,NDEF显示为我们写入的正确码流(此码流后面没有拼接MAC十六进制转和MAC地址,详情请看本文第一部分,有详细说明),如图:
  • Harmony OS - 标签NFC码流烧制
  • 然后我们把NFC标签用HiDotApplication工具烧空,用TagInfo工具进行查看,你就会发现NDEF下的NDEF message里有前五个字节(我的理解是第一次烧录的时候,NFC标签会把前五个字节进行了保存) ,如若不删除前五个字节的话,用HiDotApplication工具进行烧制的话,你就会发现NDEF下的Record中编译就会出现错误,多了前五个字节,但是这个码流是不能用的。(大家可以看上图正确的码流写入进行对照)。

Harmony OS - 标签NFC码流烧制

Harmony OS - 标签NFC码流烧制

总结

本文主要是讲解如何使用工具烧录NFC码流和大家要注意的一些地方,希望这些能给你提供帮助。

​想了解更多关于开源的内容,请访问:​

​51CTO 开源基础软件社区​

​https://ost.51cto.com​​。

© 版权声明

相关文章