Как симулировать микроконтроллер STM32 и электрическую схему?

Есть отладочная плата STM32 L1 Discovery. С макетными платами пока связываться не хочу. Вдруг перегорит что-нибудь. Хочется для начала поработать в режиме симуляции.
Из известных мне программ только Протеус позволяет работать симулировать микроконтроллеры в связке с электрической схемой и устройствами. Но в Протеусе не поддерживается данный мк.
Есть ли другие альтернативы, где можно симулировать электрическую схему с мк?
  • Вопрос задан
  • 15494 просмотра
Решения вопроса 1
@LampTester
Ответ на вопрос - никак. Вообще, полная симуляция устройства это тупиковый путь: чем сложнее схема, тем непредсказуемее становится влияние погрешностей симуляции на результат, и тогда его ценность теряется.

Потому на самом деле устройства как правило разрабатываются следующим образом:

  • сложный функционал разбивается на простые задачи;
  • конкретным задачам сопоставляются типовые решения, например, для источников питания, усилителей, узлов согласования уровней и прочих блоков в составе устройства;
  • при наличии сомнений в работоспособности конкретного узла выполняется его симуляция (только одного узла); при этом выполняется его проверка во всех интересующих режимах, с заданием управляющих воздействий с помощью примитивов симуляции (идеальные источники тока/напряжения и т.п.); также может проводиться макетирование отдельного узла в реальности;
  • прошивка тоже отлаживается отдельно и по частям; для этого создается проект на ПК, в котором отлаживаются модули, не имеющие отношения к железу (например, шифрование, различные кодировщики и т.п.).
  • на финальном этапе все собирается вместе, дописывается HAL и производится отладка в железе.


Выше описан "максимальный" вариант разработки для сложного устройства. В конкретных случаях некоторые этапы могут пропускаться или переставляться местами. Я, например, чаще всего начинаю разработку прошивки уже при наличии собранной платы, и тестирую ее прямо в железе, причем сначала пишу HAL (если он предполагается). Тестирование на ПК требуется в основном тогда, когда прошивка содержит в себе какие-то сложные алгоритмы, не поддающиеся разработке без основательной отладки и не имеющие прямого отношения к железу (изначально кросс-платформенные).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
@evgeniy_lm
Похоже никак. STM32 это серьезные штуки для серьезных людей. Лет 5 назад кому нужно было покупал плату за 150$-300$ и экспериментировал. Такую штуку эмулировать в реальном времени даже сегодня не каждый комп сможет, а лет 10 назад это было вообще не реально, почему и появились всевозможные отладочные платы. Сейчас ваша плата стоит около 10$ т.е. порог входа несоизмеримо упал и такие платы без проблем появились у тех кто их боится спалить.
Начните с более дешевых Arduino, когда страх пройдет возьметесь за эту. Поверьте эмулятор и реальное устройство это две большие разницы.
Ответ написан
Комментировать
AlanDrakes
@AlanDrakes
Насколько я помню, ни одна из широкодоступных программ проектирования печатных плат (в частности, тот же Proteus) не умеет симулировать 32-битные ядра. Шутка ли 4 GiB внутреннего адресного пространства, где даже чтение адреса может что-то сделать с переферией.
Это сложно симулировать.
Потому - только реальные платы, или же внутренняя симуляция в IDE с большим количеством ограничений (отсутствие внешней схемы, в частности).
Ответ написан
@sled
Ответ написан
Комментировать
@litovko
Интересуюсь разработкой ПО
Используйте QEMU - https://www.youtube.com/watch?v=bS4j8VSeRrE
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы