Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SWD - распиновка
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
bingo
Добрый день

Подскажите пожалуйста - кто какую применяет распиновку SWD разъема на плате.
Как я понимаю - это нигде не регламентируется
Хотелось бы найти наиболее удачный вариант.
Желательно чтобы сигнал Reset там присутствовал, хоть он для ST-Link и не нужен.

Ну например, чтобы при случайном перевернутом подключении этого разъема не повредить компоненты.
Тот вариант, который я использую сейчас - оказался не удачным.
При ошибочном повернутом на 180гр включении SWD - вышел из строя ST32

Заранее спасибо
HardEgor
Ставьте стандартный на 10 контактов - он с ключом.
Здесь еще загляните
ataradov
QUOTE (bingo @ Aug 7 2016, 18:12) *
Как я понимаю - это нигде не регламентируется
Регламентируется - http://infocenter.arm.com/help/topic/com.a..._connectors.pdf
viakon
Цитата(bingo @ Aug 8 2016, 06:12) *
Подскажите пожалуйста - кто какую применяет распиновку SWD разъема на плате.

Использую 3 пина, в середине земля, по бокам SWDIO и SWDCLK. При неправильном включении ничего не горит, просто не работает.
uriy
А питание? Или у вас все изделия питаются от 3.3В и его завели жестко на самом программаторе.
jcxz
Цитата(bingo @ Aug 8 2016, 07:12) *
При ошибочном повернутом на 180гр включении SWD - вышел из строя ST32

Ну раз так любите переворачивать: возьмите однорядный разъём, посередине расположите GND, с одной стороны от GND - сигналы, с другой - эти же сигналы, зеркально к противоположной стороне.
Тогда как ни воткнёте - всегда работать будет.
Сергей Борщ
QUOTE (jcxz @ Aug 8 2016, 08:23) *
Тогда как ни воткнёте - всегда работать будет.
Сдвинет на один вывод, к гадалке не ходи sm.gif
Использую штыри PLD 2*3. Два вывода в одном ряду удалены и вставлены в ответную часть разъема. Воткнуть неправильно невозможно. Reset не использую, но можно под него вернуть один из удаленных штырей.
bingo
Цитата(ataradov @ Aug 8 2016, 06:54) *

Там все большие разъемы. А для SWD ST-Link достаточно только 3 пина. Reset нужен для J-Link.

Цитата(viakon @ Aug 8 2016, 08:39) *
Использую 3 пина, в середине земля, по бокам SWDIO и SWDCLK. При неправильном включении ничего не горит, просто не работает.

Питание нужно! Т.к. от него в ST-Link питаются согласователи уровня. Написано в доке.

Цитата(Сергей Борщ @ Aug 8 2016, 09:39) *
Сдвинет на один вывод, к гадалке не ходи sm.gif
Использую штыри PLD 2*3. Два вывода в одном ряду удалены и вставлены в ответную часть разъема. Воткнуть неправильно невозможно. Reset не использую, но можно под него вернуть один из удаленных штырей.

Я тоже использую штыри PLD 2*3.
Но вопрос какая в этом случае распиновка лучше????
x893
Для J-Link RESET не обязателен, так же как и для ST-Link
Obam
Цитата(x893 @ Aug 8 2016, 11:00) *
Для J-Link RESET не обязателен, так же как и для ST-Link


Не учите плохому (;

Прислали как-то плату, SWD (ST-Link) был без RESET, а MCU с прошивкой - сразу уходил в спячку (видите ли, надо было хрен-пойми какой GPIO на землю "чиркнуть" для подъёма);
так вот, пока сброс не протянул от разъёма на вывод LQFP100 проц не коннектился ни в какую.

Не стОит одна дорожка к сбросу того "головняка", что будет при её отсутствии.
demiurg_spb
Цитата(Obam @ Aug 8 2016, 10:56) *
Прислали как-то плату, SWD (ST-Link) был без RESET, а MCU с прошивкой - сразу уходил в спячку (видите ли, надо было хрен-пойми какой GPIO на землю "чиркнуть" для подъёма);
так вот, пока сброс не протянул от разъёма на вывод LQFP100 проц не коннектился ни в какую.

Это может происходить, если зашитое приложение отключает jtag.
И обходится элементарно - не дать ему стартануть: поменять логику на ногах boot0..N и стартануть заводским загрузчиком, после чего jtag/swd цепляется без линии ресет.

2ТС: Cтандартной распиновки чистого SWD нет (только в сотаве jtag).
В качестве "полу-стандартной"))) распиновки можете посмотреть как сделано на платах stm32-discovery...
Obam
Цитата(demiurg_spb @ Aug 8 2016, 13:15) *
Это может происходить, если зашитое приложение отключает jtag.
И обходится элементарно - не дать ему стартануть: поменять логику на ногах boot0..N и стартануть заводским загрузчиком, после чего jtag/swd цепляется без линии ресет.

Это происходило, потому как проц уходил в спячку.

(; Странное использование слова "элементарно": соревноваться в быстродействии с процом?

НЕ НАДО менять логику "логику на ногах boot0..N", НЕ НАДО "стартануть заводским загрузчиком". Одна дорожка от JTAG до RESET и ВСЁ. DIXI.
x893
Всегда можно придумать случай когда общие положения нарушаются.
Конечно если есть RESET - не помещает, но если его то жизнь не останавливается.
Огурцов
конденсатор на ресет и пинцет в руках
MiklPolikov
Вот это крутая вещь !
Но цена $98, при том что если на них переходить то нужно покупать > 1шт ...
Если кто-нибудь найдёт такое же готовое решение где-нибудь на aliexpress , сообщите !
ataradov
QUOTE (MiklPolikov @ Aug 8 2016, 13:07) *
Вот это крутая вещь !
Что тут крутого? Площадь на плате занимает больше, чем любой стандартный разъем, и дырки сверлить все-равно нужно.
MiklPolikov
Цитата(ataradov @ Aug 8 2016, 23:09) *
Что тут крутого? Площадь на плате занимает больше, чем любой стандартный разъем, и дырки сверлить все-равно нужно.

В том и дело, что для пластмассовых ножек дырки можно не сверлить. Что бы ткнуть и прошить достаточно отверстий для металлических штырьков-направляющих рядом с иголками. Сами иголки со шагом 1.25.
ataradov
QUOTE (MiklPolikov @ Aug 8 2016, 13:22) *
Что бы ткнуть и прошить достаточно отверстий для металлических штырьков-направляющих рядом с иголками.
Если держать не нужно, то я и обычным стандартным 10-пиновым 1.27 мм разъемом прошивал десятки плат без запайки самого разъема. Проблема с контактом возникла пару раз, не более.

Это для мелкосерийного производства, а для нормально работы, можно и запаять 1-2 платы.
MiklPolikov
Цитата(ataradov @ Aug 8 2016, 23:26) *
я и обычным стандартным 10-пиновым 1.27 мм разъемом прошивал десятки плат без запайки самого разъема.

А мы прошиваем тысячи, втыкая штырьки со шагом 1.27мм в ряд ответных дырочек на плате и наклоняя штырьки на бок.
Просто увидел на картинке "цивилизованное" решение, сразу захотелось внедрить.
scifi
Цитата(MiklPolikov @ Aug 8 2016, 23:07) *
Вот это крутая вещь !
Но цена $98, при том что если на них переходить то нужно покупать > 1шт ...

Откуда 98 доллариев? Дижикей продаёт по 36 в розницу.
Пользуем давно. Хорошая вещь. Конечно, если делать дырки для фиксации, то площадь сильно раздувается.
viakon
Цитата(uriy @ Aug 8 2016, 10:03) *
А питание? Или у вас все изделия питаются от 3.3В и его завели жестко на самом программаторе.

99%. Если очень надо питание, я бы предложил следующий вариант. 5 отверстий в ряд. SWDIO-GND-VCC-GND-SWDCLK. Разворот на 180 не приводит к выходу из строя и сигналы экранированы землей в плоском кабеле.
Siargy
Цитата(scifi @ Aug 8 2016, 22:46) *
Дижикей продаёт по 36 в розницу.

ага, почти задаром, только доставка там +150.
AlanDrakes
Цитата(MiklPolikov @ Aug 9 2016, 02:07) *
Вот это крутая вещь !
Но цена $98, при том что если на них переходить то нужно покупать > 1шт ...
Если кто-нибудь найдёт такое же готовое решение где-нибудь на aliexpress , сообщите !


Так попробуйте взять "Pogo pins" и несколько обычных стальных/медных/керамических/магнитных/невидимых штырьков, и сделайте разъём их них.

Сам сейчас пользуюсь шлейфом, оконеченым обычным IDC гнездом, в которое вставлены эти пины. Очень удобно, когда нужно на несколько плат залить прошивку. Быстро и не нужно паять, достаточно прикоснуться к контактным пятакам на плате.
Единственный минус, лично у меня - пины пытаются слегка сойтись к центру разъёма (тянет рядами, а не все в кучку), от этого порой сложно попасть.


А по теме - использую однорядный разъём. Пока не ошибался, но вообще делал без заморочек. Линия питания к разъёму подводится через ограничительный резистор и ничего не горит. Диод тоже никто не отменял.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.