简体中文
简体中文
English
联系我们
注册
登录
layout空间导航

产测说明及示例

更新时间:2022-03-28 03:14:14下载pdf

产测即生产测试。目的是为了保证出厂产品的硬件功能全部正常,以及尽可能的检验产品的软件功能。

产测介绍

  • PCBA 测试

    指对贴装好电子元器件的 PCBA 电路板进行电气导通性及基于输入输出数值的检测。

  • 成品测试

    成品整机测试可以验证设备是否符合设计要求,性能、功能等是否满足标准,同时还可以发现产品问题以便纠正。

  • 老化测试

    老化测试是为了保障产品可以达到符合要求的合格率而进行的测试项目。为了提高产品的可靠性,几乎所有产品在出厂前都要先进行老化测试,目前为止还没有其它的替代方法。
    新产品需要考核新的元器件或整机的性能,因此需要更高的老化测试指标。
    老化测试使产品的缺陷在出厂前暴露,比如焊接点的可靠性、产品在设计、材料和工艺方面的各种缺陷等。老化使产品性能进入稳定区间后出厂,可以减少返修率。

产测在代码中的应用

本文主要介绍的是在 Tuya IoT SDK 中关于成品产测,告诉开发者如何使用涂鸦方案的成品产测入口函数如何使用的。本文并不会对成品产测的功能代码是如何实现的进行讲解,因为不同的产品由于其功能不一样产测的内容也是不一样的,所以成品产测的具体实现需要开发者根据实际的产品功能进行设计成品产测的功能。

在开始说明代码之前先简单介绍下产测流程:

再设备上电之后会先扫描周围 WiFi ,如果扫描到产测 WiFi ,设备就会进入产测模式。这里需要注意的是设备再配上网 15 分钟后,会关闭产测模式。产测路由有没有密码并不重要,设备并不会去连接产测路由。

修改产测路由名称

platforms/bk7231n/common/tuya_main.c 文件中找到 TEST_SSID 宏,可以通过修改这个宏去改变设备的产测路由名称。

#define TEST_SSID "tuya_mdev_test1"

产测配置函数

当设备在产测模式打开的情况下扫描到了产测路由,这时候会进入产测模式。需要先设置好产测函数等待后续满足条件后被调用,设置产测模式的函数原型如下:


VOID app_cfg_set(IN CONST GW_WF_CFG_MTHD_SEL mthd, APP_PROD_CB callback);

Parameters:

  • mthd: 工作模式
  • callback: 产测回调函数

Return:

  • None

通过阅读代码可以看到回调函数最终是在 scan_test_ssid() 函数中调用的。

STATIC BOOL_T scan_test_ssid(VOID)
{
	...
    if(app_prod_test) {
		...        
        app_prod_test(flag, ap->rssi);
    }
    
    return TRUE;
}

scan_test_ssid() 函数位于 device_init() 函数之前被执行,所以不能在 device_init() 函数中去设置产测回调函数。要在 scan_test_ssid() 函数之前设置好产测函数,可以在 app_init(); 函数中进行设置。

产测说明及示例

产测回调函数

该回调函数在进入产测模式后会被调用,函数原型如下:


typedef VOID_T (*APP_PROD_CB)(BOOL_T flag, SCHAR_T rssi);

Parameters:

  • flag: 判断该模组是否授权。
  • rssi: 产测路由信号强度。

Return:

  • None

成品产测的功能就是在该回调函数中实现的。在实现成品产测功能的时候需要注意有:

  • 判断该设备是否授权过。如果没有授权过,将来也是没有办法连入涂鸦 IoT 平台的。所以这时不应让设备进入成品产测,应让设备做出一些异常提示。
  • 当前设备处于弱网环境。可能是设备处于产测路由覆盖边缘,也可能是设备硬件方面的问题,这时也应让设备做出一些异常提示。通知相关人员进行检测确认问题,避免因为设备硬件问题导致用户体验不好。

应用实例

先开启产测路由,再给设备上电,当设备扫描到产测路由就会进入到产测模式。

点击到 GitHub 查看完整工程代码

产测说明及示例