Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STM32F207+FreeRTOS+LwIP
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Gunner
Добрый день!

Делаю проект веб-сервера на связке STM32F207+FreeRTOS+LwIP. При переходе с LwIP 1.3.2 на LwIP 1.4.0 приложение перестало нормально работать. Покопавшись, обнаружил, что в результате выполнения функции netconn_new(NETCONN_TCP) очень сильно стала уменьшаться память кучи FreeRTOS (heap). Текущий размер кучи получаю выполнением xPortGetFreeHeapSize().

Результат следующий (уменьшение кучи в результате выполнения netconn_new(NETCONN_TCP)): для LwIP 1.3.2 - 264 байта, а для LwIP 1.4.0 - 8364 байта (!). Непонятно, куда расходуется столько памяти. Настройки в файле lwipopts.h остались те же (может надо что-то поменять?). Файлы sys_arch.c и sys_arch.h брал с сайта FreeRTOS.

Если кто делал такой переход (LwIP 1.3.2 -> 1.4.0), просьба проверить как меняется размер кучи при выполнении netconn_new(NETCONN_TCP).
Bass
у меня 440 байт.
а отладчиком не пробовали смотреть процесс выделения памяти? в отладочных сообщениях ничего нет?
Gunner
QUOTE (Bass @ Jun 14 2012, 11:48) *
у меня 440 байт.
а отладчиком не пробовали смотреть процесс выделения памяти? в отладочных сообщениях ничего нет?

Спасибо. Подкорректировал значения DEFAULT_TCP_RECVMBOX_SIZE и DEFAULT_ACCEPTMBOX_SIZE (были очень большие) и все стало ОК.
Gunner
Тестирую дальше ... c версией lwip 1.4.0 перестал работать modbus tcp (www.freemodbus.org).
Никто с таким не сталкивался?
Kalyan
Добрый день. а можете поделиться вашим портом lwip 1.4.0?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.