Главная > Tools > Как я прокачал STM8S-Discovery

Как я прокачал STM8S-Discovery

Для тех, кому лень читать целиком: В STM8S-DISCOVERY отлично заливается прошивка от ST-LINK/V2 и все работает.

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

Несмотря на то, что я порядочный ретроград, прогресс таки докатился и до меня — в текущей разработке у меня будет стоять новый модный STM8S103F3P6 по причине выдающейся цены оного. А, кстати, о ретроградах…

Так вот, у меня возникла необходимость программировать STM8. Посему я достал с полки упомянутую в заголовке плату, сдул с нее пыль и попытался запрограммировать контроллер. Не вышло. Надо сказать, что у меня и до этого были проблемы с ST-LINK (V1), и тогда я даже нашел решение; тем не менее, сейчас не прокатило и это. Не знаю в чем дело, но факт — ST-LINK окончательно отказался работать на моей системе.

В общем, я задумался о том, как бы материализовать себе ST-LINK/V2. В принципе, такие программаторы у меня были на платах STM32-Discovery — но на отладках, как известно, стоит урезанная версия, которая может программировать только то семейство, для которого эта отладка предназначена. Купить — вариант понятный, но это надо еще из дома выходить, да и программатор мне был нужен вотпрямщас. Грустно блуждая по интернету, я в очередной раз наткнулся на человека, который сделал ST-LINK/V2 сам. Посмотрел я на это, посмотрел, и вдруг понял, что схема, приведенная в статье, совершенно не противоречит схеме программатора STM8S-DISCOVERY (стр. 16)! Собственно, в программаторе и там, и там канонично используется STM32F103C8T6, включение значимых ножек по схеме совпадает…

В общем, я запаял хедеры разъема JTAG’а программатора на STM8S-DISCOVERY и подключил к нему сигналы SWD (они находятся на тех же пинах, что и JTAG) от программатора с платы STM32-VLDISCOVERY, после чего с помощью STM32 ST-LINK Utility снял защиту, стер кристалл и залил бинарник прошивки, который взял из архива, скачанного по ссылке из той статьи, где человек самостоятельно собирал программатор. После подключения к компьютеру подопытный девайс определился как ST-LINK/V2. Далее я штатно обновил прошивку с помощью ST-LINK Upgrade Tool и в качестве теста попробовал подключиться к STM8S103F3P6 из STVP. Бинго! Все заработало!

Программировать STM32 через мой новый ST-LINK/V2 и использовать JTAG на нем я пока не пробовал, но, судя по схеме, это возможно через тот же самый выведенный порт JTAG’а.

Так что, если у кого-то есть STM8S-DISCOVERY с ST-LINK V1 и какая-нибудь из плат STM32-DISCOVERY, с помощью последней можно легко залить прошивку ST-LINK/V2 в первую и получить полноценный ST-LINK/V2.

Рубрики:Tools
  1. Air_Hamster
    29/07/2016 в 19:01

    Просто по UART прошить не получится, да? Только SWD?

    • YS
      29/07/2016 в 20:43

      Я не проверял.

      Можно либо покурить даташит/RM и выяснить, есть ли в STM32F103C8T6 бутлоадер с завода, либо просто попробовать подключиться.

  2. Antony
    19/03/2016 в 17:34

    А если не работает, куда копать?

    подключил по swd от STM32-VLDISCOVERY, разлочил, прошил, потом подключил кабель, обновил прошивку, подключаю другие камни к jtag разъему по swd, а их никто не видит. И openocd пробовал и st-link utility.

    может что то нужно модифицировать в плате еще?

    • YS
      19/03/2016 в 19:18

      А софт на ПК программатор видит?

  3. Demo
    08/01/2016 в 12:07

    Да, Писатель! Хрен поймёшь с кем разговаривал! Прокачал…. А слабо нормальным языком объяснить как подключить ST-Link к контроллеру STM8, STM32, пины какиеот программатора и куда подключать к контроллеру, программа какая пользовалась при этом и так поэтапно! А то как шнырь, это х#як, туда п##дык — всё, я крендель!!!

    • YS
      08/01/2016 в 22:10

      Эта статья предназначена для тех, кто уже имеет эту самую STM8S-Discovery и работал с ней и STM8 вообще. Я сообщаю им, как они могут расширить функционал знакомой им платы. Так что это ни в коем разе не туториал по STM8.

      А вам надо почитать документацию. Инженеры STMicrolectronics старались, писали ее для вас, а вы ее игнорируете. Нехорошо…

      Прежде всего — даташит на контроллер. Например, на STM8S103F3P6, глава 14, «STM8 Development tools». Там вы узнаете, в чем прошивка пишется, как и чем заливается.

      Как устроена STM8S-Discovery (какие пины где на ней) — UM0817 «STM8S-Discovery User Manual». Там же можно прочесть и увидеть на схеме, какие пины используются для программирования, а также где они находятся на плате.

      Если вы используете какой-то программатор, то что куда подключать будет написано в документации на него.

  4. Deusex25
    10/10/2015 в 01:10

    Отлично!
    Всё прошилось и пашет на ура! Огромный респект автору!

    • YS
      10/10/2015 в 10:21

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

      (комментарий-дубль удалил; у меня в блоге принята премодерация первого комментария, остальные комментарии будут появляться сразу)

  1. No trackbacks yet.

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

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s