开发板 正点原子DNESP32S3 BOX3

初始化闪存分区、读取芯片硬件信息、循环打印日志。

#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "nvs_flash.h"
#include "esp_system.h"
#include "esp_chip_info.h"
#include "esp_psram.h"
#include "esp_flash.h"
#include "esp_log.h"


const char* basic = "basic";

/**
 * @brief       程序入口
 * @param       无
 * @retval      无
 */
void app_main(void)
{
    esp_err_t ret;
    uint32_t flash_size;
    esp_chip_info_t chip_info;                                              /* 定义芯片信息结构体变量 */

    ret = nvs_flash_init();                                                 /* 初始化NVS */

    if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND)
    {
        ESP_ERROR_CHECK(nvs_flash_erase());
        ESP_ERROR_CHECK(nvs_flash_init());
    }

    esp_flash_get_size(NULL, &flash_size);                                  /* 获取FLASH大小 */

    esp_chip_info(&chip_info);
    ESP_LOGI(basic, "内核:cup数量%d", chip_info.cores);                     /* 获取CPU内核数并显示 */
    ESP_LOGI(basic, "FLASH size:%ld MB flash", flash_size / (1024 * 1024)); /* 获取FLASH大小并显示 */
    ESP_LOGI(basic, "PSRAM size: %d bytes", esp_psram_get_size());          /* 获取PARAM大小并显示 */

    while(1)
    {
        ESP_LOGI(basic, "Hello-ESP32_Box3");
        vTaskDelay(1000);
    }
}

运行效果
在这里插入图片描述

更多推荐