STLink в виде терминала

Как обычно, ушат помоев выливаем на ST за то, что не всегда пользуются головой при создании дев. борд*. Я честно, не знаю ни одного эмбеддерщика, который бы при работе не юзал терминал последовательном порту для отладки. (Или может мало их знаю?). А общем, gdb хорошь, да старый добрый ‘dmesg’-образный лог бывает иногда даже полезнее.
Так или иначе, пока суровые мужики реверсинженерят фирмварю StLinkV2 пытаясь найти следы вменяемости у разработчиков из ST, но находят только дыры в безопасности эпических размеров, я решил использовать STLinkV1 и STLinkV2 как есть.
Первой мыслью было взять и запихнуть VCP из примеров в стлинковский МК (А это у нас STM32F103C8T6) кинуть пару проводочков, но в конце концов – не хотелось выпиливать STLink окончательно (он меня выручал пару раз). Мысли? Их есть у меня!

IMG_20130506_100917

Шаг первый. Что у нас делает STLink? Правильно, помимо шаманства с брейкпойнтами, степами он пишет и читает память. Звучит хорошо? Хорошо! Этого нам и хватит чтобы реализовать что угодно.
(далее…)