Сканирование строк и столбцов для управления светодиодной матрицей 8x8

arduino-uno led-matrix

https://www.arduino.cc/en/Tutorial/RowColumnScanning Этот код действительно смутил меня, потому что я не знаю, являются ли "пиксели[x][y]" ВЫСОКИМИ или НИЗКИМИ в void refreshScreen(). Когда вы смотрите на код, "пиксели[x][y]" являются ВЫСОКИМИ, а затем НИЗКИМИ в настройке пустоты (), а затем "пиксели[x][y]" снова ВЫСОКИ в цикле пустоты(). Кто-нибудь может мне это объяснить, пожалуйста?

, 👍0


1 ответ


2

Массив пикселей в инициализирован для всех ВЫСОКИХ в настройке(). Затем один элемент массива пикселей устанавливается в НИЗКОЕ значение в readSensors (), которое включает один светодиод. Хитрость в том, что вы должны не забыть выключить предыдущий светодиод. Вот почему в readSensors() есть строка, в которой элемент пикселей установлен ВЫСОКО, в то время как указатели массива пикселей все еще указывают на прежний (уже горящий) светодиод.

,