Як визначити, скільки відсотків пам'яті (heap) вільно на ESP32?

Цей підхід працює для проєктів Arduino / PlatformIO, а також ESP-IDF.

esp32_heap_percentage_example.cpp

#include <esp_heap_caps.h>

uint32_t freeHeapBytes = heap_caps_get_free_size(MALLOC_CAP_DEFAULT);
uint32_t totalHeapBytes = heap_caps_get_total_size(MALLOC_CAP_DEFAULT);
float percentageHeapFree = freeHeapBytes * 100.0f / (float)totalHeapBytes;

// Вивести на serial
Serial.printf("[Memory] %.1f%% free - %d of %d bytes free\n", percentageHeapFree, freeHeapBytes, totalHeapBytes);

Див. також Як знайти кількість вільних байтів у пам’яті / heap ESP32?


Дивіться схожі статті за категоріями: ESP8266/ESP32