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

    文章

    5631

    浏览量

    124799
  • 低功耗
    +关注

    关注

    12

    文章

    4101

    浏览量

    106896
  • 模组
    +关注

    关注

    6

    文章

    1811

    浏览量

    32387
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    蓝牙模组Air5101s规格介绍

    Air5101S 是一款超小型低功耗蓝牙透传模组,尺寸为 6×15.3×2.25mm,基于 BLE 5.2 技术打造,采用工业级设计,搭配简洁 AT 指令集。可与现有 4G
    的头像 发表于 03-16 21:57 194次阅读
    蓝牙<b class='flag-5'>模组</b><b class='flag-5'>Air</b>5101s规格介绍

    一个G-Sensor,搞定GNSS定位静态漂移+智能低功耗控制

    Air780EGP、Air780EGG系列通信定位模组,秉承LuatOS二次开发、高集成与低功耗核心优势的同时,针对定位终端的真实痛点,做出
    的头像 发表于 02-08 15:37 911次阅读
    一个<b class='flag-5'>G</b>-Sensor,搞定GNSS定位静态漂移+智能<b class='flag-5'>低功耗</b>控制

    高效接入语音交互:合宙模组音频方案如何选?

    本文特别分享4G模组选型与硬件设计要点,为开发者提供实用参考。 一、模组音频支持概况 从主芯片是否原生支持音频功能来看,合宙4G
    的头像 发表于 02-08 14:59 1005次阅读
    高效接入语音交互:合宙<b class='flag-5'>模组</b>音频方案如何选?

    模组功耗入门指南:新手必须掌握的能耗知识

    设计隐患。 一,模组低功耗特性概述 低功耗4G Cat.1 模组最重要的特性之一 4G C
    的头像 发表于 01-18 13:48 1030次阅读
    <b class='flag-5'>模组</b><b class='flag-5'>功耗</b>入门指南:新手必须掌握的能耗知识

    从零开始学模组功耗:新手必备基础解析

    。 一,模组低功耗特性概述 低功耗4G Cat.1 模组最重要的特性之一 4G Cat.1
    的头像 发表于 01-17 19:24 524次阅读
    从零开始学<b class='flag-5'>模组</b><b class='flag-5'>功耗</b>:新手必备基础解析

    TVP5150AM1-EP:超低功耗视频解码的卓越

    TVP5150AM1-EP:超低功耗视频解码的卓越选 在当今的视频处理领域,对于高效、低功耗的视频解码器需求日益增长。TI推出的TVP5150AM1-
    的头像 发表于 12-26 09:15 631次阅读

    Air780EPM开发板为例:FFT应用示例核心要点全解析

    Air780EPM开发板作为实践载体,本文将对FFT应用示例的核心要点展开全面解析。从开发板的硬件特性适配、FFT算法的实现流程,到示例
    的头像 发表于 12-16 15:28 525次阅读
    以<b class='flag-5'>Air780</b>EPM<b class='flag-5'>开发</b>板为例:FFT应用<b class='flag-5'>示例</b>核心要点全解析

    实战Air780EPM:构建4G共享网关,服务WiFi与有线设备!

    通过Air780EPM开发板,我们可以轻松实现4G网络作为数据出口,为周边的WiFi设备和以太网设备提供互联网共享,适用于移动办公、远程部署等场景。 一、多网融合概述   Air780
    的头像 发表于 09-30 16:03 1514次阅读
    实战<b class='flag-5'>Air780</b>EPM:构建<b class='flag-5'>4G</b>共享网关,服务WiFi与有线设备!

    Air780EGH开源代码来袭!定位功能快速入门指南

    欢迎探索Air780EGH开源生态!最新版本解锁定位功能源代码,无论你是新手还是资深开发者,都能通过简洁的示例代码快速上手。从初始化配置到实时定位数据获取,一站式解决定位开发痛点。 下
    的头像 发表于 07-29 16:13 1014次阅读
    <b class='flag-5'>Air780</b>EGH开源代码来袭!定位功能快速入门指南

    揭秘Air780EGH定位功能:源码开放助力极速开发

    Air780EGH定位模块源代码全面开放!无需复杂前置知识,只需跟随本文教程,即可从零开始搭建定位系统。代码注释清晰,示例完整,助你短时间内掌握定位功能核心用法。 下文将以Air780EGH核心板为
    的头像 发表于 07-29 16:11 921次阅读
    揭秘<b class='flag-5'>Air780</b>EGH定位功能:源码开放助力极速<b class='flag-5'>开发</b> !

    Air8101多网融合战略升级:Air780EPM模块助力4G联网落地

    应用迈向新高度。 本文将分享Air8101核心板通过外挂Air780EPM整机开发板,实现4G联网的功能示例。   一、硬件准备工作   1
    的头像 发表于 06-23 16:53 755次阅读
    <b class='flag-5'>Air</b>8101多网融合战略升级:<b class='flag-5'>Air780</b>EPM模块助力<b class='flag-5'>4G</b>联网落地

    Air780EPM应用开发:解锁GPIO与LED的N种交互模式

    、GPIO直接驱动LED 1.1 适用场景 低功耗场景:LED电流 ≤ 5mA(普通GPIO的驱动能力限制)。  休眠需求:若需LED在休眠时保持亮灭状态,需使用AGPIO。 注意:Air780
    的头像 发表于 05-29 14:31 926次阅读
    <b class='flag-5'>Air780</b>EPM应用<b class='flag-5'>开发</b>:解锁GPIO与LED的N种交互模式

    解锁Air780EPM:N种GPIO操控LED的实战技巧!

    ——通过硬件层精确控制电路参数,结合LuatOS高效API实现快速原型开发,适用于智能照明、状态指示等物联网场景。   一、GPIO直接驱动LED 1.1 适用场景 低功耗场景:LED电流 ≤ 5mA
    的头像 发表于 05-28 16:56 1111次阅读
    解锁<b class='flag-5'>Air780</b>EPM:N种GPIO操控LED的实战技巧!

    COD监测革新!Air780EPM一站式替代STM32+4G模组的物联网方案 ~

    通过将4G通信、COD数据处理与低功耗控制集成于Air780EPM芯片,本方案彻底颠覆STM32+外置模组的松散架构。实测显示,设备启动时间从STM32方案的12s缩短至3s。 水质C
    的头像 发表于 05-21 16:51 705次阅读
    COD监测革新!<b class='flag-5'>Air780</b>EPM一站式替代STM32+<b class='flag-5'>4G</b><b class='flag-5'>模组</b>的物联网方案 ~

    大公开!用Air780EPM重构水质COD监测,替代STM32+4G模组的技术路径

    方法。 以往行业常规开发方案是STM32+4G模组组合,本次实验项目采用Air780EPM开发新方案——
    的头像 发表于 05-16 15:34 787次阅读
    大公开!用<b class='flag-5'>Air780</b>EPM重构水质COD监测,替代STM32+<b class='flag-5'>4G</b><b class='flag-5'>模组</b>的技术路径