Мой первый ответ был действительно глупо (я так сожалею об этом), и я не знаю, почему я раньше не думал об удивительных «Списках сдвигов».
У вашего Arduino не так много контактов, чтобы освещать каждый светодиод, который у вас был. Но использование сдвиговых регистров возможно. Из 8-битного регистра сдвига вы можете подсвечивать 8 светодиодов, используя только 2-3 PIN-кода на плате Arduino (1 для часов, 1 для данных и 1 для защелки). Итак, чтобы забрать 50 PIN-кода вам нужно всего лишь 7 из this components (например).
Как его использовать? В Интернете много учебников, обычно sparkFun tutorial - мой любимый.
Ниже: изображение с сайта Arduino. Он объяснил, как подключить 16 светодиодов.
В любом случае со стороны программного обеспечения, что вы должны знать ShiftOut функция. После этого вы должны использовать функцию time.
Прежде всего инициализируйте свои переменные времени, как вы можете видеть в ссылке, опубликованной выше. После, в цикле:
- Put ВЫСОКИЙ ваш Datapin подключен к 50 СИД когда
previousMonth != month
.
- Установите HIGH dataPin, подключенный к 10 светодиодам, когда
daySum == 10
(так, когда previousDay != day
вам нужно увеличить daySum, используя daySum++
).
Я думаю, вам просто нужно параллельно подключать 2 части (10 светодиодов и 40 светодиодов) и получить 2 последовательных выхода из вашего arduino, отправляющего 2 сигнала. создать алгоритм на вашей программе arduino с двумя состояниями. 11 и 10 (двоичные файлы) 11 = 50 светодиодов и 10 для 10 светодиодов на – chareon
, если вы знакомы с логическими воротами, это вам поможет. Пришлите мне сообщение, когда оно поможет – chareon
Я редактирую свой ответ. Первый из них был неудачным. Этот действительно поможет вам решить вашу проблему. Еще раз извините! – Peto