Есть двухцветная светодиодная матрица. Вывожу на ней бегущую строку через 2 сдвиговых регистра (вообще их должно быть 3). Но светодиоды горят тускло. С ножек регистров на матрицу уходит по 0,3 вольта примерно. Пробовал вместо линии питания с Arduino 5 вольт подключить 9 вольтовую крону - яркость не увеличивается и идут помехи. Как организовать правильно отдельное питание светодиодной матрицы, чтобы Arduino управлял только регистрами. Через транзисторы или еще как то?
Уже были подобные темы тут, посмотрите. Например, тусклое свечение может быть следствием алгоритма обновления сдвиговых регистров.
С ардуино используются только цифровые выходы. Вот часть скетча: Код (Text): for (int i=0;i<8;i++){ digitalWrite(REG_SELECT, LOW); SPI.transfer(digitX[i+shift]); SPI.transfer(digitY[i]); digitalWrite(REG_SELECT, HIGH); delay(2); }; timer = millis(); if (timer-timerPrev>160){ shift++; if (shift==len)shift=0; timerPrev=timer; }
Хм… похоже на то, что всё ок с программой. А если бегущую картинку упростить до пары точек, то есть, чтобы одновременно горел 1-2 светода ситуация не улучшается?
Решил проблему. Убрал резисторы вообще. Так как по даташиту панель может принимать 5 вольт, а принимала она у меня 2,5. На каждый анод шло 0,3 вольта, без резисторов 0,6. Проблема исчезла.