0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

低功耗4G模组:Air780EP之fskv开发示例

青山老竹农 来源:jf_82863998 作者:jf_82863998 2024-11-01 07:28 次阅读

​今天我们学习合宙低功耗4G模组Air780EP的fskv开发示例。

一、简介

  • 兼容fdb的函数
  • 使用fdb的flash空间,启用时也会替代fdb库
  • 功能上与EEPROM是类似的

fskv与fdb的实现机制导致的差异

功能fskvfdb
value长度4096255
key长度6364
空间利用率(对比)较低较高
读取速度恒定脏数据影响速度,非恒定
写入数据恒定脏数据影响速度,非恒定
均衡擦除自动自动

二、环境准备

2.1 Air780EP开发板一套

三、程序介绍

3.1 API介绍

详细API介绍见:fskv-API

3.2 初始化kv数据库

fskv.init()

参数

返回值

返回值类型解释
boolean成功返回true,否则返回false

3.3 设置一对kv数据

fskv.set(key, value)

参数

传入值类型解释
stringkey的名称,必填,不能空字符串
string用户数据,必填,不能nil, 支持字符串/数值/table/布尔值, 数据长度最大4095字节

返回值

返回值类型解释
boolean成功返回true,否则返回false

3.4 设置table内的键值对数据

fskv.sett(key, skey, value)

参数

传入值类型解释
stringkey的名称,必填,不能空字符串
stringtable的key名称, 必填, 不能是空字符串
string用户数据,必填,支持字符串/数值/table/布尔值, 数据长度最大4095字节

返回值

返回值类型解释
boolean成功返回true,否则返回false/nil

3.5 根据key获取对应的数据

fskv.get(key, skey)

参数

传入值类型解释
stringkey的名称,必填,不能空字符串
string可选的次级key,仅当原始值为table时有效,相当于 fskv.get(key)[skey]

返回值

返回值类型解释
any存在则返回数据,否则返回nil

3.6 根据key删除数据

fskv.del(key)

参数

传入值类型解释
stringkey的名称,必填,不能空字符串

返回值

返回值类型解释
bool成功返回true,否则返回false

3.7 清空整个kv数据库

fskv.clear()

参数

返回值

返回值类型解释
bool成功返回true,否则返回false

3.8 kv数据库迭代器

fskv.iter()

参数

返回值

返回值类型解释
userdata成功返回迭代器指针,否则返回nil

3.9 kv迭代器获取下一个key

fskv.next(iter)

参数

传入值类型解释
userdatafskv.iter()返回的指针

返回值

返回值类型解释
string成功返回字符串key值, 否则返回nil

3.10 获取kv数据库状态

fskv.status()

参数

返回值

返回值类型解释
int已使用的空间,单位字节
int总可用空间, 单位字节
int总kv键值对数量, 单位个

四、实现流程

4.1 使用luatools工具下载固件和脚本到开发板中

4.2 通过luatools打印查看效果:

由上图可以看出,fskv支持存放布尔,数值,小数,字符串,等均可。还可以存放table类型的值。但不能存放nil, function, userdata, task类型的值。

五、常见问题

NVM坏了的话会不会影响fskv存储?

不同的flash互不影响。

​审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 4G
    4G
    +关注

    关注

    15

    文章

    5519

    浏览量

    119014
  • 低功耗
    +关注

    关注

    10

    文章

    2399

    浏览量

    103683
  • 模组
    +关注

    关注

    6

    文章

    1490

    浏览量

    30375
收藏 人收藏

    评论

    相关推荐

    4G模组Air780E的LuatOS开发位运算(bit)示例

    本文我要说的是低功耗4G模组Air780E的LuatOS开发,关于位运算(bit)示例,我将详细
    的头像 发表于 12-02 14:33 165次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780</b>E的LuatOS<b class='flag-5'>开发</b><b class='flag-5'>之</b>位运算(bit)<b class='flag-5'>示例</b>

    AT开发FOTA远程升级:Air780EP低功耗4G模组

    ​针对客户朋友的应用反馈,特编辑本篇文章:基于Air780EP模组AT开发的FOTA远程升级指南。
    的头像 发表于 10-25 17:31 326次阅读
    AT<b class='flag-5'>开发</b>FOTA远程升级:<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>

    AT开发HTTP应用:Air780EP低功耗4G模组

    ​ 已经写了一篇基于Air780EP模组AT开发的FOTA远程升级指南, 有客户朋友询问能否讲讲HTTP应用部分? 本期特别安排——涵盖HTTP基本应用流程、GET/POST/SSL请求示例
    的头像 发表于 10-25 17:29 346次阅读
    AT<b class='flag-5'>开发</b>HTTP应用:<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>

    Air780EP低功耗4G模组AT开发:阿里云应用

    Air780EP是合宙推出的一款低功耗4G全网通模组,兼容模组行业1618经典封装,支持OpenCPU
    的头像 发表于 10-25 17:28 249次阅读
    <b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b>:阿里云应用

    MQTT应用:Air780EP低功耗4G模组AT开发

    本文应各位大佬邀请,详细讲解Air780EP模组MQTT应用的多个AT命令。
    的头像 发表于 10-25 17:27 325次阅读
    MQTT应用:<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b>

    Air780EP低功耗4G模组AT开发示例:阿里云应用篇

    Air780EP是合宙推出的一款[低功耗4G全网通模组],兼容模组行业1618经典封装,支持OpenCPU
    的头像 发表于 10-14 14:22 949次阅读
    <b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b><b class='flag-5'>示例</b>:阿里云应用篇

    超实用!阿里云应用——Air780EP低功耗4G模组AT开发示例

    Air780EP是合宙推出的一款[低功耗4G全网通模组],兼容模组行业1618经典封装,支持OpenCPU
    的头像 发表于 10-08 09:55 1347次阅读
    超实用!阿里云应用——<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b><b class='flag-5'>示例</b>

    Air780EP低功耗4G模组—AT开发FOTA远程升级

    Air780EP是合宙推出的一款 低功耗4G全网通模组 ,兼容模组行业1618经典封装,支持OpenCPU
    的头像 发表于 10-07 20:36 338次阅读
    <b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>—AT<b class='flag-5'>开发</b>FOTA远程升级

    RNDIS网卡应用看这篇!合宙Air780EP低功耗4G模组AT开发示例

    Air780EP是合宙的低功耗4G模组之一,支持全系列的AT指令以及LuatOS脚本二次开发。 本文应各位大佬邀请,特别讲解
    的头像 发表于 09-30 06:59 565次阅读
    RNDIS网卡应用看这篇!合宙<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b><b class='flag-5'>示例</b>

    FTP应用看这篇!合宙Air780EP低功耗4G模组AT开发示例

    Air780EP是合宙的[低功耗4G模组]之一,支持全系列的AT指令以及LuatOS脚本二次开发。 本文应各位大佬邀请,详细讲解了
    的头像 发表于 09-29 09:36 1818次阅读
    FTP应用看这篇!合宙<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b><b class='flag-5'>示例</b>

    基站定位与Wi-Fi定位看这篇!合宙Air780EP低功耗4G模组AT开发示例

    Air780EP是合宙的[低功耗4G模组]之一,支持全系列的AT指令以及LuatOS脚本二次开发。 本文应各位大佬邀请,特别讲解
    的头像 发表于 09-25 07:26 492次阅读
    基站定位与Wi-Fi定位看这篇!合宙<b class='flag-5'>Air780EP</b><b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT<b class='flag-5'>开发</b><b class='flag-5'>示例</b>

    合宙低功耗4G模组Air780EP——硬件设计02

    合宙低功耗4G模组Air780EP——硬件设计
    的头像 发表于 09-03 15:07 676次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780EP</b>——硬件设计02

    合宙低功耗4G模组Air780EP——硬件设计01

    Air780EP是一款合宙低功耗LTECat1无线通信模组。 支持FDD-LTE/TDD-LTE的4G远距离无线 传输技术。 另外,模组提供
    的头像 发表于 09-02 16:47 1628次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780EP</b>——硬件设计01

    合宙低功耗4G模组Air780EP——产品规格书

    合宙低功耗4G模组Air780EP——产品规格信息介绍
    的头像 发表于 08-30 18:07 1366次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780EP</b>——产品规格书

    AT指令速通FTP:合宙Air780EP模块超详细教程

    合宙Air780EP低功耗4G模组AT开发接入FTP超详细示例
    的头像 发表于 08-20 17:40 2501次阅读
    AT指令速通FTP:合宙<b class='flag-5'>Air780EP</b>模块超详细教程