Загрузчик Harmony на SAME70 — нет связи UART, отладка не работает

У меня возникли проблемы с загрузчиком Harmony наSAME70N20Bчип. Я хочу создать простой загрузчик, чтобы иметь возможность прошивать прошивку через UART4. Я не могу использовать встроенныйSAMBAзагрузчик, потому что он работает на UART0 (возможно, не UART0, сейчас не уверен), который недоступен на моей плате. Нет возможности изменить дизайн платы.
Я скачал MPLAB X IDE, создал новый проект и черезMCC Content Manager Wizardдобавлено несколько пакетов гармонии. Я не уверен, какие именно это были пакеты, сейчас я не могу открыть то же окно, кнопка MCC теперь открывает график проекта, но это было что-то связанное с ATSAME70, UART и некоторым основным пакетом Harmony.
Появилось окно графика проекта с узламиEFC,Device Family Pack,SystemиCMSIS Pack. я добавилUART BootloaderиUART4и соединил их между собой. я тоже нашелPin Settingsокно, где я назначилPD18иPD19к UART4. По умолчанию настройки часов должны быть в порядке, я проверил. Затем я нажалGenerateкнопка.
В моем проекте появилось множество файлов C со всей логикой обновления прошивки. Я переопределил триггер загрузчика, поэтому он всегда должен переходить к загрузчику, а не к самой прошивке (временное решение, я хочу реализовать здесь некоторую логику позже). Я собрал его и прошил на плату через отладчик. Но когда я пытаюсь прошить программу через UART с помощью прилагаемого инструмента Python, связь между платой и компьютером отсутствует (от компьютера к плате есть).
Я попытался отладить код генерации с помощьюAtmel-ICEотладчик, но когда ставлю точку останова, он говоритBroken Breakpoint. На борту работает какой-то код, я могу прочитатьExecution Memoryи просмотреть дизассемблированный код. Есть некоторые ярлыки, напримерbootloader_UART_Tasksилиmain, что указывает на то, что существует некоторый код, созданный и прошитый, и присутствуют некоторые файлы отладки компоновщика.
Когда я создаю пустой проект с каким-то базовым кодом мигания светодиода, я могу его отладить так же хорошо. Я могу устанавливать точки останова, я могу пошагово выполнять код, выполнять стандартные операции отладки...
Я не знаком с MPLAB IDE, она не совсем удобна для пользователя (она пытается быть такой, что еще больше усугубляет ситуацию...). У меня довольно много опыта встроенного программирования и отладки C и C++ в eclipse, это должно быть похоже, но мне здесь чего-то не хватает.
БР
Михал
РЕДАКТИРОВАТЬ: В ходе дальнейшего расследования я обнаружил, что отладка работает вstartup_xc32.cфайл, содержащий обработчик сброса. Степпинг кода здесь работает отлично. Должно быть, что-то не так с процессом сборки, потому что отладка прерывается, когда код выбрасывает этот файл. Меня очень смущает эта IDE.

0 ответов

Другие вопросы по тегам