OpenHarmony Neptune开发板FLASH操作 记录开机次数 原创
本文介绍如何在Neptune开发板上,使用openHarmony IoT硬件子系统的FLASH接口 记录开机次数
1、环境准备
1.1 开发环境、编译环境搭建,参考官方文档,参考链接如下:
Neptune开发板的环境搭建及使用
1.2 Neptune开发板 openharmony V1.1.0 LTS 版本获取
git clone https://gitee.com/hihopeorg_group/neptune-harmony-os1.1-iot.git
2、材料准备
1、Neptune HarmonyOS物联网 IOT模组
3、相关基础知识介绍
openHarmony IoT硬件子系统提供了一些外设相关的接口,目录位于:
base/iot_hardware/peripheral/interfaces/kits
FLASH相关接口,接口头文件为iot_flash.h,其中FLASH写入数据API:
接口参数介绍:
flashOffset:
写入数据的闪存的地址
size:
写入的数据的长度
ramData
指向用于将数据写入的RAM的指针
doErase:
指定是否自动擦除现有数据(此参数与HI3861有关与Neptune无关,可写入随意数字)
其中FLASH读取数据API
接口参数介绍:
flashOffset:
读取数据的闪存的地址
size:
读取的数据的长度
ramData:
指向用于将数据读取的RAM的指针
4、W800 FLASH区说明
参考官方文档《WM_W800_寄存器手册_V2.1》,W800 的地址空间部分分布图如下:
W800 flash在系统中地址从 0x0800 0000 开始,可以直接对该地址空间进行读操作(W800 flash 为2M)。
flash中的内容一般用来存储代码和一些定义为const的数据,断电不丢失。
参考官方文档《WM_W800_QFLASH布局说明_V1.0》W800 的FLASH分布情况:
从图中可以看出内部FLASH的区域划分,至于本次写入FLASH的区域我选择User Area(用户参数区)来存放数据。
6.编写代码
有了以上知识,我们就可以编写代码了,关键代码如下:
7、编译、烧录,并测试最后的完成效果。
按RST键可看到开机次数增加。
简洁明了,厉害!