Логическая игра Переправа на Arduino

Предлагаю вашему вниманию свой вариант реализации старинной логической игры на Arduino, в которой перевозчик должен переправить волка, козу и капусту с одного берега на другой. Как известно из условия задачи, поместиться в лодку, кроме самого перевозчика, может только один персонаж и оставлять одних на берегу нельзя ни волка с козой, ни козу с капустой.

В данном проекте было придумано при помощи восьми светодиодов отмечать положение каждого персонажа на той либо иной стороне макетной платы. Так, каждому объекту, включая перевозчика, соответствует свой светодиод, который горит с той стороны берега, где он в данный момент находится. Одной кнопкой осуществляется выбор в виде мигающего светодиода, кого перевозчик берёт – козу, волка, капусту либо переправляется сам. При нажатии на вторую кнопку как бы происходит сама переправа с одного берега на другой, в следствии чего загорится светодиод персонажа с противоположной стороны и потухнет с изначальной. Таким образом, целью игры будет зажечь все светодиоды на противоположной стороне макетной платы, в результате чего прозвучит победная мелодия.

Схема подключения предоставлена на рисунке.

Перевозчику соответствуют зелёные светодиоды, козе — синие, волку — красные и капусте — желтые.

Для удобства игрового процесса можно распечатать на листе A4 следующую заготовку. В центр листа ставят монтажную плату, а в середину breadboard кладут вырезанную полоску “реки”.

Перед загрузкой скетча требуется подключить библиотеку EncButton.h.