第二个bug 起因 今天刚拿到的PCB就马上焊好了,接电源发现能亮就很nice,但是把主控esp-12F焊上去就发现事情没这么简单,我是打算要用arduino IDE开发,但是凭之前的经验,新的芯片要用arduinoIDE开发就要进行BootLoader烧写,但是我不会啊😂,于是就想到了之前的esp32-cam可以直接用串口下载arduino程序,一试,故事就开始...
staticvoidbutton_single_click_cb(void*arg){uint8_t*num=(uint8_t*)arg;uint8_tgpio_num=*num;ESP_LOGI(TAG,"BTN%d: BUTTON_SINGLE_CLICK\n",gpio_num);printf("nvs_erase_key test!\r\n");// nvs_erase_key(my_handle,"restart_conter");nvs_handle_tmy_handle;// Opennvs_open(STORAGE_NAM...
nvs_open_mode open_mode:打开的模式,NVS_READWRITE (读写模式)和 NVS_READONLY(只读模式) nvs_handle *out_handle:这个是返回值,用于后面的读写操作的句柄。 返回值:ESP_OK(成功)。 NVS 写入数据函数 写入数据就是数据写入到 NVS 里,每个函数都是三个参数,参数 1 是 nsv_open 返回的句柄,参数 2 ...
打开文件(nvs_open), 写文件(nvs_set_xxx), 保存文件(nvs_commit), 关闭文件(nvs_close) 打开文件(nvs_open), 读取文件(nvs_get_xxx), 关闭文件(nvs_close) 3、擦写均衡, 使 flash 寿命更长,NVS在操作少量数据上, NVS 分区更大时, 擦写均衡表现的更为明显。 API 分析参考 初始化 /** * @brief In...
非易失性存储 (NVS) 库主要用于在 flash 中存储键值格式的数据。是esp-idf 存储配置信息的主要方法。 (1) 底层存储 NVS 通过调用 spi_flash_{read|write|erase} API 对主 flash 的部分空间进行读、写、擦除操作,包括 data 类型和 nvs 子类型的所有分区。应用程序可调用 nvs_open API 选择使用带有 nvs 标...
*/esp_err_tsave_run_time(void){nvs_handle_tmy_handle;esp_err_terr;// Open 正常的操作步骤,打开nvs,第一个命名空间,读写,句柄名称err = nvs_open(STORAGE_NAMESPACE, NVS_READWRITE, &my_handle);if(err != ESP_OK)returnerr;/* Read the size of memory space required for blob ...
错误码返回:ESP_ERROR_CHECK failed: esp_err_t 0x1102 (ESP_ERR_NVS_NOT_FOUND) at 0x403847dd file: "../main/main.c" line 413 func: wifi_init_sta expression: nvs_get_str(wificfg_nvs_handler,"wifi_ssid",wifi_ssid,&len)jr-test Posts: 100 Joined: Mon Aug 23, 2021 3:04 am Re:...
i have a working project that uses nvs. if i do a idf.py erase-flash and reflash the project, NVS don't work anymore because when i do Code:Select all esp_err_terr = nvs_open("storage", NVS_READONLY, &my_handle); it return ESP_ERR_NVS_NOT_FOUND. ...
esp_err_tnvs_open(constchar*name,nvs_open_mode_topen_mode,nvs_handle_t*out_handle) 第一个参数 第二个 返回值 先关 后擦 在初始化 在写入 在代码里面频繁出现这个宏 定义在此。里面使用了一个函数 看不清了? 里面其实最终执行的是这个函数 ...
1、初始化 nvs,前面说了,用来保存配置的。 nvs_flash_init 这里为什么会做两次调用呢,因为这个 nvs 分区一般比较小,有时候存的数据满了(或者是以前的固件存的,现在你的新应用不需要这些垃圾数据),所以,如果初始化不成功,可尝试将 nvs 分区擦除(就像你格式化硬盘分区),这样就有空间来存放新数据了。