Оставьте в покое ассемблер. Там есть третий вариант, с исходниками на с. Изучайте язык, структуру программы, делайте то, что нужно вам. Увы, но это другие не сделают.
Хлопцы, полундра. Есть j-link и stm32f051c8t6. В регистре альтернативных функций AFR, это тот который без макросов в цмсис, косякнул со значением в хекс и похоже перекрыл swd и теперь No Id code detected. С зажатым-отпущенным ресетом не шьёт. Что делать?