# meter模块 | 状态 |最后更新 | API版本 | | ------ | ------ | ------ | | Active | 2019-11-14 | V1.00.00 | ## 描述 访问板载的电流电压表。 ## meter.setDataSource() ### 描述 设置读数的数据源。 ### 参数 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | <dataSource> | number| meter.INSTANT meter.FILTERSTAGE1 meter.FILTERSTAGE2 |指定数据源| - `meter.INSTANT`: 设置读数到瞬间读数, 每1ms刷新一次。 - `meter.FILTERSTAGE1` : 设置读数到FILTERSTAGE1,该阶段读数为瞬间读数的平均值, 但平均周期由用户设置决定,推荐用于一般的读数显示。 - `meter.FILTERSTAGE2` : 设置读数到FILTERSTAGE2,这个读数是在FILTERSTAGE1的基础上的滤波, 推荐用于要求稳定的读数显示。 如果不是为了显示,推荐使用`meter.INSTANT`作为数据源,因为它提供快速且在大多数应用情形下足够准确的读数。`meter.FILTERSTAGE1`和`meter.FILTERSTAGE2`的刷新率由用户设定而定. ### 返回值 nil ### 调用例 ```lua meter.setDataSource(meter.INSTANT) ``` ## meter.readVoltage() ### 描述 读取伏特为单位的电压读数。 ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | voltage | number| 0~36 |电压读数| ### 调用例 ```lua voltage = meter.readVoltage() ``` ## meter.readCurrent() ### 描述 读取安培为单位的电流读数. 请注意为了显示便利性,该读数已经过绝对值处理。如果您需要获得电流方向, 请调用 `meter.readCurrentDirection()`. ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | current | number| 0~6 |电流读数| ### 调用例 ```lua current = meter.readCurrent() ``` ## meter.readPower() ### 描述 读取瓦特为单位的功率读数. 请注意为了显示便利性,该读数已经过绝对值处理。 ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | power | number| 0~6 |功率读数| ### 调用例 ```lua power = meter.readPower() ``` ## meter.readDP() ### 描述 读取以伏特为单位的DP电压。 ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | v_dp | number| 0~3.3 |DP电压读数| ### 调用例 ```lua dp = meter.readDP() ``` ## meter.readDM() ### 描述 读取以伏特为单位的DM电压。 ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | v_dm | number| 0~3.3 |DM电压读数| ### 调用例 ```lua dp = meter.readDM() ``` ## meter.readCurrentDirection() ### 描述 获取电流的方向。如果电流为逆向,则返回值为true,也即电流从输出口回流到输入口,反之亦然。 ### 参数 nil ### 返回值 | 名称 | 类型 | 范围 | 用途 | | ------ | ------ | ------ | ------ | | dir | boolean| |方向| ### 调用例 ```lua dir = meter.readCurrentDirection() ```