Aal6 0 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба Добрый день! Помогите, пожалуйста, понять как включить отладку в дебагере. При компиляции кода по ссылке сразу влетаю в запущенный проект без остановки в начале программы. Остановка через BreakAll дает остановку в Ассемблер, абсолютно без привязки к исходным кодам(их в disasembly просто нет). Брекпоинты в си коде не работают. Собственно, необходимо чтобы заработал си отладчик. Вроде уже все попробовал, включая компиляцию с нулевой оптимизацией и максимальными опциям по дебагу. Проект бутлоадера для D10. Получен от Микрочипа, изменений нет, внизу по ссылке. https://yadi.sk/d/V6RvXvli3Y5LgC Заранее спасибо! :1111493779: С уважением, Алексей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба по всем признакам запускается загрузчик, а не ваш код, но проверьте по адресам Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aal6 0 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба по всем признакам запускается загрузчик, а не ваш код, но проверьте по адресам Именно загрузчик и нужно отладить. В нем не работает отладка. При попытке загрузки своего кода вылетает с ошибкой, поймать не смог пока. Работа отладки в загрузчике сильно бы поспособствовало. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aal6 0 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба Полностью пересобрал проект, оставив только .c, .h, .ld файлы. Размер в -О1 на 6 байт больше получился. Отладка заработала, хотя и несколько странно, но брекпоинты ставятся и в некоторых местах на них процессор останавливается. Код исходный в дизасемблере подтягивается. Очень хочется понять, почему не работает в исходном проекте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 120 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба Возможнно, там не включена генерация отладочной информации (ключ -gdwarf-2 или подобный). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aal6 0 18 июня, 2018 Опубликовано 18 июня, 2018 · Жалоба Возможнно, там не включена генерация отладочной информации (ключ -gdwarf-2 или подобный). В проекте стоит флаг -g3, насколько я понимаю, это как раз максимальный уровень отладочной информации. Флаги компиляции: -x c -mthumb -D__SAMD10D14AM__ -D__SAMD10D14AM__ -DDONT_USE_CMSIS_INIT -DF_CPU=8000000 -I"../../include" -I"../.." -O1 -ffunction-sections -fdata-sections -funsafe-math-optimizations -g3 -Wall -mcpu=cortex-m0plus -c -std=gnu99 -nostdlib -flto -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" Флаги линковки: -mthumb -Wl,-Map="$(OutputFileName).map" -Wl,--start-group -Wl,--end-group -L"D:\disk_f\projects\Shkratov\orange\BootLoader_d10\astudio\Device_Startup" -Wl,--gc-sections -mcpu=cortex-m0plus -Wl,--script=../../linker/samd10_bl.ld -nostdlib -flto Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться