Jump to content

    
Sign in to follow this  
let's see

debug print on STM32F429DISCOVERY

Recommended Posts

Мой студент не может добиться вывода отладочной печати в Keil IDE через JTAG для этой платки. Есть ли у кого-нибудь любой готвый проект, в котором такая печать есть и работает.

Заранее благодарен.

Share this post


Link to post
Share on other sites
Мой студент не может добиться вывода отладочной печати в Keil IDE через JTAG для этой платки. Есть ли у кого-нибудь любой готвый проект, в котором такая печать есть и работает.

Заранее благодарен.

 

Там нет подключения к JTAG, как отладочный интерфейс пользуется SWD, если хотите использовать SWO для вывода нужно:

1. Убедиться что пин SWO подключен, проверить установлена ли перемычка

2. реализовать интерфейс вывода

- Вручную, как например делают здесь

- Средствами IDE, как например делают здесь

Share this post


Link to post
Share on other sites
Там нет подключения к JTAG, как отладочный интерфейс пользуется SWD, если хотите использовать SWO для вывода нужно:

1. Убедиться что пин SWO подключен, проверить установлена ли перемычка

2. реализовать интерфейс вывода

- Вручную, как например делают здесь

- Средствами IDE, как например делают здесь

Уважаемый Integro, я веду курс используя STM32F4DISCOVERY. На ней все работает сразу без переделок. То на что указывают Ваши ссылки я знаю, но что-то еще у 429 по-другому. К сожалению, у меня нет этой платки на руках и отлаживать приходится удаленно со всеми вытекающими [CENSORED]. Потому и спросил готовый, работающий проект, чтобы убедиться что он будет работать.

Edited by IgorKossak

Share this post


Link to post
Share on other sites
я веду курс используя STM32F4DISCOVERY. На ней все работает сразу без переделок.

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

Потому и спросил готовый, работающий проект, чтобы убедиться что он будет работать.

 

Не думаю что настройки вашего проекта будут отличаться для этих двух плат. Как я уже писал, нужно убедиться что SWO пин подключен, перемычка SB9 установлена?

 

 

 

Share this post


Link to post
Share on other sites
С этого нужно было начинать. Просто у меня тоже сложилось впечатление что Вы далеки от разработки, вот и начал с основ.

 

 

Не думаю что настройки вашего проекта будут отличаться для этих двух плат. Как я уже писал, нужно убедиться что SWO пин подключен, перемычка SB9 установлена?

Отладочный интерфейс в порядке - все видно в периферии: и пошаг, и точки останова. Основная разница - тактовая частота не 168МГц, а 180. Пробовал(студент, а я наблюдал удаленно) обе частоты и не печатает...Т.е. ощущение, что что-то не так именно с ней. Мой проект НЕ использует Cube. Попросил студента выполнить его с кубом - не печатает...

Edited by pitt

Share this post


Link to post
Share on other sites
Отладочный интерфейс в порядке - все видно в периферии: и пошаг, и точки останова.
Для этого достаточно трех проводов: SWDIO, SWCLK, GND

и не печатает...
А для этого, насколько я понимаю, нужен четвертый сигнал - SWO, про который Integro вам писал уже два раза.

 

Share this post


Link to post
Share on other sites
А для этого, насколько я понимаю, нужен четвертый сигнал - SWO, про который Integro вам писал уже два раза.

Вовсе не обязательно.

У меня не используется SWO, обмен всей отладочной информацией реализован в обе стороны по SWDIO.

Использую готовое решение от segger, исходники и соотв. софт можно скачать у них на сайте.

 

Share this post


Link to post
Share on other sites
У меня не используется SWO, обмен всей отладочной информацией реализован в обе стороны по SWDIO.

Использую готовое решение от segger, исходники и соотв. софт можно скачать у них на сайте.

Для этого надо перешить stlink.

Segger RTT? Удобная штука. Openocd умеет уже с ним работать (есть патч в dev ветке) и их реализация не привязана к программаторам JLink.

 

А ещё для вывода отладочной информации можно использовать semihosting, Keil вроде умеет с ним работать.

Share this post


Link to post
Share on other sites

SWO плохая штука.

Вывод через нее сделан поллингом, это тормозит работу программы.

Кроме того в связке SWO+ST-Link+Keil у меня пропадают некоторые символы.

Не знаю почему это происходит. В связке SWO+JLink+Keil такого не наблюдается.

Кроме этого функция ITM_SendChar() проверяет подключен отладчик или нет.

Если отладчик не подключен время выполнения функции будет маленьким.

Значит ваш алогоритм может по разному себя вести при подключенном и отключенном отладчике.

 

Segger RTT лишен этих недостатков. Вывод через буфер. Время выполнения одинаково, неважно подключен отладчик или нет.

Не нужна ножка SWO. RTT viewer понимает escape последовательности и позволяет выводить цветной текст.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this