Перейти к содержанию
    

Доброе утро.

 

Мне необходимо настроить отладку микроблейза через уарт и xmd.

Как собственно вывести уарт из mdm?

Выходных пинов я не вижу. в настройках нет.

 

Зарание спасибо за внимани.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это такая шутка:)

у вас целая плис в распоряжении куда хотите туда и выводите, на любую ногу (практически).

 

на самом деле это делает так.

 

После того как вы создали микроблайз с уартом, в настройках проекта (софтварного в SDK) можно выбрать выводить на него отладочную информацию (все xil_prinf и подобные пойдут туда), однако там же можно выбрать выводить ее на JTAG-UART. В первом случае у вас отладочная информация пойдет на железный модуль уарта, и на ту ногу на которую вы зададите. Во втором случае она пойдет в среду разработки в SDK в окно дебага.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

как mdm поймет на какой уарт мне надо выводить

сообщение от xil_printf ("dd");

у меня несколько уартов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вы выбираете в настройках на какой уарт перенаправить дебаг выводы...

 

хех, решил поглядеть где чего делается, сразу еле нашел, потому пишу.

 

1. выбираете bsp проект, в нем system.mss, там жмете modify this bsp. У меня standalone проект, ставите на этот пункт меню, и там есть stdin-stdout - в нем задаете ваш железный уарт, куда будут фигачится сообщения printf? xil_print и так далее...

 

2. Это когда вы конфигурируете режим для отладки. Run -> Run configuration, там закладка STDIO connection, в ней можно перенаправить вывод данных в консоль. Это перегрузит заданный ранее режим перенаправления stdio, для этого надо иметь debug module в составе проца.

 

вот!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Огромное спасибо.

меня первый пункт и волновал.

надо файл mss править. Спасибо за консультаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2. Это когда вы конфигурируете режим для отладки. Run -> Run configuration, там закладка STDIO connection, в ней можно перенаправить вывод данных в консоль. Это перегрузит заданный ранее режим перенаправления stdio, для этого надо иметь debug module в составе проца.

вот!

 

Я вывел сообщение через uart на консоль. у меня mbz + uart+ mdm.

Остался вот в чем вопрос.

Можно ли запустить отладку программы mbz через uart?

т.е. посмотреть память, переменные, точки останова, обратиться в регистры.

все то же самое только не подключаясь к JTAG.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

налету меняя адреса нет JTAG на то и JTAG.

но вам никто не мешает в определенных местах программы выбрасывать на порт данные с содержанием памяти, переменных, и так далее...

 

Причем это хорошо тем, что точки остановки которые мешают некоторым программа вам не нужны, процесс вывода данных встроен в программу и особенно ей не мешает... отладка в порт - это прогрессивно!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в документе

http://www.xilinx.com/support/documentatio...14_7/est_rm.pdf

на ст 177 показано подключение XMD к uartLite.

MicroBlaze Stub Target with MDM UART and UARTlite.

 

у меня реализована подобная схема.

но при вызове

connect mb stub -comm serial

выводит:

ERROR:

MicroBlaze Stub not supported. Please use MDM for debuging

Поэтому у меня вопрос.

1 Как надо настроить процессор , что бы он поддерживал этот режим отладки?

2 На схеме ст 177 . показана Local memory xmdstub.

что это за память такая? как ее подключить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в документе

http://www.xilinx.com/support/documentatio...14_7/est_rm.pdf

на ст 177 показано подключение XMD к uartLite.

MicroBlaze Stub Target with MDM UART and UARTlite.

 

у меня реализована подобная схема.

но при вызове

connect mb stub -comm serial

выводит:

ERROR:

MicroBlaze Stub not supported. Please use MDM for debuging

Поэтому у меня вопрос.

1 Как надо настроить процессор , что бы он поддерживал этот режим отладки?

2 На схеме ст 177 . показана Local memory xmdstub.

что это за память такая? как ее подключить?

Давно читал...

Примерно так я понял:

xmd->uart->mb

для реализации работы отладчика через uart в отлаживаемой программме должен быть "кусок программы" отладчика xmd (добавляется тем или иным способом при линковки) и вполне возможно сей код должен располагаться в OCM (BRAM) по адресам с 0x0000.... (возможно ставятся вектора обработчика uart).

НО как при этом загружать отлаживаемую программу в "память процессора в ОЗУ" я без понятия. Может сперва грузится прошивка плисы по jtag (с куском программы в bram) ? а потом уже через uart грузится и отлаживается основная программа ?.

По мне так проще всё-таки пользоваться jtag-xmd вариантом (для загрузки программы и пошаговой отладки с аппаратными бреакпоинтами) и uart для отладки на ходу (вывод "динамической" информации без остановки программы). Хотя есть вариант использования внутреннего uart в jtag-xmd (uart-mdm) - тогда не надо "городить" лишнего uart.

Изменено пользователем Alex77

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хотя есть вариант использования внутреннего uart в jtag-xmd (uart-mdm) - тогда не надо "городить" лишнего uart.

А в этом случаи можно отлаживаться не подключая jtag?

 

 

у меня следующая задача.

нужно отлаживать прибор в закрытом состоянии.

а наружу выходит только уарт.

можно отлаживаться и программными сообщениями но если mbz поддерживает отладку через уарт почему бы не воспользоваться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в этом случаи можно отлаживаться не подключая jtag?

Используется разъём jtag-плисы. соответственно используется "platform cable usb ii"

 

у меня следующая задача.

нужно отлаживать прибор в закрытом состоянии.

а наружу выходит только уарт.

можно отлаживаться и программными сообщениями но если mbz поддерживает отладку через уарт почему бы не воспользоваться?

Я читал 5 лет тому назад про это (могу путать). Но повторюся что в теории есть возможность отладки в xmd через uartlite (покрайней мере в ISE/EDK 10.1 такой способ упоминался).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может пример такого проекта остался?

подскажи ссылку.

я в там настройки посмотрю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может пример такого проекта остался?

подскажи ссылку.

я в там настройки посмотрю.

Я только читал.

И выбрал из трёх вариантов отладки самый "мощный" - через jtag xmd. В моём случае это оптимальное решение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это такая шутка:)

у вас целая плис в распоряжении куда хотите туда и выводите, на любую ногу (практически).

Вы вот смеётесь, но у меня была аналогичная проблема. С паяльником очень сложные отношения, поэтому решение в виде использования ноги отпало сразу. Проблему решил через мультиплексирование последовательного порта - по некоторым событиям переключаю его между модулями. К теме вопроса это отношения не имеет, просто хочу обрабтить внимание, что существуют люди, которым брать паяльник в руки противопоказано.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую.

Использую Vivado + SDK v2015.1

Не могу понять, каким образом работает xil_printf.

Собрал систему в IP Integrator, для MDM добавил настройку Enable JTAG UART, в SDK для Debug Configurations ставлю галку Connect STDIO to Console для порта выбираю JTAG UART.

 

Что ещё нужно сделать, чтобы printf заработал?

 

Сделал ещё это:

1. выбираете bsp проект, в нем system.mss, там жмете modify this bsp. У меня standalone проект, ставите на этот пункт меню, и там есть stdin-stdout - в нем задаете ваш железный уарт, куда будут фигачится сообщения printf? xil_print и так далее...

стало компилиться, но в консоли тишина.

post-63539-1434019402_thumb.jpg

post-63539-1434019408_thumb.jpg

post-63539-1434019413_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...