Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Методы увеличения памяти для собственных приложений в sdk-ameba1-v3.4b3_without_NDA.

Тема в разделе "Realtek - SDK, прошивки и утилиты", создана пользователем pvvx, 10 сен 2016.

  1. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    "Полу-машинный" перевод с китайского:8710 RTL8710 IOT ESP8266 物联网 - Powered by Discuz!

    Сообщения от jimmysqf в 2016-5-26 18:33

    Если они не хватает оперативной памяти, в результате чего не влезает программа после компиляции, возможно освободить RAM ресурсы следующими способами:

    A) При использовании 8711AM / 8195AM, код может быть перемещен в SDRAM.
    Обратитесь к SDK doc UM0034

    1) Занимаемые в SDK 3.4b выпуска пространства:
    cmsis : 1 KB
    console: 10 KB
    network: 50 KB
    os: 8 KB
    peripheral: 10 KB
    utilities: 1 KB

    2) Если глобальная переменная очень большая, то эта переменная может быть объявлена в SDRAM пространстве:
    eq: SDRAM_DATA_SECTION INT user_data [MAX_SIZE];

    B) Отрегулировать размер Heap. Размер Heap в SDK по умолчанию составляет 60KB.

    Соответствующий размер кучи (Heap) может быть уменьшен. Надо гарантировать минимальный размер динамической памяти 15KB:

    1) В FreeRTOSConfig.h
    # определить configTOTAL_HEAP_SIZE ((size_t) (60 * 1024)) // по умолчанию 60 КБ

    C) В platform_opts.h сосредоточены многие функции переключения, в зависимости от их применения закрыть ненужные настройки:

    [HASHTAG]#define[/HASHTAG] SUPPORT_MP_MODE 0
    Увеличение SRAM примерно около 7256 байт (приблизительно 7 КБ)

    [HASHTAG]#define[/HASHTAG] CONFIG_ENABLE_WPS 0
    Если отключено, увеличение SRAM на 16692 байт (около 16,3 КБ)

    [HASHTAG]#define[/HASHTAG] CONFIG_OTA_UPDATE 0
    Если отключено, увеличение SRAM на 3204 байт (приблизительно 3 K)

    [HASHTAG]#define[/HASHTAG] CONFIG_EXAMPLE_WLAN_FAST_CONNECT 0
    После выключения SRAM +900 byte

    [HASHTAG]#define[/HASHTAG] CONFIG_INCLUDE_SIMPLE_CONFIG 0
    После отключения SRAM увеличивается на 7108 байт (около 7 K)

    [HASHTAG]#define[/HASHTAG] SUPPORT_LOG_SERVICE 0
    АТ команды не должна быть удалены.

    Удалить log service -> увеличение SRAM 56004 байт (приблизительно 55 КБ)

    Удалить AT команды -> должен быть добавлен патч 3.4b_patch_log_service (V01) .zip

    D) Вы можете рассмотреть вопрос о TCP/IP thread stack перемещая его в TCM Heap

    Пожалуйста, обратите внимание, что используется TCM
    Будет ли доступ к буферу памяти в периферийной области TCM
    Если переехал в TCM, то SRAM увеличится на 4K
    На основе патча: 3.4b_patch_use_tcm_ (V01) .zip

    E) Можно log_service стек переместить в TCM Heap
    Если переехал в TCM, SRAM может получить 5.12KB
    На основе патча, примеры того, как ссылаться на стек TCP/IP thread stack TCM Heap
     

    Вложения:

    A_D и Neov нравится это.

Поделиться этой страницей