Корпуса создаются размещением контактных площадкок, чертежей трафаретов (если необходимо, то и проводников) на рабочей области, .
Создадим несколько простейших моделей и на их примере посмотрим, что и как мы можем сделать. Я не буду описывать, как создать собственно графическую модель, это отлично описано тут и тут, поэтому остановлюсь именно на написании кода. Вот 3 устройства, которые мы будем рассматривать.
Я хотел сначала начать с мигания светодиодом, но потом решил, что это слишком уныло, надеюсь, не прогадал. В нашем случае, у всех моделей dll будет одна и та же, а вот скрипты — разные. Итак, создаем модель: Описание моделиdevice. На данном этапе библиотека поддерживает только цифровые устройства. Поддержка аналоговых и смешанных типов в процессе. Он должен точно соответствоват — привязка вывода внутри Proteus идет по имени. Два оставшихся поля говорят сами за себя — время переключения пина в пикосекундах.
Необходимые функции, объявляемые пользователем. На самом деле, нет строгой необходимости создавать что- то в скрипте. Можно вообще ничего не писать — будет модель пустышка, но для минимального функционала нужно создать функцию device. Эта функция будет вызываться, когда изменится состояние нод (проводников), например, изменится логический уровень. Есть функция device.
Для установки состояния вывода в один из уровней есть функция set. Для этого есть функция timer. Разница в задании времени из- за того, что set. Хотя разумеется, все то же самое можно сделать на С, а Lua использовать для прототипирования, благо названия функций идентичны. Запускаем симуляцию и наблюдаем работу нашей модели. Возможности отладки. Основной целью было облегчение написания моделей и их отладки, поэтому рассмотрим некоторые возможности вывода полезной информации.
Текстовые сообщения. Для вывода бинарных данных в удобной форме есть memory. Если окно не создано — создадим его. И создадим окно debug типа, куда выведем нужны нам переменные и для масовки сдампим 3.
Наконец, реализуем сам алгоритм работу ПЗУ, оставив без внимания OE, VPP и прочие CE выводыfunction device. Я взял модель двоичного счетчика 4.
Proteus 7 и сделал свой аналог. Тем ни менее, вполне терпимо за удобство работы. Да и вопросами оптимизации я даже не начинал заниматься. Весь этот проект родился как спонтанная идея, и ещё много чего нужно сделать: Ближайшие планы. Пофиксить явные баги в коде. Максимально уменьшить возможность выстрелить себе в ногу. Не Смолкавшие Ни На Минуту Раскаты Грома.
Документировать код под Doxygen. Возможно, перейти на lua. JITРеализовать аналоговые и смешанные типы устройств. Кос По Дисциплине Основы Бухучета на этой странице.
С плагин для IDAРазумеется, хотелось бы найти единомышленников, желающих помочь если и не участием в написании кода, то идеями и отзывами. Ведь сейчас многое захардкодено под цели и задачи, которые нужны были мне.
Скачать без рекламы и смс. Репозиторий с кодом.