Система освещения на основе логики - PullRequest
0 голосов
/ 18 октября 2018

Circuit with red bulb

Мне нужно разработать систему, которая включает красный свет, когда все три переключателя выключены, и включает оранжевый свет, когда любые два из трех выключателейвыключеныЧасть красного света уже отсортирована с помощью простых ворот NOR.Однако у меня проблемы с оранжевым светом.Оранжевый свет должен быть выключен, когда горит красный свет.Таким образом, только два из трех переключателей могут быть выключены, когда горит оранжевый индикатор.Если один переключатель выключен, ничего не происходит, оба индикатора остаются включенными.То же самое, если все переключатели включены.Если какие-либо два из трех выключателей выключены, загорается только оранжевый индикатор.Если все три переключателя выключены, горит только красный свет.Я не могу понять логику, чтобы все это работало сразу, у кого-нибудь есть идеи?Для этого я использовал редактор logic.ly.

Заранее большое спасибо.

Inputs  |  Outputs
C  B  A | Red   Orange
--------+--------------
0  0  0 |  1      0
0  0  1 |  0      1
0  1  0 |  0      1
0  1  1 |  0      0
1  0  0 |  0      1
1  0  1 |  0      0
1  1  0 |  0      0
1  1  1 |  0      0

1 Ответ

0 голосов
/ 23 октября 2018

Простейшей более или менее канонической формой здесь является полином Жегалкина: A & B & C⊕A⊕B⊕C.

Следовательно:

Orange bulb2

или

Orange bulb3

К сожалению, «красная» схема, которую вы уже построили, не может быть эффективно повторно использована при построении «оранжевой».


Редактор logic.ly также поддерживает обобщение в одну горячую строку XOR, что дает простейшее решение для "оранжевой" схемы:

IEEE xor


Весь контур:

IEEE xor

...