J link 9 схема своими руками

Блог сисадмина

Добро пожаловать в блог сисадмина-паяльщика

Давайте уже приступим к распаковке. Кому интересно, можете посмотреть видео:

Вид с разных сторон:

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

Для начала давайте подключим наш программатор к компьютеру. Драйвера у меня недостающие скачались с Microsoft Update, но не установился какой то драйвер HP_Manager.

Собственно теперь нам нужен испытуемый. Не долго думая, я вспомнил про плату “мозгов” стабилизатора БАСТИОН TEPLOCOM ST-400 INVERTOR, и она любезно согласилась принять участик в эксперименте. Да простят меня разработчики данного стабилизатора, что изгаляюсь над их техникой. Плата:

Ну вот собственно сам стенд:

Выбираем Create new project

Вроде всё, что необходимо сделали:

Нажимаем ОК, и открывается такое окно:

Нажимаем Target затем connect:

Тест по проверке данного программатор завершен. Теперь буду пробовать уже непосредственно считать или зашить МК.

Небольшое добавление от моего друга, по поводу работы отладчика:

На скриншоте ниже показана отладка в МК. Зеленым указана строчка, которая выполнится на следующем шаге, красным- брэкпоинт (если ядро уткнется в адрес, по которому расположена эта строка, ядро остановится для анализа данных через отладчик). В окошке справа от окна с кодом – регистры ядра. Можно смотреть нее только их, но и любые участки памяти, переменные, регистры периферийных модулей и т.д. Вот такая вот замечательная вещь, отладчик.

У меня на этом всё. Спасибо всем кто меня смотрит и читает!

Один комментарий на “ Китайский программатор-отладчик JLINK V9.6 аналог оригинального J-Link BASE (J-Link BASE Compact) от SEGGER Microcontroller ”

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

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Источник

Для многих любителей, самое болючее в переходе на новую процессорную архитектуру –необходимость заиметь железяки для заливки кода в камень и для отладки его там. Ну признайтесь, вы хотели проиграться с АРМами, но мысля – а как-же это чудо запрограммировать останавливала вас в этой светлой затее и дальше дело не шло!

В этой статье предлагаю вам сконструировать клон отладчика j-link v5 фирмы Keil. Клон называется mt-link.

Параметры

J-link – классический отладчик для АРМов. Это настоящий быстрый отладчик, а не поделка типа Wiggler’a. Максимальная скорость шины – 12МГц. Мне, к примеру, при скорости 1МГц работать вполне комфортно. AvrDragon на той-же частоте и рядом не валялся, тормозюка.

Более подробно о характеристиках отладчиков можно почитать в талмудах типа https://ftp.iar.se/WWWfiles/jlink/J-Link_J-TraceARM-2.pdf.

Я приведу самое важное из него – стандартную распиновку JTAG’a (вид на разъем отладчика):

Напомню вам, что клонирование отладчиков – занятие неблагородное! Делать это можно только в некоммерческих целях в качестве исследования, итп. Я не несу никакой ответственности за то, что вы сделаете с материалами данной статьи.

Manufacturing and selling these clones is an illegal act
for various reasons, amongst them trademark, copyright and unfair business practise issues.

Я — же лично собрал клон исключительно в некоммерческих исследовательских и образовательных целях.

Изготовление

Тут все как всегда – делаем платку, паяем детали. Платка довольно сложная, рассчитанная на заводское производство, но выкрутиться можно. Я-же выкрутился )

Берем схему тут:

Она-же, только в p-cad.

Ну и плата в p-cad’е:

И, на всякий случай, прошивка:

Для того, чтобы посмотреть P-CAD файлы, вы можете сказать P-CAD Viewer – он бесплатен и найти его в интернете – не проблема.

Читайте также:  Выдвижные дождеватели для газона своими руками

Делаем платку. Очень повезло, что в P-CAD Viewer’е вполне адекватная печаталка и плату для фоторезиста распечатать таки можно.

Как видно, главная деталька – at91sam7s64, на лицо типичная проблема курицы и яйца. И она, к счастью, тут решена!

Контроллеры at91sam7 имеют USB загрузчик – достаточно только воткнуть USB разъем в компьютер, загрузить с сайта атмела (https://atmel.com, если кто не догадался) пакет at91-isp, установить ее запустить входящую в комплект SAM-PROG.

Теперь – как запустить загрузчик?

Для этого нужно:

Все, контроллер должен обнаружится и будет готов к программированию.

Если вы пользуетесь IAR’ом, то запустите:

C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\bin\jlink.exe

Программка обновит прошивку отладчика до текущей версии. В ней так-же можно проверить работу некоторых выводов ( напишите команду “?”, вам все распишут ).

Все, с arm7 должно работать. Если вы предполагаете работать с cortex, то придется еще зайти на

и скачать оттуда “Software and documentation pack V4.11m”. При установке нужно будет разрешить заменить dll’ку иара.

Все, кортекс по JTAG’e теперь тоже поддерживается!

Результаты

Отладчик был использован с LPC1756 (Cortex-M3, если кто не в курсе). Я сравнил его с оригинальным J-LINK от IAR v5.4. Естественно, нет никакой разницы.

Естественно, человеческая мысль не стоит на месте, уже есть схемы и прошивки вплоть до восьмой версии отладчика. Найти их можно тут:

Я не собирал, но если вы таки соберете, прошу поделиться.

Мой порыв сделать MT-link умер после того как обаружилось, что на ARM становится Linux, а прошивать можно через COM/Ethernet.

А вот для AVR’ов жизнь заставляет делать USB программатор:-( Теперь вот думаю какой=)

Те армы на которые становится линукс — это уже не эмбеддед, это компы ) Да и не так уж часто они и нужны. По поводу программатора для АВР ничего сказать не могу — сам юзаю дракона )

Да, компы))) Но таки приятно: сунул флешку — видит; сунул SD-карту — видит; даже USB винт на 500Гб сунул — тоже видит.
Для эмбеддеда они таки подходят, если не ставить линукс, а писать сосмому. Хотя, обычно и меги хватает, ибо серьезно я этим не занимаюсь.

А этот MT-Link 5.0 c кортексами под Keil работать будет через JTAG?

Да, в кейле должен работать — это клон сеггеровского линка.

Сергей, а вы можете посоветовать какой-нибудь наиболее перспективный ARM процессор для освоения? Хочется чтобы была производительность приличная по сравнению с AVR, и главное наибольшая безглючность. Смотрел на STM32 Cortex-M3, они вроде ничего, но говорят доки кривые и есть глюки в переферии, есть на данный момент AT91SAM7S32 и LPC2134, но ядро SAM7 не очень шустрое. Как вижу, вы выбрали Cortex-M3 от LPC, какие в пользу этого были доводы? Как впечатление от проца?

Вообще, мне жутко не нравится выражение «процессор для освоения». Процессор должен выбираться под конкретную задачу.

У лпцшных кортексов очень развитая переферия, опробованная на lpc2000, эрраты практически пустые, частота очень высокая — 100МГц, ну и для моей конкретной задачи он подошел, поэтому его и использовал.

Начинать осваивать контроллеры я рекомендую с 8-битных авр/пиков — там больше специфических граблей.

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

Ну не знаю, я не согласен. Выбирать процессор под конкретную задачу — их слишком много, и все они в чём то, но разные. Не знаю, может я один такой, но ведь тогда придёться каждые пол-года учить новую архитектуру, что затратно по силам и по времени. А потом перейти не так то легко. Нужен софт , отладчики, библиотеки, операционки и много еще чего… Дорого выходит. Интересно конечно так, поковырять чуть чуть. Разве не в этом плюс контроллеров? Один (Ну не один, но и не все сразу) знаешь, круто на нём программируешь ничего лишнего не учишь. Я сейчас:
1) Пишу для соревнований проект под новый для меня PIC
2) Разгребаю по работе в институте проц ATmega 644
3) Начал осваивать STM8/Пытаюсь хотя как то начать STM32

Читайте также:  Как обрезать необрезную доску своими руками

При этом на компе горы всяких MpLab’ов, IAR’ов, AVR Студий и так далее.
Не говоря уже о Eagl, Proteus, Multisim….
Плюс для каждого свой программатор, разные языки программ…

С другой стороны представление обо всём надо иметь, а знать всё нельзя. Ну вот, что думал, то и сказал=))) Аминь! ))

Новая архитектура учится ровно за день (чтение доки), и то это далеко не всегда нужно — ведь производитель компилятора сделал это за нас. Если знаешь основные принципы — все архитектуры кажутся похожими. Я лично совершенно не чувствую никакого дискомфорта при переходе с архитектуры на архитектуру.

А можно с помощью этого отладчика скажем залезть в проц к КПК ?
ЗЫ А как с следующими версиями ARMов?

>А можно с помощью этого отладчика скажем залезть в проц к КПК ?
Можно, только среда должна поддерживать этот проц.

>А как с следующими версиями ARMов?
Поддерживает все армы с интерфейсом JTAG, не поддерживает SWD

Доброго времени суток.
Скажите пожалуйста, среда H-JTAG с ним работать будет?
И еще :я так понимаю МК серии LPC2xxx он поддерживает?

>среда H-JTAG с ним работать будет?
Не пробовал, но должна.

>я так понимаю МК серии LPC2xxx он поддерживает?
Безоговорочно и непредотвратимо.

Доброго времени суток.
Еще один вопрос: не пробовали программировать из-под Keil’a?

Нет, не пробовал.

Доброго времени суток. У меня есть такой отладчик — отличная штука, но недавно наткнулся на форуме электроникса на тему по апгрейду девайса до седьмой версии. Цена вопроса — 2 перемычки и пол часа времени на перепрошивку. Зачем? — чтобы получить SWD. Смысл в том, что кидаются 2 перемычки от проца к разъему JTAG, т.е. в режиме JTAG обмен с таргетом идет через буфер, а в режиме SWD напрямую, буфер вырубается. Попробовал, запаял перемычки, заменил прошивку на 7ю версию и теперь работаю только по SWD, очень удобно — всего 4 провода, да и то один просто для замера питания таргета. Делал в спешке, поэтому не все помню. Подробности можно найти на указанном форуме в теме что-то вроде «Китаеза линк».

Я в итоге купил китайский клон 8 версии, скоро выложу обзор. Там есть и SWD и SWO.

Посмотрел на ПП и ужаснулся. Спектра видать рулила. 🙂

Дешевле купить 🙂 затраты не стоят тех денег. всего то 130 грн и будет вам шастя 🙂

Создать новую ветку комментариев

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

Источник

Это не пост из серии «похвастаться покупкой», это пост о том, как я эту железяку запускал. Оказалось нетривиально. И последнюю версию софта с сайта сеггера так и не удалось запустить почему-то. Кому интересно — под кат 🙂

Брал тут. Комплект слегка расширенный переходничком на разные провода. В остальном такой же клон, как и у всех, наверное.

Коробочка на защелках, а китайцы… Такие китайцы… 🙂 Сэкономили копеечку на трех болтиках. Плата прикручена была лишь одним…

Сзади чутка неотмытого флюса, все как в лучших китайских домах 🙂

А теперь самое интересное.

Сходил на сайт сеггера, скачал последнюю версию ПО V4.46e, поставил, запустил JLink.exe, Jlink шустро определился, предложил обновиться…
Обновление прошло успешно, о чем он мне сам же и написал, но вот беда, после этого JLink.exe стал лишь тупить и через некоторое время выдавать мне сообщение, что он не смог, толи с синхронизацией что-то не так, толи еще с чем. В общем, ААААА! Что делать! Паника-паника! «Без паники.» — подумал я, вспомнил, что есть где-то тут уже инструкции по восстановлению, побежал их искать (как выяснилось — зря).

Восстановление.

Отчасти руководствуясь вот этим, отчасти переведя с китайского (не самостоятельно конечно) инструкцию JLINK_____SAMBA в архивчике, я таки допер, как восстановить прошивку постарее.
На моем экземпляре как раз есть блок джамперов ERASE, JTAGSEL, TST — вот их и использовал.
Примерно как было написано: замкнул и подержал ERASE, после чего девайсина стала определяться как «Неопознанное устройство», затем подержал TST (там не все очевидно, у меня прокатывало не всегда, толи надо подержать, выдернуть усб и только потом отпустить, толи наоборот, я так толком и не запомнил).
В общем, в итоге зверь определился как чего-то подходящее для SAM-PROG (все из того же архивчика), и с помощью него я и прошил прошивочку версии 8 с идентификатором 12345678. Сейчас вот об одном жалею, что не переписал свой старый идентификатор, который был в девайсе, хотя и сомневаюсь, что там был какой-то правильный, но все же.
Снова вынул/сунул шнур, устройство определилось опять как JLink, и самое главное JLink.exe его опять начал понимать и предлагать обновить…

Читайте также:  Домашнее пивоварение своими руками рецепт
Пробы и ошибки:

Еще несколько раз я экспериментировал, пробовал разные версии программщины с сайта сеггера, думал, мало ли, на какой-то пойдет. И правда, пошло. Выяснилось, что нормально работает моя железка до версии 4.40d включительно. Ее и оставил.

Почему я зря парился с SAM-PROG и восстановлением:

В процессе опытов так же выяснилось, что версия программщины 4.40d прекрасно определяет девайсину и с более новыми прошивками! Да-да! То есть, когда я обновил прошивку через JLink.exe V4.46e по самое новое немогу, я не сломал саму железку. Просто сам этот JLink.exe ее почему-то перестал признавать. Может защита какая от паленых устройств?
В общем, JLink.exe V4.40d прекрасно распознает железку с прошивкой, зашитой через JLink.exe V4.46e, то есть с самой новой прошивкой… Вот почему я зря парился с восстановлением. Можно было просто после обновления поставить программщину более старой версии… Но кто же знал? Хотя сигнал об этом был, даже два: 1 — сам обновляльщик сказал, что все обновилось правильно; 2 — винда не перестала корректно определять железку. То есть логично было предположить, что это именно сам софт ее отказывается кушать. Почему? С этим я так и не разобрался.

Есть у кого идеи, почему в моем случае программщина новее версии 4.40d не хочет корректно работать с китайским JLink обновленным с помощью нее же? Может можно что-то с этим сделать? На самом деле не критично, пока вроде и так все работает, но все же…

Собственно в действии:

Подключил стандартным кабелем к не менее китайской минималистичной отладочной плате с STM32F103ZET6…

Запустил Кокос, сварганил простенький проект с миганием диода и… И ничего не завелось…
Нет, настройки я конечно указал, J-Link / JTAG / порт 2331 / путь к JLinkGDBServerCL.exe
Правда зачем-то выбрал Big endian. В общем, при запуске отладки кокос никак не мог нормально ее запустить, и толком ничего вразумительного не писал… Потом я таки допер поменять на Little endian. А до кучи еще и скорость немного снизил в настройках самого JLink до 4000 KHz. В общем, после этого все завелось, пошла отладка, как по JTAG так и по SWD.

Итого:

Честно говоря, ждал чего-то большего 🙂 Мне почему то казалось — вот он полноценный отладчик, специальная железка, не урезанный ST-Link в Discovery… Но, знаете, урезанный ST-Link не только отлаживать позволяет, но и просто прошивать. А вот с подключенным J-Link у меня просто прошивка в кокосе не работает. Вообще этот пункт не активен. Даже не знаю почему. Наверное и тут нужно что-то настроить, а может просто в этой версии кокоса еще не реализована прошивка через J-Link. Ведь перед отладкой-то он прошивку в камень зашивает.

То есть, возможно я еще просто не проникся, «не умею их готовить»?
Если у кого есть какие мысли на сей счет, советы, как что настроить — буду рад услышать 🙂
А пока дак мне удобнее по 4 проводкам подключить Discovery и работать через нее.

PS: да, возможно надо было с кейлом попробовать, но пока вот у меня кокос на повестке дня.
PPS: писал по быстрому, на ошибки и опечатки не проверял — если найдете, поправлю.

Источник

Оцените статью