Scrap Mechanic - Основы логики (Часть 2)
Введение
Как было сказано, давненько я в игру не заходил.... Пришло время наверстать упущенное и выпустить вторую часть про автоматизацию схем. В прошлой части мы рассматривали карты Карно - то есть ручной метод расчёта схем. На этот раз мы воспользуемся специальной программой для автоматизации процесса. Понятно, что это не уровень того же Verilog или VHDL, но для простых схем нам этого хватит.
Необходимое программное обеспечение
Как было сказано ранее, для этой части нам потребуется специальная программа. Недолго думая - берём первую попавшуюся простенькую, бесплатную программу для синтеза схем с интернета. Одной из таких является "Logic Friday" (рисунок 1).

Данную программу можно скачать с "веб архива": [ссылка на WayBack Machine][web.archive.org]
На странице архива нужно выбрать пункт "Download Logic Fiday" (рисунок 2).

Далее её необходимо установить и запустить. После чего создать новый проект: "File -> New -> Truth table"; задать число входов и выходов и нажать "ОК" (рисунок 3).

Дальнейшие действия опишем в следующем разделе при постановке задачи.
Рисунок 1 - Интерфейс программы "Logic Friday"
Данную программу можно скачать с "веб архива": [ссылка на WayBack Machine][web.archive.org]
На странице архива нужно выбрать пункт "Download Logic Fiday" (рисунок 2).
Рисунок 2 - Скачиваем программу "Logic Friday"
Далее её необходимо установить и запустить. После чего создать новый проект: "File -> New -> Truth table"; задать число входов и выходов и нажать "ОК" (рисунок 3).
Рисунок 3 - Создаём новый проект
Дальнейшие действия опишем в следующем разделе при постановке задачи.
Постановка задачи
Задача звучит следующим образом: создать семисегментный индикатор с дешифратором двоичного кода. То есть, на 4 входа подаётся логическая комбинация, а на дисплее загорается число, которое соответствует данной комбинации. В качестве входов будут: A, B, C, D. С выходами несколько сложнее, в программе они обозначены как F0, F1 и тд. Поэтому проведём простое соответствие: F0 - a, F1 - b, F2 - c, F3 - d, F4 - e, F5 - f, F6 - g. Картинка с семисегментным индикатором показана на рисунке 4 для наглядности.

Рисунок 4 - Расположение сегментов индикатора
Решение
Забиваем в программу "0" и "1" таким образом, чтобы при вводе числа в двоичном коде отображалось его значение на индикаторе. Готовое решение показано на рисунке 5.

Далее сгенерируем схему и сохраним проект. В результате тыкания в программе получим схему с логическими элементами (рисунок 6).
![]()
Рисунок 5 - Готовое решение задачи
Далее сгенерируем схему и сохраним проект. В результате тыкания в программе получим схему с логическими элементами (рисунок 6).
Рисунок 6 - Схема
Реализация
Наслаждаемся результатом
Если всё сделали правильно и не запутались, то вы получите полностью рабочую схему. На рисунке 8 показан готовый индикатор, который умеет выводить числа в 16-ричном формате.

Ссылка на результат: ЦИФЕРКИ.
Рисунок 8 - И всё ради циферок
Ссылка на результат: ЦИФЕРКИ.
This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.