|
MicroBlaze + MDM, отладка через уарт |
|
|
|
Apr 10 2014, 06:24
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
вы выбираете в настройках на какой уарт перенаправить дебаг выводы...
хех, решил поглядеть где чего делается, сразу еле нашел, потому пишу.
1. выбираете bsp проект, в нем system.mss, там жмете modify this bsp. У меня standalone проект, ставите на этот пункт меню, и там есть stdin-stdout - в нем задаете ваш железный уарт, куда будут фигачится сообщения printf? xil_print и так далее...
2. Это когда вы конфигурируете режим для отладки. Run -> Run configuration, там закладка STDIO connection, в ней можно перенаправить вывод данных в консоль. Это перегрузит заданный ранее режим перенаправления stdio, для этого надо иметь debug module в составе проца.
вот!
|
|
|
|
|
May 7 2014, 08:19
|
Частый гость
 
Группа: Участник
Сообщений: 188
Регистрация: 26-04-07
Пользователь №: 27 334

|
Цитата(Golikov A. @ Apr 10 2014, 10:24)  2. Это когда вы конфигурируете режим для отладки. Run -> Run configuration, там закладка STDIO connection, в ней можно перенаправить вывод данных в консоль. Это перегрузит заданный ранее режим перенаправления stdio, для этого надо иметь debug module в составе проца. вот! Я вывел сообщение через uart на консоль. у меня mbz + uart+ mdm. Остался вот в чем вопрос. Можно ли запустить отладку программы mbz через uart? т.е. посмотреть память, переменные, точки останова, обратиться в регистры. все то же самое только не подключаясь к JTAG.
|
|
|
|
|
May 8 2014, 06:40
|
Частый гость
 
Группа: Участник
Сообщений: 188
Регистрация: 26-04-07
Пользователь №: 27 334

|
в документе 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. что это за память такая? как ее подключить?
|
|
|
|
|
May 8 2014, 06:58
|
Местный
  
Группа: Участник
Сообщений: 295
Регистрация: 2-12-05
Пользователь №: 11 695

|
Цитата(zuuuuk @ May 8 2014, 10:40)  в документе 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 - May 8 2014, 07:05
|
|
|
|
|
May 8 2014, 07:35
|
Частый гость
 
Группа: Участник
Сообщений: 188
Регистрация: 26-04-07
Пользователь №: 27 334

|
Цитата(Alex77 @ May 8 2014, 10:58)  Хотя есть вариант использования внутреннего uart в jtag-xmd (uart-mdm) - тогда не надо "городить" лишнего uart. А в этом случаи можно отлаживаться не подключая jtag? у меня следующая задача. нужно отлаживать прибор в закрытом состоянии. а наружу выходит только уарт. можно отлаживаться и программными сообщениями но если mbz поддерживает отладку через уарт почему бы не воспользоваться?
|
|
|
|
|
May 8 2014, 09:28
|
Местный
  
Группа: Участник
Сообщений: 295
Регистрация: 2-12-05
Пользователь №: 11 695

|
Цитата(zuuuuk @ May 8 2014, 11:35)  А в этом случаи можно отлаживаться не подключая jtag? Используется разъём jtag-плисы. соответственно используется "platform cable usb ii" Цитата(zuuuuk @ May 8 2014, 11:35)  у меня следующая задача. нужно отлаживать прибор в закрытом состоянии. а наружу выходит только уарт. можно отлаживаться и программными сообщениями но если mbz поддерживает отладку через уарт почему бы не воспользоваться? Я читал 5 лет тому назад про это (могу путать). Но повторюся что в теории есть возможность отладки в xmd через uartlite (покрайней мере в ISE/EDK 10.1 такой способ упоминался).
|
|
|
|
|
May 8 2014, 09:42
|
Местный
  
Группа: Участник
Сообщений: 295
Регистрация: 2-12-05
Пользователь №: 11 695

|
Цитата(zuuuuk @ May 8 2014, 13:34)  Может пример такого проекта остался? подскажи ссылку. я в там настройки посмотрю. Я только читал. И выбрал из трёх вариантов отладки самый "мощный" - через jtag xmd. В моём случае это оптимальное решение.
|
|
|
|
|
May 8 2014, 11:50
|
Участник

Группа: Участник
Сообщений: 45
Регистрация: 22-12-10
Из: Россия, Ростовская обл.
Пользователь №: 61 800

|
Цитата(Golikov A. @ Apr 10 2014, 07:43)  Это такая шутка у вас целая плис в распоряжении куда хотите туда и выводите, на любую ногу (практически). Вы вот смеётесь, но у меня была аналогичная проблема. С паяльником очень сложные отношения, поэтому решение в виде использования ноги отпало сразу. Проблему решил через мультиплексирование последовательного порта - по некоторым событиям переключаю его между модулями. К теме вопроса это отношения не имеет, просто хочу обрабтить внимание, что существуют люди, которым брать паяльник в руки противопоказано.
|
|
|
|
|
Jun 11 2015, 11:45
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Приветствую. Использую Vivado + SDK v2015.1 Не могу понять, каким образом работает xil_printf. Собрал систему в IP Integrator, для MDM добавил настройку Enable JTAG UART, в SDK для Debug Configurations ставлю галку Connect STDIO to Console для порта выбираю JTAG UART. Что ещё нужно сделать, чтобы printf заработал? Сделал ещё это: Цитата(Golikov A. @ Apr 10 2014, 09:24)  1. выбираете bsp проект, в нем system.mss, там жмете modify this bsp. У меня standalone проект, ставите на этот пункт меню, и там есть stdin-stdout - в нем задаете ваш железный уарт, куда будут фигачится сообщения printf? xil_print и так далее... стало компилиться, но в консоли тишина.
Эскизы прикрепленных изображений
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|