合宙Air724UG LuatOS-Air script lib API--nvm

这篇具有很好参考价值的文章主要介绍了合宙Air724UG LuatOS-Air script lib API--nvm。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

nvm
Table of Contents
nvm
nvm.init(defaultCfgFile, burnSave)
nvm.set(k, v, r, s)
nvm.sett(k, kk, v, r, s)
nvm.flush()
nvm.get(k)
nvm.gett(k, kk)
nvm.restore()
nvm.remove()
nvm
模块功能:参数管理

nvm.init(defaultCfgFile, burnSave)
初始化参数存储管理模块

参数
名称 传入值类型 释义
defaultCfgFile string 默认参数文件名
burnSave bool 本地烧录时是否保留已有参数,true为保留,false或者nil为清除
注意:在同一个项目,不同版本中,此参数必须保持前后版本一致
返回值
nil

例子
– 初始化参数存储管理模块,默认参数文件名为config.lua,本地烧录时清除已有的参数:
nvm.init(“config.lua”)
– 初始化参数存储管理模块,默认参数文件名为config.lua,本地烧录时保留已有的参数:
nvm.init(“config.lua”,true)
详细指南和示例参考:指南 示例

nvm.set(k, v, r, s)
设置某个参数的值

参数
名称 传入值类型 释义
k string 参数名
v param 参数的新值,仅支持number、string、boolean、table类型
r param 设置原因,如果传入了非nil的有效参数,并且v值和旧值相比发生了改变,
会产生一个PARA_CHANGED_IND内部消息,携带 k,v,r 3个参数
s param 是否立即写入到文件系统中,false不写入,其余的都写入
返回值
bool或者nil,成功返回true,失败返回nil

例子
– 参数name赋值为Luat,立即写入文件系统:
nvm.set(“name”,“Luat”)
– 参数age赋值为12,立即写入文件系统:
– 如果旧值不是12,会产生一个PARA_CHANGED_IND消息,携带 “age”,12,“SVR” 3个参数:
nvm.set(“age”,12,“SVR”)
– 参数class赋值为Class2,不写入文件系统:
nvm.set(“class”,“Class2”,nil,false)
– 参数score赋值为{chinese=100,math=99,english=98},立即写入文件系统:
nvm.set(“score”,{chinese=100,math=99,english=98})
– 连续写入4个参数,前3个不保存到文件系统中,写第4个时,一次性全部保存到文件系统中:
nvm.set(“para1”,1,nil,false)
nvm.set(“para2”,2,nil,false)
nvm.set(“para3”,3,nil,false)
nvm.set(“para4”,4)
详细指南和示例参考:指南 示例

nvm.sett(k, kk, v, r, s)
设置某个table类型参数的某一个索引的值

参数
名称 传入值类型 释义
k string table类型的参数名
kk param table类型参数的某一个索引名
v param table类型参数的某一个索引的新值
r param 设置原因,如果传入了非nil的有效参数,并且v值和旧值相比发生了改变,会产生一个TPARA_CHANGED_IND消息,携带k,kk,v,r4个参数
s param 是否立即写入到文件系统中,false不写入,其余的都写入
返回值
bool或者nil,成功返回true,失败返回nil

例子
nvm.sett(“score”,“chinese”,100),参数score[“chinese”]赋值为100,立即写入文件系统
nvm.sett(“score”,“chinese”,100,“SVR”),参数score[“chinese”]赋值为100,立即写入文件系统,
– 如果旧值不是100,会产生一个TPARA_CHANGED_IND消息,携带 “score”,“chinese”,100,“SVR” 4个参数
nvm.sett(“score”,“chinese”,100,nil,false),参数class赋值为Class2,不写入文件系统
详细指南和示例参考:指南 示例

nvm.flush()
所有参数立即写入文件系统

参数

返回值
nil

例子
nvm.flush()
nvm.get(k)
读取某个参数的值

参数
名称 传入值类型 释义
k string 参数名
返回值
参数值

例子
– 读取参数名为name的参数值:
nameValue = nvm.get(“name”)
详细指南和示例参考:指南 示例

nvm.gett(k, kk)
读取某个table类型参数的键名对应的值

参数
名称 传入值类型 释义
k string table类型的参数名
kk param table类型参数的键名
返回值

例子
– 有一个table参数为score,数据如下:
score = {chinese=100, math=100, english=95}
– 读取score中chinese对应的值:
nvm.gett(“score”,“chinese”)
详细指南和示例参考:指南 示例

nvm.restore()
参数恢复出厂设置

参数

返回值
nil

例子
nvm.restore()
详细指南和示例参考:指南 示例

nvm.remove()
请求删除参数文件.

此接口一般用在远程升级时,需要用新的config.lua覆盖原来的参数文件的场景,在此场景下,远程升级包下载成功后,在确定要重启前调用此接口
下次开机执行nvm.init(“config.lua”)时,会用新的config.lua文件自动覆盖参数文件;以后再开机就不会自动覆盖了
也就是说"nvm.remove()->重启->nvm.init(“config.lua”)"是一个仅执行一次的完整操作

参数

返回值
nil

例子
nvm.remove()
详细指南和示例参考:指南 示例文章来源地址https://www.toymoban.com/news/detail-627981.html

到了这里,关于合宙Air724UG LuatOS-Air script lib API--nvm的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 合宙Air724UG LuatOS-Air script lib API--utils

    utils Table of Contents utils string.toHex(str, separator) string.fromHex(hex) string.utf8Len(str) string.utf8ToTable(str) string.rawurlEncode(str) string.urlEncode(str) table.gsort(t, f) table.rconcat(l) string.formatNumberThousands(num) string.split(str, delimiter) io.exists(path) io.readFile(path) io.writeFile(path, content, mode) io.pathInfo(path) io.fil

    2024年02月12日
    浏览(29)
  • 合宙Air724UG LuatOS-Air script lib API--websocket

    websocket Table of Contents websocket websocket.new(url, cert) ws:on(event, callback) ws:connect(timeout) ws:sendFrame(fin, opcode, data) ws:recv() ws:close(code, reason) websocket.exit(ws) ws:state() ws:online() ws:start(keepAlive, proc, reconnTime) websocket 模块功能:websocket客户端 websocket.new(url, cert) 创建 websocket 对象 参数 名称 传入

    2024年02月12日
    浏览(27)
  • 合宙Air724UG LuatOS-Air script lib API--socket

    Table of Contents socket socket.isReady() socket.tcp(ssl, cert, tCoreExtPara) socket.udp() socket.setTcpResendPara(retryCnt, retryMaxTimeout) socket.setDnsParsePara(retryCnt, retryTimeoutMulti) socket.printStatus() socket.setLowPower™ socket 模块功能:数据链路激活、SOCKET管理(创建、连接、数据收发、状态维护) socket.isReady() SOC

    2024年02月13日
    浏览(31)
  • 合宙Air724UG LuatOS-Air script lib API--socketCh395

    socketCh395 Table of Contents socketCh395 socketCh395.open(para) socketCh395.tcp(ssl, cert, tCoreExtPara) socketCh395.udp(localPort) mt:connect(address, port, timeout) mt:serverSelect(keepAlive, pingreq) mt:asyncSelect(keepAlive, pingreq) mt:serverSend(data, timeout) mt:serverRecv() mt:asyncSend(data, timeout) mt:asyncRecv() mt:send(data, timeout) mt:recv(ti

    2024年02月12日
    浏览(72)
  • 合宙Air724UG LuatOS-Air LVGL API--简介

    为何是 LVGL LVGL 是一个开源的图形库,它提供了创建嵌入式 GUI 所需的一切,具有易于使用的图形元素、漂亮的视觉效果和低内存占用的特点。 LVGL特点: 强大的 控件 :按钮、图表、列表、滑动条、图像等 高级图形引擎:动画、抗锯齿、不透明、平滑滚动、混合模式等 支持

    2024年02月12日
    浏览(28)
  • 合宙Air724UG LuatOS-Air LVGL API-概念

    概念 在 LVGL 中,用户界面的基本构建块是对象。例如,按钮,标签,图像,列表,图表或文本区域。 属性 基本属性 所有对象类型都共享一些基本属性: Position (位置) Size (尺寸) Parent (父母) Click enable (单击启用) 我们可以使用 lvgl.obj_set_… 和 lvgl.obj_get_… 等前缀的函数设置或

    2024年02月11日
    浏览(27)
  • 合宙Air724UG LuatOS-Air LVGL API--对象

    对象 概念 在 LVGL 中,用户界面的基本构建块是对象。例如,按钮,标签,图像,列表,图表或文本区域。 属性 基本属性 所有对象类型都共享一些基本属性: Position (位置) Size (尺寸) Parent (父母) Click enable (单击启用) 我们可以使用 lvgl.obj_set_… 和 lvgl.obj_get_… 等前缀的函数设

    2024年02月12日
    浏览(40)
  • 合宙Air724UG LuatOS-Air core API--qrencode

    qrencode Table of Contents qrencode qrencode.encode(data [,version,level]) qrencode 二维码生成 qrencode.encode(data [,version,level]) 二维码编码 参数 参数 类型 释义 取值 data string 需要编码的数据 string类型 version number 二维码版本 可选参数0-40 level number 二维码纠错等级 0-3 返回值 返回值 类型 释义 取值

    2024年02月12日
    浏览(37)
  • 合宙Air724UG LuatOS-Air LVGL API控件-截屏(Screenshots)

    截屏(Screenshots) 分 享导出pdf 截屏功能,core版本号要=3211 disp.screenshots 调用 disp.screenshots(name, x1, x2, y1, y2) 功能 截取显示屏指定区域图片 返回 0/-1 成功/失败 参数 name 文件路径名只支持bmp x1 水平初始值MIPI屏(0-479)/LCD屏(0-239) x2 水平结束值MIPI屏(x1-479)/LCD屏(x1-239)

    2024年02月07日
    浏览(33)
  • 合宙Air724UG LuatOS-Air LVGL API控件--容器 (Container)

    容器 (Container) 容器是 lvgl 相当重要的一个控件了,可以设置布局,容器的大小也会自动进行调整,利用容器可以创建出自适应成都很高的界面布局。 代码示例 – 创建容器 cont = lvgl.cont_create(lvgl.scr_act(), nil) lvgl.obj_set_auto_realign(cont, true) lvgl.obj_align(cont, nil, lvgl.ALIGN_CENTER, 0, 0)

    2024年02月10日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包