Добрый день!
Делаю проект веб-сервера на связке 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).
|