打印
[信息]

在使用sensortile过程中,license的使用

[复制链接]
1012|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 两只袜子 于 2020-12-14 09:37 编辑


1、在和其他的开发板过程中,遇到的一个问题就是license的使用。
在安装和使用的过程中,有一个申请证书的环节。那么分析一下这个原理。
2、首先需要确定的是这个license不是必须要申请的,只是在使用ST提供的姿态识别时才需要使用。

就是上面这几个高级的功能,在程序中,成为advanced功能的部分。和提供源码的部分不同的是,这些已经封装为库使用,不能直接编辑代码,需要查手册来使用其中的功能。当然,这些功能还是比较方便的,如识别double click,突然摔倒,还有携带位置的监测。这些非常适合可穿戴的应用,所以,可以非常神速地开发和部署传感器应用中比较难的部分,而且还能保证程序质量。
3、关于license,是免费提供,因为其中的申请是免费的,只要使用对应的申请软件就好。

这个license返回一封邮件,包括一组加密的数据,应该是结合板卡的特征值计算出来的。在程序中对这个payload进行赋值,以便后续使用。
4、那么在程序中,是需要如何使用这个license呢,那么是有一个payload,在调用这些自动识别的功能时,必须要先读取并校验这个license才能后续进行,代码虽长,不过逻辑很清楚,如下参考。
  • InitMetaDataManager((void *)known_OsxLic,MDM_DATA_TYPE_LIC,NULL);
  •   /* Enable all the osx Motion License found on Meta Data Manager */
  •   {
  •     int32_t Index=0;
  •     while(known_OsxLic[Index].LicEnum!=OSX_END) {
  •       MDM_PayLoadLic_t *PayLoad = (MDM_PayLoadLic_t *) MDM_LicTable[known_OsxLic[Index].LicEnum].Address;
  •       if(PayLoad->osxLicenseInitialized) {
  •         switch(known_OsxLic[Index].LicEnum) {
  •           case OSX_MOTION_FX:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mfx_license,PayLoad->osxLicense);
  •             MotionFX_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_AR:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mar_license,PayLoad->osxLicense);
  •             MotionAR_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_CP:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mcp_license,PayLoad->osxLicense);
  •             MotionCP_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_GR:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mgr_license,PayLoad->osxLicense);
  •             MotionGR_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_PM:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mpm_license,PayLoad->osxLicense);
  •             MotionPM_License_init(PayLoad);
  •           break;
  • #ifdef OSX_ENABLE_MOTIONID
  •           case OSX_MOTION_ID:
  •             MCR_OSX_COPY_LICENSE_FROM_MDM(osx_mid_license,PayLoad->osxLicense);
  •             MotionID_License_init(PayLoad);
  •           break;
  • #endif /* OSX_ENABLE_MOTIONID */
  •           default:
  •                 /* Only for removing the GCC warning */
  •             OSX_BMS_PRINTF("Should never reach this point...\r\n");
  •         }
  • #ifdef OSX_BMS_LICENSE_H_FILE
  •       } else {
  •         switch(known_OsxLic[Index].LicEnum) {
  •           case OSX_MOTION_FX:
  •             MotionFX_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_AR:
  •             MotionAR_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_CP:
  •             MotionCP_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_GR:
  •             MotionGR_License_init(PayLoad);
  •           break;
  •           case OSX_MOTION_PM:
  •             MotionPM_License_init(PayLoad);
  •           break;
  • #ifdef OSX_ENABLE_MOTIONID
  •           case OSX_MOTION_ID:
  •             MotionID_License_init(PayLoad);
  •           break;
  • #endif /* OSX_ENABLE_MOTIONID */
  •         }
  •       }
  • #else /* OSX_BMS_LICENSE_H_FILE */
  •       }
  • #endif /* OSX_BMS_LICENSE_H_FILE */
  •       Index++;
  •     }
  •   }


5、如果不打算使用这些库,要自己设计识别特征,或者就是直接读取参数,那么,这个license就可以不用,这段代码也可以不必嵌入在程序中。

125827m7t9lliz17tb6pcc.png.thumb.jpg (30.89 KB )

125827m7t9lliz17tb6pcc.png.thumb.jpg

130135yutfegehun8rbugz.png.thumb.jpg (31.13 KB )

130135yutfegehun8rbugz.png.thumb.jpg

使用特权

评论回复
沙发
内政奇才| | 2020-12-15 16:45 | 只看该作者
分析的很明了,赞!

使用特权

评论回复
板凳
wiba| | 2021-1-7 19:19 | 只看该作者
这是需要进行**的软件吗

使用特权

评论回复
地板
zljiu| | 2021-1-7 19:20 | 只看该作者
波形效果还是不错的

使用特权

评论回复
5
coshi| | 2021-1-7 19:22 | 只看该作者
这个license的有效期是多长啊

使用特权

评论回复
6
aoyi| | 2021-1-7 20:21 | 只看该作者
不用库的话 自己写代码费事吗

使用特权

评论回复
7
drer| | 2021-1-7 20:22 | 只看该作者
姿态识别是什么概念

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2055

主题

7458

帖子

10

粉丝