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

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

3天内不再提示

4G 模组 fskv 开发示例 白嫖篇!

合宙LuatOS 来源:合宙LuatOS 作者:合宙LuatOS 2024-10-30 13:47 次阅读

今天我们学习的是低功耗4G模组Air780EP的fskv开发,让我们更了解它。

本文从简介,环境准备,程序介绍等来讲解整个示例:

1、简介

兼容fdb的函数

使用fdb的flash空间,启用时也会替代fdb库

功能上与EEPROM是类似的

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

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

2、环境准备

2.1 Air780EP开发板一套

3、程序介绍

3.1 API介绍

详细API介绍见:fskv-API

3.2 初始化kv数据库

fskv.init()

参数

返回值

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

3.3 设置一对kv数据

fskv.set(key, value)

参数

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

返回值

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

3.4 设置table内的键值对数据

fskv.sett(key, skey, value)

参数

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

返回值

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

3.5 根据key获取对应的数据

fskv.get(key, skey)

参数

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

返回值

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

3.6 根据key删除数据

fskv.del(key)

参数

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

返回值

返回值类型 解释
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)

参数

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

返回值

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

3.10 获取kv数据库状态

fskv.status()

参数

返回值

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

4、实现流程

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

wKgaomchyBaAYW_rAAJslYSHsFw933.png

4.2 通过luatools打印查看效果:

wKgZomchyC-AUtfxAAPROVzz5Kc568.png

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

5、常见问题

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

不同的flash互不影响。

审核编辑 黄宇

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

    关注

    15

    文章

    5533

    浏览量

    119644
  • 物联网
    +关注

    关注

    2914

    文章

    45014

    浏览量

    377936
  • 模组
    +关注

    关注

    6

    文章

    1527

    浏览量

    30660
收藏 人收藏

    评论

    相关推荐

    掌握4G模组PWM|技术精要

    今天要讲的是4G模组PWM的技术精要,以常用的合宙Air724UG为例做出示例分享给大家。
    的头像 发表于 12-14 09:40 798次阅读
    掌握<b class='flag-5'>4G</b><b class='flag-5'>模组</b>PWM|技术精要

    轻松攻克低功耗4G模组软件的FTP示例

    今天是以Air724UG模组为例,轻松攻克低功耗4G模组软件的FTP示例
    的头像 发表于 12-05 09:08 331次阅读
    轻松攻克低功耗<b class='flag-5'>4G</b><b class='flag-5'>模组</b>软件的FTP<b class='flag-5'>示例</b>!

    低功耗模组软件的UDP示例 基础教程

    本文以常用的低功耗4G模组Air724UG为例,做出关于低功耗模组软件的UDP示例,以供大家参考。
    的头像 发表于 12-02 14:53 270次阅读
    低功耗<b class='flag-5'>模组</b>软件的UDP<b class='flag-5'>示例</b>   基础教程<b class='flag-5'>篇</b>

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

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

    4G模组LuatOS开发|iconv字符集转换技术

    本次我要讲的是4G模组LuatOS开发的iconv字符集转换,已整理成文,今天便分享供大家。
    的头像 发表于 11-30 09:53 296次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>LuatOS<b class='flag-5'>开发</b>|iconv字符集转换技术<b class='flag-5'>篇</b>

    LuatOS开发4G模组随机数(random)|实战指南

    本次学习的实战是关于4G模组LuatOS开发的随机数示例指南,希望大家有所收获。
    的头像 发表于 11-30 09:51 324次阅读
    LuatOS<b class='flag-5'>开发</b>之<b class='flag-5'>4G</b><b class='flag-5'>模组</b>随机数(random)|实战指南

    4G模组Air724UG的软件教程:KEYPAD示例

    本回我要说的是低功耗4G模组Air724UG的KEYPAD示例,我已整理成文,特供大家参考。
    的头像 发表于 11-30 09:44 368次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air724UG的软件教程:KEYPAD<b class='flag-5'>示例</b>!

    4G模组Air724UG软件示例:UDP实战演练!

    关于4G模组Air724UG软件的UDP示例,今天我将对其实战演练,整理成文示例展示:
    的头像 发表于 11-26 12:10 274次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air724UG软件<b class='flag-5'>示例</b>:UDP实战演练!

    深度解析 4G模组GPIO编程技巧

    本文将解析4G模组GPIO编程技巧,从概述、软硬件环境准备、示例等详细道来:
    的头像 发表于 11-20 23:08 301次阅读
    深度解析  <b class='flag-5'>4G</b><b class='flag-5'>模组</b>GPIO编程技巧<b class='flag-5'>篇</b>

    UART通信入门:4G模组软件的实践指南

    本文将对4G模组Air724UG软件的UART做出相关示例,希望想了解此模组的朋友们收藏好仔细看。
    的头像 发表于 11-17 00:07 614次阅读
    UART通信入门:<b class='flag-5'>4G</b><b class='flag-5'>模组</b>软件的实践指南

    示例 关于4G模组的模块信息!

    今天我会把4G模组的模块信息做出详细介绍,做出示例,展示给大家,如果觉得有用的话请点赞收藏。
    的头像 发表于 11-12 12:07 504次阅读
    <b class='flag-5'>示例</b><b class='flag-5'>篇</b>  关于<b class='flag-5'>4G</b><b class='flag-5'>模组</b>的模块信息!

    示例4G模组AT指令之MQTT应用!

    针对4G模组AT指令的MQTT应用,我收集资料,做出示例,整理成文分享给大家,喜欢的可以收藏。
    的头像 发表于 11-12 11:56 630次阅读
    <b class='flag-5'>示例</b><b class='flag-5'>篇</b>:<b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT指令之MQTT应用!

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

    ​今天我们学习合宙低功耗4G模组Air780EP的fskv开发示例。 一、简介 兼容fdb的函数 使用fdb的flash空间,启用时也会替代
    的头像 发表于 11-01 07:28 226次阅读
    低功耗<b class='flag-5'>4G</b><b class='flag-5'>模组</b>:Air780EP之<b class='flag-5'>fskv</b><b class='flag-5'>开发</b><b class='flag-5'>示例</b>

    4G 模组 MQTT 通信功能!

    今天我们的是4G 模组 MQTT 通信功能!以AIR708E开发板为例 从MQTT介绍,演示功能概述,准备硬件环境,准备软件环境,
    的头像 发表于 10-30 14:53 1491次阅读
    <b class='flag-5'>白</b><b class='flag-5'>嫖</b><b class='flag-5'>篇</b>:<b class='flag-5'>4G</b> <b class='flag-5'>模组</b> MQTT 通信功能!

    4G 模组 HTTP 网络协议应用 版!

    今天我们来的是Air780E模组LuatOS开发4G通信中HTTP网络协议的应用,实现模组
    的头像 发表于 10-30 14:22 911次阅读
    <b class='flag-5'>4G</b> <b class='flag-5'>模组</b> HTTP 网络协议应用 <b class='flag-5'>白</b><b class='flag-5'>嫖</b>版!