【经验】无线蓝牙SoC EFR32BG22用户自定义数据存取接口NVM使用指导
在使用EFR32BG22开发应用时,大部分应用需要保存一些参数,很多开发者不清楚BG22对数据进行存取的接口是哪个,本文将介绍SILICON LABS无线蓝牙SoC EFR32BG22上对数据进行存取的接口——NVM(Non-volatile memory)的使用。
NVM在flash中的保存方式如下图:
1、 创建SoC Empty工程,安装NVM Support、NVM3 Core、NVM3 Default instance、IO Stream:USART和LOG组件,同时对串口进行配置。
2、 NVM操作的API有sl_bt_nvm_save、sl_bt_nvm_load、sl_bt_nvm_erase和sl_bt_nvm_erase_all总共4个API,以下为API说明
需要注意key取值范围为0x4000到0x407F,以及每个key值对应存储区只能保存最多56字节数据
3、 代码参考示例如下
程序主要实现将一串数字“12345678“保存在key为0x4001的存储区域内,保存后将其读出,最后擦除,测试结果如下图:
代码:
#define MY_PASSWD 0x4001
/**************************************************************************//**
* Application Init.
*****************************************************************************/
SL_WEAK void app_init(void)
{
uint8_t passwd[9] = "12345678";
uint8_t load_buff[9];
size_t load_len = 0;
sl_status_t sc;
sc = sl_bt_nvm_save(MY_PASSWD, sizeof(passwd), passwd);
if (sc != SL_STATUS_OK)
{
app_log_info("sl_bt_nvm_load Err:0x%4x\n", sc);
}
memset(load_buff, 0, sizeof(load_buff));
sl_bt_nvm_load(MY_PASSWD, sizeof(load_buff), &load_len, load_buff);
app_log_info("my passwd[%d]:%s\n", load_len, load_buff);
sl_bt_nvm_erase(MY_PASSWD);
memset(load_buff, 0, sizeof(load_buff));
sl_bt_nvm_load(MY_PASSWD, sizeof(load_buff), &load_len, load_buff);
app_log_info("my passwd[%d]:%s\n", load_len, load_buff);
}
- |
- +1 赞 0
- 收藏
- 评论 4
本文由xion提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】SiliconLabs EFR32BG22芯片如何实现BLE连接并进行数据收发
不少首次接触BLE的开发者不太清楚如何实现BLE数据的交互,本文以Silicon Labs的EFR32BG22芯片平台为例,指导如何通过建立BLE连接并进行数据交互。硬件:SLTB010A开发板软件。
设计经验 发布时间 : 2023-03-08
【经验】低功耗蓝牙SoC EFR32BG22系列如何从软硬件两方面实现低功耗设计?
EFR32BG22是Silicon Labs公司主打的低功耗蓝牙SoC系列,对于新手工程师来说,如何控制好功耗,以延长电池类产品的寿命,有很多需要关注的地方。本文将从硬件和代码底层两方面分析SoC低功耗实现的关键点。
设计经验 发布时间 : 2021-03-16
【经验】支持3线PTA的Bluetooth SDK,解决蓝牙与WIFI共存难题
在设计蓝牙产品时不可避免的要与WIFI一同使用,由于蓝牙与WIFI都是2.4GHz的频段,如何解决同频干扰是我们不得不面对的一个难题。Silicon Labs提供的Bluetooth SDK从V2.6.0版本开始引入了3线的PTA,可以解决蓝牙与WIFI共存的难题。Bluetooth SDK适用于Silicon Labs EFR32BG与EFR32MG系列的无线蓝牙SOC产品。
设计经验 发布时间 : 2018-06-12
EFR32BG22E Wireless Gecko SoC Family Data Sheet
型号- EFR32BG22E,EFR32BG22E224F512IM40-C,EFR32BG22,EFR32BG22E224F512IM32-C,EFR32BG22E224F512IM32-CR
【经验】芯科科技EFR32BG22系列蓝牙SOC低功耗优化的相关配置
本文主要介绍Silicon Labs(芯科科技)EFR32BG22系列蓝牙SOC目前所有的低功耗优化的相关配置,实现目标: VDD=3V,VSCALE0=0.9V,温度25℃,EM2模式下深度休眠为1.4μA。
设计经验 发布时间 : 2021-09-27
silicon labs EFR32BG22蓝牙固件OTA升级流程解析
介绍EFR32BG22蓝牙程序在非备份方式OTA时的详细操作流程,应用代码会跳转到AppLoader 中运行蓝牙功能,实现新固件的传输和写入。
设计经验 发布时间 : 2023-11-08
【应用】Silicon Labs车规级蓝牙SOC EFR32BG22用于汽车数字钥匙,工作频率高达76.8MHz
某客户的数字钥匙上需要用到两款LDO,目前有蓝牙SOC的需求,要求满足车规级,能够兼容手机蓝牙,给客户推荐了芯科的蓝牙SOC EFR32BG22,最高工作频率达到76.8MHz,非常符合客户的实际应该需求。
应用方案 发布时间 : 2022-11-10
【经验】无线SoC EFR32BG22 EM4模式的进入与唤醒实现注意事项
Silicon Labs的无线SoC EFR32BG22的EM4模式支持nA级别的待机电流,对于功耗要求极为苛刻的应用非常合适,在这个模式下,只支持特定的GPIO以及reset唤醒。本文主要讲解EM4模式的进入与唤醒实现注意事项。
设计经验 发布时间 : 2021-06-02
Silicon Labs(芯科科技)无线蓝牙SoC EFR32BG22C222/EFR32BG22C224(发射功率+6dBm)数据手册
描述- EFR32BG22 Wireless Gecko SoC Family Data Sheet
型号- EFR32BG22C222F352GM32-C,EFR32BG22C224F512GM40-C,EFR32BG22C222F352GN32-C,EFR32BG22C222F352GM40-C,EFR32BG22C224F512IM40-C,EFR32BG22C224F512GM32-C,EFR32BG22C224F512IM32-C,EFR32BG22C224F512GN32-C,EFR32BG22,EFR32XG21,EFR32
【经验】在silicon labs的simplicity studio v5中使用BG22创建AOA tag工程
本文以EFR32BG22C224F512IM40芯片为例为新手准备了从零开始的AOA tag工程创建教程。当我们拿到一个Silicon Labs EFR32BG22蓝牙SoC芯片,想要做AOA tag,首先需要创建一个AOA tag的工程。
设计经验 发布时间 : 2023-02-17
【经验】无线SOC EFR32BG22带安全功能的OTA怎么实现?
本文介绍实现SECURE OTA DFU的操作步骤,实现蓝牙SoC OTA的安全功能
设计经验 发布时间 : 2023-06-29
【经验】基于无线蓝牙SoC EFR32BG22/EFR32MG22中低功耗串口功能唤醒相关操作步骤
对于Silicon Labs无线蓝牙SoC EFR32BG22/EFR32MG22的低功耗设计,通过需要通过在进入低功耗之后,需要进行唤醒,尤其在进行NCP设计时,可以通过串口指令来实现唤醒。EFR32BG22/EFR32MG22提供低功耗串口设计–EUASRT,支持在EM2模式下进行唤醒并接收数据。
设计经验 发布时间 : 2021-11-21
【经验】如何将EFR32BG22发射功率6dbm的工程修改为发射功率0dbm?
在实际蓝牙开发中,有不同最大发射功率的SoC芯片的区别,EFR32BG22C112F352GM32最大发射功率为0dbm,芯科科技官方的蓝牙工程SOC-empty默认基于最大发射功率6dbm的PA配置,所以在开发0dbm发送功率SoC芯片时需要在蓝牙工程修改0dbm的PA代码。
设计经验 发布时间 : 2021-03-04
【应用】芯科EFR32BG24蓝牙SoC及蓝牙模块实现远程传输数据,助力优化蜜蜂蜂箱监测
BeeHero公司近期采用了Silicon Labs的EFR32BG24(BG24)蓝牙SoC以及BGM210P和BGM240P蓝牙模块,来优化其物联网传感器技术并用于智能农业中的蜜蜂蜂箱监测,进而帮助孕育更强壮、更健康的蜂群并改善授粉结果。
应用方案 发布时间 : 2023-05-15
电子商城
品牌:SILICON LABS
品类:Wireless Gecko SoC
价格:¥8.1764
现货: 104,128
品牌:SILICON LABS
品类:Mighty Gecko Multi-Protocol Wireless SoC
价格:¥27.0929
现货: 90,767
现货市场
品牌:SILICON LABS
品类:Switch Hall Effect Magnetic Position Sensor
价格:¥2.2924
现货:126,000
服务
根据用户的蓝牙模块,使用Bluetooth 蓝牙测试装置MT8852B,测试蓝牙1.0至5.1,包括传输速率、功率、频率、调制和接收机灵敏度,生成测试报告。支持到场/视频直播测试,资深专家全程指导。
实验室地址: 深圳 提交需求>
可定制变压器的常规尺寸从EE4.4到ETD49不等,温度范围:-40℃~150℃。自动化产品的起订数量:20KPCS,其它定制产品无起订量要求。
提交需求>
查看全部1条回复
查看全部2条回复