Регулировка яркости QuadDisplay

Тема в разделе "Arduino & Shields", создана пользователем Romul, 23 дек 2016.

Метки:
  1. Romul

    Romul Нуб

    Купил недавно http://amperka.ru/product/troyka-quad-display, но светит он очень ярко и хотелось бы иметь возможность уменьшить его яркость.

    Я пробовал отредактировать https://github.com/amperka/QuadDisplay/blob/master/QuadDisplay.cpp, так чтобы вместо digitalWrite(pin, HIGH) использовалось analogWrite(pin, 100). Но, к сожалению, при использовании analogWrite индикатор тупо светит всеми светодиодами одновременно и ничего осмысленного отображать не хочет.

    Есть ли какой-то способ обойти это и отрегулировать яркость или это жесткое хардварное ограничение?

    P.S. Думал уменьшить напряжение для дисплея, но от этого теряется удобство и компактность подключения к Troyka Slot Shield.
     
  2. rkit

    rkit Гуру

    Софтом не решить. Перепаять диодные сборки было бы проще всего, но нужен определенный навык и оборудование.
     
  3. ostrov

    ostrov Гуру

    Там же обычные сдвиговые регистры стоят, если не ошибаюсь. Можно программно яркость регулировать увеличивая интервал между включением сегментов. Правда придется свою функцию вывода на них писать, библиотека тут не поможет. Причем через порты, а не при помощи digitalWrite, так как будет тормозить.

    Я вот таким образом яркость разрядов менял поочередно, чтобы выделять их:

     
    Последнее редактирование: 24 дек 2016
  4. rkit

    rkit Гуру

    Посмотрел в библиотеку - там заполнение индикатора не больше 2мс. Можно 50 герц себе позволить, в принципе.
     
  5. ostrov

    ostrov Гуру

    Я пока не соображу что за микросхемы там стоят. Если HC595, то как в них пихают данные по одной ноге, где защелка и синхроимпульсы?
     
  6. rkit

    rkit Гуру

    Конденсаторы там, и задержки посчитаны.
     
  7. ostrov

    ostrov Гуру

    А, понял. Посмотрел схему. Там один канал разбивается на три при помощи RC-цепей. Синхроимпульс проскакивает напрямую, дата с задержкой, латч с еще большей задержкой. Хитро, есть свои плюсы - экономия двух ног, но и минусы, скорость передачи уже ограничена. Потому и частота кадров ограничена. Ну тут ой, софтом сложнее поправить, будет трястись и дрожать изображение скорее всего. Надо брать обычные индикаторы на честной трехпроводной передаче данных. )
     
  8. ostrov

    ostrov Гуру

    С некоторых пор я делаю индикаторы на отдельном "драйвере" в виде Attiny2313, в который посылаю команды от главного МК по UART. Много плюсов, самый главный из которых разгрузка главного от постоянного вывода на индикатор. Еще можно повесить пищалку, например, и кидать ей команду пищать столько то миллисекунд. Да много что можно перекинуть на Тиньку, благо она довольно шустрая и стоит рубль за ведро. )
     
  9. Romul

    Romul Нуб

    В библиотеке есть функция fastDigitalWrite, которая напрямую через порты работает, но я пока не понимаю что именно в ней нужно изменить.. Или попробовать увеличивать интервалы в sendByte и latch?

    А можете для примера пару ссылок дать на такие индикаторы?
     
  10. ostrov

    ostrov Гуру

    Romul нравится это.
  11. ANV

    ANV Гуру

    Вариантов немного и все некрасивые:
    1. Уменьшить напряжение питания
    2. Наклеить темную пленку или оргстекло
    3. Перепаять резистор выбора ОА/ОК с 0 Ом на что-то побольше. Яркость уменьшится, но при этом еще начнет зависеть от отображаемой цифры
    4. Перепаять резисторные сборки на большее сопротивление. Из-за их размера новичку практически нереально сделать
     
    Romul нравится это.
  12. Romul

    Romul Нуб

    Спасибо всем за ответы. Перепаивать такие мелкие детали я пока не осилю, поэтому придётся другой индикатор прикупить.
     
  13. ostrov

    ostrov Гуру

    Второй вариант предыдушего оратора может быть простым выходом. Я вот делал прибор в корпусе с окошком из темного оргстекла. Индикатор просвечивал не так ярко. Можно просто кусок тонировочной пленки налепить как пример. Он не греется, ничего не покорежит и не спалит.