Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: проблема со стеком uIP
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Bakradze
Имеем: платформа ZYNQ, подключаю к проекту файл uip.h, но ни одной функции стека я пока не вызываю в main'е. Код компилируется, все норм, но при попытке запустить код на платформе в режиме debug - программа впадает в точку останова, которая называется uip_buf. uip_buf это буфер который используется низкоуровневыми функциями чтения-записи из состава драйвера сетевого устройства, а также этот буфер используется самим стеком uIP для обработки пакетов которые записываются в буфер по сети и отправляются в сеть из него же. Можете глянуть прикрепленный файл. В какой области лежит моя проблема?




Пробую отключить использование стека. Если просто закомментить uip.h в главном файле - этого мало, все равно попадает в точку останова, но если при этом удалить всю папку со стеком - все нормально, программа запускается
Arlleex
Цитата(Bakradze @ Aug 20 2018, 09:39) *
Пробую отключить использование стека. Если просто закомментить uip.h в главном файле - этого мало, все равно попадает в точку останова...

Ну так уберите ее оттуда, в чем проблема?
Bakradze
Цитата(Arlleex @ Aug 20 2018, 10:05) *
Ну так уберите ее оттуда, в чем проблема?


кого убрать?
Arlleex
Цитата(Bakradze @ Aug 20 2018, 11:58) *
кого убрать?

Точку останова, разумеется.
Bakradze
Цитата(Arlleex @ Aug 20 2018, 11:04) *
Точку останова, разумеется.


Я ее туда не ставил, я запускаю программу в режиме дебаг - выскакивает картинка, скриншот которой я прикрепил к теме. Из какой оперы-то хоть ошибка? Я ведь в мэйне не вызываю пока что ни одной функции, почему такая ситуация возникает?
Bakradze
Чудо чудное, но стоило везде переименовать uip_buf в uip_buff как все вылечилось... wacko.gif
Arlleex
Цитата(Bakradze @ Aug 20 2018, 14:54) *
Чудо чудное, но стоило везде переименовать uip_buf в uip_buff как все вылечилось... wacko.gif

Может все-таки стоял точка останова по записи значения в области памяти? Среда умеет сохранять точки останова, поставленные ранее. Если проект был собран из примера - тогда это логично.
jcxz
Цитата(Arlleex @ Aug 20 2018, 15:43) *
Может все-таки стоял точка останова по записи значения в области памяти? Среда умеет сохранять точки останова, поставленные ранее. Если проект был собран из примера - тогда это логично.

Даже в исходном коде может ставиться BKPT. Встречал случаи, когда такая инструкция ставилась внутри ASSERT. Отладчик на неё отреагирует как на бряк.
Integro
Похоже на то что не хвататет стека. А при переименование uip_buf в uip_buff возможно и размер буфера изменился либо место локации.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.