misc ==== .. _misc-1: misc ---- 模块功能:配置管理-序列号、IMEI、底层软件版本号、时钟、是否校准、飞行模式、查询电池电量等功能 misc.setClock(t, cbFnc) ~~~~~~~~~~~~~~~~~~~~~~~ 设置系统时间 - 参数 +-----------------------------------+-----------------------------------+ | 传入值类型 | 释义 | +===================================+===================================+ | table | t,系 | | | 统时间,格式参考:{year=2017,mon | | | th=2,day=14,hour=14,min=2,sec=58} | +-----------------------------------+-----------------------------------+ | function | **可选参 | | | 数,默认为\ ``nil``**\ ,cbFnc, | | | 设置结果回调函数,回调函数的调用 | | | 形式为:cnFnc(time,result),res | | | ult为true表示成功,false或者nil为 | | | 失败;time表示设置之后的系统时间 | | | ,table类型,例如{year=2017,mont | | | h=2,day=14,hour=14,min=19,sec=23} | +-----------------------------------+-----------------------------------+ - 返回值 nil - 例子 .. code:: lua misc.setClock({year=2017,month=2,day=14,hour=14,min=2,sec=58}) -------------- misc.getClock() ~~~~~~~~~~~~~~~ 获取系统时间 - 参数 无 - 返回值 table time,{year=2017,month=2,day=14,hour=14,min=19,sec=23} - 例子 .. code:: lua time = getClock() -------------- misc.getWeek() ~~~~~~~~~~~~~~ 获取星期 - 参数 无 - 返回值 number week,1-7分别对应周一到周日 - 例子 .. code:: lua week = misc.getWeek() -------------- misc.getCalib() ~~~~~~~~~~~~~~~ 获取校准标志 - 参数 无 - 返回值 bool calib, true表示已校准,false或者nil表示未校准 - 例子 .. code:: lua calib = misc.getCalib() -------------- misc.setSn(s, cbFnc) ~~~~~~~~~~~~~~~~~~~~ 设置SN - 参数 +-----------------------------------+-----------------------------------+ | 传入值类型 | 释义 | +===================================+===================================+ | string | s,新sn的字符串 | +-----------------------------------+-----------------------------------+ | function | **可 | | | 选参数,默认为\ ``nil``**\ ,cbF | | | nc,设置结果回调函数,回调函数的调 | | | 用形式为:cnFnc(result),result为 | | | true表示成功,false或者nil为失败 | +-----------------------------------+-----------------------------------+ - 返回值 nil - 例子 .. code:: lua misc.setSn("1234567890") misc.setSn("1234567890",cbFnc) -------------- misc.getSn() ~~~~~~~~~~~~ 获取模块序列号 - 参数 无 - 返回值 string sn,序列号,如果未获取到返回"“注意:开机lua脚本运行之后,会发送at命令去查询sn,所以需要一定时间才能获取到sn。开机后立即调用此接口,基本上返回”" - 例子 .. code:: lua sn = misc.getSn() -------------- misc.setImei(s, cbFnc) ~~~~~~~~~~~~~~~~~~~~~~ 设置IMEI - 参数 +-----------------------------------+-----------------------------------+ | 传入值类型 | 释义 | +===================================+===================================+ | string | s,新IMEI字符串 | +-----------------------------------+-----------------------------------+ | function | **可 | | | 选参数,默认为\ ``nil``**\ ,cbF | | | nc,设置结果回调函数,回调函数的调 | | | 用形式为:cnFnc(result),result为 | | | true表示成功,false或者nil为失败 | +-----------------------------------+-----------------------------------+ - 返回值 nil - 例子 .. code:: lua misc.setImei(”359759002514931”) -------------- misc.getImei() ~~~~~~~~~~~~~~ 获取模块IMEI - 参数 无 - 返回值 string,IMEI号,如果未获取到返回"“注意:开机lua脚本运行之后,会发送at命令去查询imei,所以需要一定时间才能获取到imei。开机后立即调用此接口,基本上返回”" - 例子 .. code:: lua imei = misc.getImei() -------------- misc.getVbatt() ~~~~~~~~~~~~~~~ 获取VBAT的电池电压 - 参数 无 - 返回值 number,电池电压,单位mv - 例子 .. code:: lua vb = getVbatt() -------------- misc.getVbus() ~~~~~~~~~~~~~~ 获取VBUS连接状态 - 参数 无 - 返回值 boolean,true表示VBUS连接,false表示未连接 - 例子 .. code:: lua vbus = getVbus() -------------- misc.getMuid() ~~~~~~~~~~~~~~ 获取模块MUID - 参数 无 - 返回值 string,MUID号,如果未获取到返回"“注意:开机lua脚本运行之后,会发送at命令去查询muid,所以需要一定时间才能获取到muid。开机后立即调用此接口,基本上返回”" - 例子 .. code:: lua muid = misc.getMuid() -------------- misc.openPwm(id, para1, para2) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 打开并且配置PWM(支持2路PWM,仅支持输出) - 参数 +-----------------------------------+-----------------------------------+ | 传入值类型 | 释义 | +===================================+===================================+ | number | id,PWM输出通道,仅支持0和10使 | | | 用MODULE_STATUS/GPIO_5引脚1使用GP | | | IO_13引脚,注意:上电的时候不要把 | | | GPIO_13 | | | 拉高到V_GLOBAL_1V8,否 | | | 则模块会进入校准模式,不正常开机 | +-----------------------------------+-----------------------------------+ | number | para1,当id为0时 | | | ,para1表示分频系数,最大值为102 | | | 4;分频系数和频率的换算关系为:频 | | | 率=25000000/para1;例如para1为500 | | | 时,频率为50000Hz当id为1时,para1 | | | 表示时钟周期,取值范围为0-7,仅支 | | | 持整数0-7分别对应125、250、500、 | | | 1000、1500、2000、2500、3000毫秒 | +-----------------------------------+-----------------------------------+ | number | para2,当id为0 | | | 时,para2表示占空比计算系数,最大 | | | 值为512;占空比计算系数和占空比的 | | | 计算关系为:占空比=para2/para1当 | | | id为1时,para2表示一个时钟周期内 | | | 的高电平时间,取值范围为1-15,仅 | | | 支持整数1-15分别对应15.6、31.2、 | | | 46.8、62、78、94、110、125、140、 | | | 156、172、188、200、218、234毫秒 | +-----------------------------------+-----------------------------------+ - 返回值 nil - 例子 .. code:: lua -- 通道0,频率为50000Hz,占空比为0.2: -- 频率为50000Hz,表示时钟周期为1/50000=0.00002秒=0.02毫秒=20微秒 -- 占空比表示在一个时钟周期内,高电平的时长/时钟周期的时长,本例子中的0.2就表示,高电平时长为4微秒,低电平时长为16微秒 misc.openPwm(0,500,100) -- 通道1,时钟周期为500ms,高电平时间为125毫秒: misc.openPwm(1,2,8) -------------- misc.closePwm(id) ~~~~~~~~~~~~~~~~~ 关闭PWM - 参数 +-----------------------------------+-----------------------------------+ | 传入值类型 | 释义 | +===================================+===================================+ | number | id,PWM输出通道,仅支持0和10使 | | | 用MODULE_STATUS/GPIO_5引脚1使用GP | | | IO_13引脚,注意:上电的时候不要把 | | | GPIO_13 | | | 拉高到V_GLOBAL_1V8,否 | | | 则模块会进入校准模式,不正常开机 | +-----------------------------------+-----------------------------------+ - 返回值 nil - 例子 无 --------------