- PVSM.RU - https://www.pvsm.ru -

Отладчик за копейки: делаем ST-Link из Maple Mini

Отладчик за копейки: делаем ST-Link из Maple Mini - 1

Начав свое знакомство с STM32 [1] с китайских клонов Leaf Maple Mini (потому что самый дешевый вариант, 4$), я столкнулся с неудобством. Поскольку на Maple IDE рассчитывать не стоит, значит, приходится работать с «голым» STM32. А раз ST-Link у меня нет, заливать программу я могу только по UART, что неудобно (и нет возможности отладки).

Но читатель imwode [2] ровно через 9 часов после моей публикации написал ответный материал [3], из которого я узнал прекрасное: отладчик ST-Link основан на том же микроконтроллере STM. При этом, прошивка отладчика умельцами вытащена и готова к загрузке на неродные устройства. Maple Mini подходит идеально: ничего лишнего, USB распаян, надо только несколько резисторов подключить.


Нужно:

1. Соединить PA5 и PB13 (D6 и D30 у Maple Mini). Это будет линия SWСLK.
2. Между PB14 и PB12 (D29 и D31) поставить резистор в 220 Ом. PB14 (D29) — это линия SWDIO.
3. PA0 (D11) подключить к делителю из двух резисторов в 4.7 КОм между +3.3В и GND.

И тут тоже грабли!

После прошивки, по идее, ПК должен распознать плату как ST-Link. Но нет. Как будто ничего вообще не подключено. На поиск граблей было потрачено энное количество времени, а надо было всего лишь повнимательнее посмотреть на схему Maple Mini, а конкретно — на реализацию линии USB D+. Она подтягивается к +3.3В через резистор 1.5 КОм, но включается подтяжка транзисторным ключом. Который управляется с ножки МК и по умолчанию выключен. А раз так, ПК просто не понимает, что подключено к USB-порту. Не будем вмешиваться в плату, а просто «повесим» еще резистор в 1.5 КОм между +3.3В и D+ (D23).

Теперь у нас появилось устройство ST-Link. Ставим ST-Link Utility, там и драйвер имеется. Обновляем прошивку нашего ST-Link (через эту самую Utility), и с отладчиком можно начинать работу. По крайней мере, я подключил к нему вторую Maple Mini: SWCLK к PA14 (D21), SWDIO к PA13 (D22) и успешно как залил откомпилированный Blink, так и произвел его дебаг средствами Coocox.

В принципе, устройство уже можно оснащать нормальным разъемом и запихивать в корпус. Не забыв перед этим добыть «нормальные» резисторы, а не то, что под руку подвернулось. Не помешает и какая-нибудь светодиодная индикация. Я думаю, многие самодельщики подтвердят, что переход от «спички, желуди, синяя изолента» к законченному устройству — самый сложный и длительный, ибо «зачем, оно и так работает, хоть и провода торчат во все стороны».

И, да, китайский ST-Link можно купить за те же 4$ на Aliexpress, например [4].

Основополагающая тема на Easyelectionics. [5]
Прошивка (тожe Easyelectronics). [6]
Описание Leaf Maple Mini [7]
ST-Link Utility [8]
Мануал на «родной» ST-Link [9]

Автор: eta4ever

Источник [10]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/stm32/78649

Ссылки в тексте:

[1] знакомство с STM32: http://habrahabr.ru/post/247241/

[2] imwode: http://habrahabr.ru/users/imwode/

[3] ответный материал: http://habrahabr.ru/post/247255/

[4] например: http://ru.aliexpress.com/item/FREE-SHIPPING-ST-Link-V2-stlink-mini-STM8STM32-STLINK-simulator-download-programming-With-Cover/1766455290.html

[5] Основополагающая тема на Easyelectionics.: http://forum.easyelectronics.ru/viewtopic.php?f=17&t=6620

[6] Прошивка (тожe Easyelectronics).: http://forum.easyelectronics.ru/download/file.php?id=16281

[7] Описание Leaf Maple Mini: http://static.leaflabs.com/pub/leaflabs/maple-docs/latest/hardware/maple-mini.html

[8] ST-Link Utility: http://www.st.com/web/en/catalog/tools/PF258168

[9] Мануал на «родной» ST-Link: http://www.st.com/st-web-ui/static/active/en/resource/technical/document/user_manual/DM00026748.pdf

[10] Источник: http://habrahabr.ru/post/247275/