ARDUINO Адресная матрица, посегментный вывод

Askar

✩✩✩✩✩✩✩
17 Фев 2021
15
0
Всем привет
Подскажите как сделать раздельные матрицы в одном проекте
Есть матрица 16х16, подключил 2 последовательно, получил 16х32 теперь нужно выводить на первую матрицу 16х16 счёт в играх, а на 2ю саму игру, все делаю из проекта тетрис.
 

Сотнег

★★★★★★★
15 Янв 2020
4,369
1,496
@Askar,
можно на разные пины к плате подключить.
Или просто рисуйте на своей матрице 16х32 в разных её частях.
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
472
134
@Askar,
Был бы резон, если бы хотели использовать для счета например 16x8 а для игры 24x16. А если деление строго по матрицам то какой смысл? Почему не каждую на свой пин? Тогда все проще и управлять и можно задавать разную глубину цвета и частоту обновления.
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
472
134
Программирование в качестве хобби, это в какой то степени игра - головоломка. Просить кого то поиграть за вас - наверно получится, если этот кто то тоже хочет поиграть.
У Гайвера довольно подробно описывается алгоритм, и в видео и в тексте. Чисто математически, чтобы рисовать в разных частях, достаточно просто учитывать необходимое смещение по Х. Но искать места в коде, где это надо делать - интересно, если есть интерес.
Я бы посоветовал сначала сделать с отдельным управлением для каждой их 2-х матриц, а потом, при желании попробовать разобраться в коде. Он не большой, и не сложный (по математике).
 

Alex Kireev

✩✩✩✩✩✩✩
24 Авг 2024
7
1
Можно начать с функции выбора матрицы и заливки её цветом, а потом по нарастающей.
C++:
void Segments(uint8_t segment)
{
uint8_t a = sgment * 128;
uint8_t b = a + 128;
return a, b;
}
 
Изменено:

Bruzzer

★★★✩✩✩✩
23 Май 2020
472
134
@Alex Kireev,
Без пояснений что это значит, ваше предложение выглядит как минимум странным. void функция возвращающая в стиле питона.

void Segments(uint8_t segment)
return a, b;