Причина создания утилиты: она как всегда тривиальная, защитить себя от кражи своего исходного файла прошивки, написанного под микроконтроллер STM8S003F3, которую передаю сторонним лицам на программирование. И другой возможности просто нет, это требование заказчика/хозяина. Результат со мной будет обговоариваться спустя несколько месяцев, аж после продажи готовых изделий самим заказчиком. Но вот если я предоставлю утилиту для программирования МК это будет нормально, мало ли сколько есть всевозможных «прошивателей» микроконтроллеров, например тот же ST-VP.exe (оконная версия) и STVP_CmdLine.exe (консольная версия) и появление ещё какой-то ни у кого не вызовет лишних вопросов. Тем более что в своей программе смогу сделать защиту от кражи, как самого исходного файла прошивки, так и саму возможность программирования можно будет приостановить в любой момент, или поставить счетчик и т.п.
Краткое описание текущей ситуации: программа написана под самую завязку STM8S003F3, ноги полностью все заняты, в основном на выход, только одна на вход АЦП, кроме ножки сброса, поэтому скорее всего вариант с bootloader-ом не пройдет (если честно я ещё не совсем разобрался с этим моментом). Из того что понял на данный момент, мне кажется банально не хватит места, ведь у меня еле влезло то что требовалось, а использовать именно этот МК опять же требование заказчика. Да и программировать в два этапа, сначала откуда-то bootloader, а потом каким-то образом ещё откуда-то основную программу - не подойдет. Никого не устроит этот вариант. Если в этом моменте что-то недопонимаю поправьте.
Почти уверен, что просто прошивка через уже готовый ST-LINK/V2 через SWIM блоками по 256 или 512 байт в программную часть флеш наверняка даже проще чем городить сам bootloader, который пусть и сам себя может прошивать – ну незачем всё усложнять …. или я опять же что то не до понимаю!!!
P.S. защиту от чтения ROP уже прошитого МК установил в коде прошивки, поэтому об этом уже тоже позаботился


