Добрый день. Сложилась ситуация. В уже готовой схеме хотелось бы доделать часть. Есть 2 драйвера led dm13c (даташит), хотелось бы ими управлять с arduino. Не могу понять большей части в даташите, можете подсказать в какую сторону идти и что с этим вообще делать? заранее спасибо
А что именно непонятно? Судя по беглому просмотру распиновки - там сдвиговый регистр шестнадцатибитный, рулится ардуиной на раз.
Да там не особо сложно. Почитайте ещё до кучи про функцию shiftOut - и станет ещё понятней. Если в двух словах, что такое сдвиговый регистр: это отражение последовательно входящих бит на параллельные ноги. Т.е. вы продвинули 8 бит, защёлкнули регистр, и на восьми выходах у вас одновременно появились нужные уровни. Если регистр шестнадцатибитный - соответственно, скормили два байта - получили уровни на 16 ногах. Регистры можно подключать каскадно, множа выходы практически до бесконечности (в разумных пределах, конечно). Управляется это с ардуины примерно так: Код (C++): // сначала разрешаем установить состояние на выходах digitalWrite(SHIFT_REGISTER_OE_PIN,LOW); // Отключаем вывод на регистре digitalWrite(SHIFT_REGISTER_LATCH_PIN, LOW); // проталкиваем все байты один за другим, начиная со старшего к младшему uint8_t i=shiftRegisterDataSize; do { // проталкиваем байт в регистр shiftOut(SHIFT_REGISTER_DATA_PIN, SHIFT_REGISTER_CLOCK_PIN, MSBFIRST, shiftRegisterData[--i]); } while(i > 0); // "защелкиваем" регистр, чтобы байт появился на его выходах digitalWrite(SHIFT_REGISTER_LATCH_PIN, HIGH);
Почитал, посмотрел. Вроде и правда не особо сложно. Проверил - к регистру подключился и хаотично поморгал сегментами. Спасибо большое) теперь осталось дело за малым