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

    文章

    5608

    浏览量

    123277
  • 低功耗
    +关注

    关注

    12

    文章

    3002

    浏览量

    106267
  • 模组
    +关注

    关注

    6

    文章

    1721

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

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

    通过将4G通信、COD数据处理与低功耗控制集成于Air780EPM芯片,本方案彻底颠覆STM32+外置模组的松散架构。实测显示,设备启动时间从STM32方案的12s缩短至3s。 水质C
    的头像 发表于 05-21 16:51 434次阅读
    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 458次阅读
    大公开!用<b class='flag-5'>Air780</b>EPM重构水质COD监测,替代STM32+<b class='flag-5'>4G</b><b class='flag-5'>模组</b>的技术路径

    开发宝典:4低功耗ADC接口,Air780EPM二次开发必看!

    本文将深入探讨如何通过硬件参数配置、软件算法优化及系统级功耗管理,实现ADC接口性能与能耗的最佳平衡。从寄存器设置到驱动程序编写,从采样策略到噪声抑制,我们将全面揭秘Air780EPM低功耗ADC
    的头像 发表于 04-01 14:57 496次阅读
    <b class='flag-5'>开发</b>宝典:<b class='flag-5'>4</b>路<b class='flag-5'>低功耗</b>ADC接口,<b class='flag-5'>Air780</b>EPM二次<b class='flag-5'>开发</b>必看!

    快速开发实战——4低功耗ADC接口,Air780EPM二次开发必看!

    Air780EPM 模组,内置4MB大内存RAM,支持LCD、摄像头、Modbus、以太网、CAN;具备更强大的二次开发资源,更完善的外设能力,也更适于工业场景。   最新
    的头像 发表于 04-01 14:56 531次阅读
    快速<b class='flag-5'>开发</b>实战——<b class='flag-5'>4</b>路<b class='flag-5'>低功耗</b>ADC接口,<b class='flag-5'>Air780</b>EPM二次<b class='flag-5'>开发</b>必看!

    新手必看!4G模组Air780EPM——GPIO的设计说明

    Air780EPM的GPIO设计需兼顾硬件可靠性与软件灵活性,开发者应基于具体应用场景权衡复用功能优先级,并遵循电源管理规范以延长设备生命周期。通过模块化配置与精细化调试,可最大化释放模组性能潜力
    的头像 发表于 03-20 17:48 616次阅读
    新手必看!<b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780</b>EPM——GPIO的设计说明

    干货预警!4G模组Air780EPM其他硬件接口

    Air780EPM 4G模组不仅凭借高速稳定的数据传输能力在智能终端、工业自动化、车载设备等领域大放异彩,更以其“全栈式”硬件接口设计,为开发者提供了近乎无限的扩展可能。 一、ADC
    的头像 发表于 03-17 17:37 752次阅读
    干货预警!<b class='flag-5'>4G</b><b class='flag-5'>模组</b>:<b class='flag-5'>Air780</b>EPM其他硬件接口

    手把手教你!4G模组Air780EPM——GPIO的设计说明

    4G模组Air780EPM作为广和通推出的高性能Cat.1bis无线通信模块,凭借其低功耗、高集成度及丰富的外设接口,在工业物联网、智能终端、车载设备等领域展现出卓越的适配性。 一、概
    的头像 发表于 03-17 16:07 853次阅读
    手把手教你!<b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780</b>EPM——GPIO的设计说明

    4G模组Air780EPM的开机启动及外围电路设计!

    本文介绍了4G模组——Air780EPM 模块开机的完整硬件设计指南,涵盖供电要求、管脚配置、电路示例及常见问题排查方法,希望能够帮助大家避免设计错误,确保模块稳定启动!常见开机电路。
    的头像 发表于 03-07 16:06 826次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780</b>EPM的开机启动及外围电路设计!

    初学者必看!4G模组Air780EPM的开机启动及外围电路设计

    本文介绍了4G模组——Air780EPM 模块开机的完整硬件设计指南,涵盖供电要求、管脚配置、电路示例及常见问题排查方法,希望能够帮助大家避免设计错误,确保模块稳定启动!常见开机电路。
    的头像 发表于 03-07 16:02 585次阅读
    初学者必看!<b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>Air780</b>EPM的开机启动及外围电路设计

    功耗表现最佳有没有?——Air780EPS

    今天一起来聊聊Air780EPS模组~ 一、Air780EPS核心信息描述 软件开发Air780EPS软件上既支持传统的AT指令,也支持
    的头像 发表于 01-10 15:29 911次阅读
    <b class='flag-5'>功耗</b>表现最佳有没有?——<b class='flag-5'>Air780</b>EPS

    拥有低功耗低成本的Open开发应用,开发人员必看!

    Open开发应用需求,有没有低功耗、低成本方案? 今天我们一起来聊聊Air780EP模组。 一、Air780EP实网
    的头像 发表于 12-26 11:50 830次阅读
    拥有<b class='flag-5'>低功耗</b>低成本的Open<b class='flag-5'>开发</b>应用,<b class='flag-5'>开发</b>人员必看!

    要Open开发,又要低功耗低成本?建议等新方案

    Open开发应用需求,有没有低功耗、低成本方案? 今天我们一起来聊聊Air780EP模组。 一、Air780EP核心信息描述 运营商支持:
    的头像 发表于 12-24 17:09 726次阅读
    要Open<b class='flag-5'>开发</b>,又要<b class='flag-5'>低功耗</b>低成本?建议等新方案

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

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