Кто-нибудь пробовал отлаживать с помощью JTAG / BDM?

19

Есть ли в Raspberry Pi доступный для использования интерфейс JTAG / BDM?

Какой аппаратный отладчик нужен для отладки?

Можно ли использовать Open OCD ?

Ларс Петтер
источник

Ответы:

8

Редакция 2.0 модели B Raspberry Pi выявила контакты JTAG.

См. Http://www.raspberrypi.org/archives/1929

Дамиан Диксон
источник
1
Итак, с доступными контактами, какое программное / аппаратное обеспечение необходимо для использования контактов для отладки?
Ларс Петтер
7

Вы можете найти много информации здесь . К сожалению, использование JTAG на RPi не так просто. Честно говоря, просто потому, что это так проблематично, я не удосужился заставить его работать. Вот что я знаю, однако:

Не все сигналы JTAG легко доступны. Все, кроме всех, на разъеме GPIO (не на разъеме P2 JTAG - это JTAG VideoCore, а не ARM и AFAIK, он не может использоваться людьми за пределами Broadcom). Дополнительный контакт находится на разъеме S5 (заголовок CSI), вам, вероятно, придется припаять его. Вот необходимые контакты (подробнее об этом на сайте dwelch67, вы также можете найти информацию о функциях альтернативных контактов GPIO в raspberrypi wiki ):

  ARM_VREF    P1-1
  ARM_TRST    P1-15
  ARM_TDO     P1-18
  ARM_TCK     P1-22
  ARM_TDI     P1-7
  ARM_TMS     S5-11
  ARM_GND     P1-25

РЕДАКТИРОВАТЬ: Как отметил @Damian , на ревизии 2.0 печатной платы отсутствующий сигнал ARM_TMS был подключен к выводу 13 на P1, поэтому пайка больше не требуется.

Теперь это не единственная проблема. По умолчанию все эти контакты настроены как контакты GPIO, а не как JTAG. Они должны быть перенастроены в программном обеспечении, и AFAIK нет поддержки в загрузчике Foundation. Dwelch67 написал свой собственный загрузчик (загрузчик следующего этапа), который делает именно это. Вы можете скачать его по ссылке в верхней части этого ответа.

Что касается аппаратного обеспечения, любое оборудование ARM11 JTAG должно быть в порядке. Как упоминалось ранее, я лично не проверял, поэтому не могу дать никаких рекомендаций. И да, OpenOCD можно использовать. Существует даже небольшой проект (также разработанный dwelch67) по созданию очень простого и дешевого оборудования JTAG на основе дешевой платы, такой как Launchpad . Посмотреть его репозиторий GitHub

Кшиштоф Адамски
источник
Привет "Christofer" Спасибо за размещение некоторой информации. Было бы здорово, если бы вы могли расширить свой ответ. Возможно, какие кабели нужны - как их соединить, одна-две картинки - это тысяча слов. В противном случае я думаю, что стоит быть комментарием; Пользователи могут пойти и изучить его в свое время. Добро пожаловать в Raspberry Pi SE :-) Witamy!
Петр Кула
2
Я добавил еще немного информации. Это на самом деле все, что я могу сказать по этому вопросу, и я подумал, что небольшой объем информации лучше, чем ничего. И поскольку это единственный ответ, я думаю, что там не так много другой информации об этом.
Кшиштоф Адамски
0

Вы также можете попробовать этот конвертер SN74LVC8T245 от TI http://www.ti.com/product/sn74lvc8t245

kiranvarma-npeducations
источник
2
Добро пожаловать в Pi.SE ... Пожалуйста, уточните ваши рекомендации.
Андрей