Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Привет друзья, сегодня хочу поделиться этим единственным проектом. Речь идет о числовой головоломке с ардуино, которая отображается на экране телевизора и управляется клавиатурой (4x4).
Смотрите видео здесь
Чтобы сдвинуть или переместить квадрат головоломки, нажмите кнопку в соответствии с положением желаемого квадрата. Например, как показано на рисунке, если вы хотите переместить квадрат с цифрой 5 (которая имеет четвертую позицию) влево (потому что есть пустая позиция), нажмите клавишу «4» на клавиатуре, потому что это четвертая позиция на клавиатуре.
Если вам понравился этот проект, проголосуйте за него в конкурсе пазлов.
Спасибо
Шаг 1: Список компонентов
В этом проекте использованы следующие материалы:
- Arduino Та или иная модель.
- ТВ с видеовыходом.
- Видеокабель RCA.
- (1) резистор 1 кОм.
- (1) резистор 470 Ом.
- Шестнадцатеричная клавиатура.
- Джемперы.
Шаг 2: Подключение Arduino к телевизору
Загрузите эту библиотеку и импортируйте ее в эскиз.
Во-первых, подключите резисторы к какому-нибудь соединительному проводу.
Кабель RCA будет иметь 2 провода, провод заземления и провод видеосигнала.
Резистор сопротивлением 1 кОм подключен к выводу 9 Arduino.
470 Ом подключен к выводу 7 Arduino.
Соедините концы резисторов и подключите его к видеокабелю.
Провод GND кабеля RCA идет к GND Arduino.
Если у вас возникли проблемы с компиляцией, извлеките 3 папки из папки библиотеки.
Шаг 3: Подключите клавиатуру
Штырь Arduino | Клавиатура |
---|---|
13 | Строка 0 |
6 | Ряд 1 |
5 | Ряд 2 |
4 | Ряд 3 |
3 | Столбец 0 |
2 | Столбец 1 |
1 | Столбец 2 |
0 | Столбец 3 |
Соберите проект, как показано на картинке.
Шаг 4: Код
Числа (от 1 до 16) хранятся в массиве.
Число 16 представляет собой пустую позицию.
Для перетасовки чисел нажмите клавишу «A» (в начале игры), это вызовет процедуру, которая перетасовывает числа в массиве, и позже они отображаются на экране.
Когда вы нажимаете какую-либо клавишу на клавиатуре, программа проверяет, есть ли в ближайшей позиции пустое место.
(влево, вправо, вверх или вниз). Как показано на картинке: Если клавиша «1» нажата, проверяет ближние позиции.
switch (key) {
Дело 1':
изменить (0, 1); // Позиция массива (0), проверяет позицию массива (1).
изменить (0, 4); // Позиция массива (0), проверяет позицию массива (4).
перерыв;
…………
Функция CHANGE обменивается числами в массиве, и экран обновляется числами.
Игра заканчивается, когда массив находится в правильном порядке: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}
Загрузите полный код здесь.
Если вам понравился этот проект, проголосуйте за него в конкурсе пазлов и в конкурсе на олимпиаду создателей.
Спасибо