ESP8266学习笔记7:保存和读取自定义参数

我整理了从2015年至今关于ESP8266的学习笔记,梳理出来了开发环境、基础功能、进阶学习三大部分,方便自己和他人。可点此查看,欢迎交流。

前言

这几天正在使用ESP8266接入机智云,需要保存一些自定义的参数。在笔记6中,做了AP信息的保存,但它是借助特定的API保存特定的AP信息。而自定义的参数还需要我们自己处理,所有的智能硬件都会涉及这种情况,今天把这块也梳理下。

本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/

编程思路

ESP的IOT_DEMO是让ESP连接乐鑫自己的云平台,其中必然涉及以下自定义参数的保存,这就是很好的例子。

1.自定义参数的结构体:

struct esp_platform_saved_param esp_param;

2.SPI FLASH中的保存位置

/* NOTICE---this is for 512KB spi flash.
 * you can change to other sector if you use other size spi flash. */
#define ESP_PARAM_START_SEC		0x3D

3.初始化,载入自定义参数:

void ICACHE_FLASH_ATTR
user_esp_platform_init(void)
{
	... 
	system_param_load(ESP_PARAM_START_SEC, 0, &esp_param, sizeof(esp_param));
	...
}

4.修改自定义参数,这是一个设置token的例子:

void ICACHE_FLASH_ATTR
user_esp_platform_set_token(uint8_t *token)
{
    if (token == NULL) {
        return;
    }

    esp_param.activeflag = 0;
    os_memcpy(esp_param.token, token, os_strlen(token));

    system_param_save_with_protect(ESP_PARAM_START_SEC, &esp_param, sizeof(esp_param));
}

总结

这个内容比较简单,代码我就不贴了。

唯一注意的是FLASH的位置,如果用的是1M以上的FLASH,那记得参考下这帖子How to use 1024+KB flash - 如何使用1024KB 及以上 flash

先这样吧。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值