MicroView OLED - не работает дисплей

Тема в разделе "Arduino & Shields", создана пользователем rostikvv, 24 апр 2017.

  1. rostikvv

    rostikvv Нуб

    Добрый день! если коротко, то суть проблемы в следующем
    Новый MicroView OLED, только распаковал, попытался запустить, как описано тут
    для программирования использую MicroView-USB адаптер
    все контакты работают, программируются, с ножек сигналы входят/выходят,
    только не работает дисплей (чёрный, ничего не показивает, не светится)

    может я, конечно, что не так делаю, а может что-то и отошло внутри..
    никто не сталкивался, что может быть?
     
  2. armani

    armani Нерд

    Ну в таком случае нужны код и фото, а иначе иди к гадалке.
     
  3. Из общих соображений можно предположить что питание на дисплей не подается. Попробуйте подать питание на дисплей от другого источника и посмотреть. Хоть как-то, но светиться он должен.
     
  4. rostikvv

    rostikvv Нуб

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

    для этого понадобиться вскрыть экран?
     
  5. нет, я имел ввиду подать питание на один из выводов, который, в свою очередь, запитывает экран. Вскрывать думаю не стоит, тем более если обещают заменить.
     
  6. Igor68

    Igor68 Гуру

    Доброго времени суток! Простите за назойливость но (может я не прав):
    snapshot5.png
    Сигнал "D4/3.3V_EN" не формируется ли программно при старте устройства?... а то я наблюдал на схеме, что дисплей питается именно от 3.3V. Самому интересно это утройство.
    Думаю ваша прошивка (программа) должна включить питание на дисплей при старте (помотрите на включаемый стабилизатор 3.3V).
    Ещё раз простите.
     
    Последнее редактирование: 26 апр 2017
  7. Это так и есть, питание включает библиотека MicroView.h в ней согласно коду на пине 4 и формируется 3.3В при старте. Так что отдельно в скетче, это видимо, прописывать не нужно.
     
  8. Igor68

    Igor68 Гуру

    Потому и говорю простите... но модет всё-таки диплей не всегда вработе (не для всех задач) и предусмотрено его включение при необходимости? Вы наверное нашли гарантированную часть кода, что включает именно при старте?
     
  9. Igor68

    Igor68 Гуру

    Тут же вынужден просить прощения:
    Код (C++):

    void MicroView::begin() {

    // default 5x7 font

    setFontType(0);

    setColor(WHITE);

    setDrawMode(NORM);

    setCursor(0,0);



    RESETLOW;



    // Enable 3.3V power to the display

    pinMode(OLEDPWR, OUTPUT);

    digitalWrite(OLEDPWR, HIGH);



    // Give some time for power to stabilise

    delay(10);



    RESETHIGH;

    delay(5);

    RESETLOW;



    // Setup SPI frequency

    MVSPI.setClockDivider(SPI_CLOCK_DIV2);

    // Initialise SPI

    MVSPI.begin();



    delay(5);



    // bring out of reset

    RESETHIGH;



    delay(10);



    // Init sequence for 64x48 OLED module

    // command(DISPLAYOFF); // 0xAE

    // command(SETDISPLAYCLOCKDIV, 0x80); // 0xD5 / the suggested ratio 0x80

    command(SETMULTIPLEX, 0x2F); // 0xA8

    // command(SETDISPLAYOFFSET, 0x0); // 0xD3 / no offset

    // command(SETSTARTLINE | 0x0); // 0x40 / line #0

    command(CHARGEPUMP, 0x14); // 0x8D / enable charge pump

    // command(NORMALDISPLAY); // 0xA6

    // command(DISPLAYALLONRESUME); // 0xA4

    command(SEGREMAP | 0x1);

    command(COMSCANDEC);

    // command(SETCOMPINS, 0x12); // 0xDA

    command(SETCONTRAST, 0x8F); // 0x81

    command(SETPRECHARGE, 0xF1); // 0xD9

    command(SETVCOMDESELECT, 0x40); // 0xDB

    command(DISPLAYON); //--turn on oled panel



    clear(ALL); // Erase hardware memory inside the OLED controller to avoid random data in memory.



    // Serial.begin(115200); // removed the Serial.begin() so that user can decide their own baud rate.

    }


     
    Как раз отрывок оттуда и вы соответственно запустили этот begin при старте.
    Извините!
     
  10. в файле .cpp
    // Enable 3.3V power to the display

    pinMode(OLEDPWR, OUTPUT);

    digitalWrite(OLEDPWR, HIGH);

    в заголовочном файле .h я нашел что это 4 пин (строка 27):
    #define OLEDPWR 4 // 3.3V regulator enable

    так что в этой библиотеке и происходит выдача 3,3В на дисплей

    согласно схеме это четвертый пин D4.
     
  11. Igor68

    Igor68 Гуру

    Извините... я понял и увидел.
     
  12. да все нормально, если брак то должны вернуть. Правда его можно и самому испортить. В описании к модулю предупреждают:
    Внимание!
    Соблюдайте правильность выводов используя рисунок на программаторе. При неправильном подключении платформа или программатор может выйти из строя.
     
  13. sys

    sys Злобный Буратино Модератор

    и uView.begin(); запускали?
    сделали как тут?:
    Код (C++):
        // библиотека для работы с платформой MicroView
        #include <MicroView.h>
       
        void setup()
        {
          // Начало работы с MicroView
          uView.begin();
          // очищаем дисплей
          uView.clear(PAGE);
          // печатаем строку в буфер дисплея
          uView.print("HelloWorld");
          // отображаем содержимое из буфера на экран
          uView.display();
        }
       
        void loop()
        {
        }

     
    и не работает?
     
  14. rostikvv

    rostikvv Нуб

    да.. именно с этого кода я и начал своё знакомство с MicroView )

    .. и после того, как ничего не произошло, для проверки общей работоспособности попробывал запрограммировать сигналы на выходах, они работали ..
     
    Последнее редактирование: 26 апр 2017
  15. sys

    sys Злобный Буратино Модератор

    обидно, однако :confused: Недешевая штучка... Тоже глаз положил, но пока не решаюсь :) Отпишитесь, пжлст, чем закончится история...
     
  16. rostikvv

    rostikvv Нуб

    поменяли, без каких либо проблем, прислали новый в замен, новый работает .. уже проверил :)
     
  17. sys

    sys Злобный Буратино Модератор

    Не сомневался в Амперке - там хорошая команда (имел честь немного пообщаться у них в офисе - впечатления только положительные).
    Отлично! Уже завидую ;)