Подключить дисплей к искре!

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем PaulD, 21 янв 2017.

  1. PaulD

    PaulD Нуб

  2. sys

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

    PaulD нравится это.
  3. PaulD

    PaulD Нуб

    Если несложно опишите как его подключить? У меня плохо с английским...
     
  4. PaulD

    PaulD Нуб

    e
    У меня экран с I2C переходником. Подскажите куда подключать sda и scl? с землей и питанием понятно. я пытался подключить их к соответствующим разъемам на шилде и просто на голой искре, но IDE сказала, что пины не подходят и используйте B6,B8.
     
  5. Protos911

    Protos911 Нерд

    I2C1.setup({scl:B6, sda:B7});
    var lcd = require("HD44780").connectI2C(I2C1);
    lcd.print("Hello World!");
    ??
    Там пины не те.

    I2C1.setup({scl: P12, sda: P11});
    // пробелы перед P уберите, а то редактор форума смайлы подставляет :)
    var lcd = require("HD44780").connectI2C(I2C1);
    lcd.print("Hello World!");
     
    Последнее редактирование: 24 янв 2017
  6. PaulD

    PaulD Нуб

    WhatsApp Image 2017-01-22 at 17.41.49.jpeg

    При таком подключении и вот таком коде:

    Код (Javascript):
    I2C1.setup({scl:SCL, sda:SDA});
    var lcd = require("HD44780").connectI2C(I2C1);
    lcd.print("Hello");
    Возвращает undifine

    ссылка на экран в первом сообщении. куплен был в амперкоте
     
    Последнее редактирование: 22 янв 2017
  7. PaulD

    PaulD Нуб

    P12 и P11 тоже не принимает, говорит, что неправильные пины. а вот когда судя по распиновки обзываю их в коде SCL SDA то не ругается, а только шлет undefine
     
  8. Protos911

    Protos911 Нерд

    А точно питание и земля все поданы там 4 земли должно быть и два +5
    У вас на рисунке, походу подключено к +3,3 В ???!
    И перемычка на IskraJS должна стоять на 5v!
    Так надо и подключать к P11 и P12 :)
     
    Последнее редактирование: 22 янв 2017
    PaulD нравится это.
  9. PaulD

    PaulD Нуб


    Ура, заработало. Короче реально я просто протупил и подрубал +3.3. Но подключать надо в итоге не к P12 и P11,а к выделенным пинам SCL и SDA. И прописывать в коде именно SCL SDA.
    espruino.PNG
     
  10. Protos911

    Protos911 Нерд

    Можно и к тем, и к тем парам!! Они обе I2C!
    Только в коде прописать какие пины нюхать МК ;)
    ПС.
    и де СПСБ ? :)
     
    Последнее редактирование: 23 янв 2017
    PaulD нравится это.
  11. PaulD

    PaulD Нуб

    Спасибо за помощь!
     
  12. Protos911

    Protos911 Нерд

    Обращайтесь. :)
     
  13. NovaStream2030

    NovaStream2030 Напечатан на 3D-Принтере

    Плиз а как к искре если этот
     
  14. Protos911

    Protos911 Нерд

    http://wiki.amperka.ru/Схемы-подключения:подключение-текстового-экрана
    Код, который для вышеописанного (параллельного подключения) для IskraJS

    // ____________________________________ rs,en,d4,d5,d6,d7
    var lcd = require("HD44780").connect(A0,A1,C0,C1,C2,C3);
    lcd.print("Hello World!");

    Только учтите, что пины у espruino и у IskraJS не совпадают (это сделано, что-бы облегчить жизнь юзерам :D).
    Вот распиновка IskraJS http://wiki.amperka.ru/js:iskra_js (белым на схеме оригинальные пины :))
     
  15. NovaStream2030

    NovaStream2030 Напечатан на 3D-Принтере

    LOL, вы серьёзно у меня не впаян I2C переходник
     
  16. Protos911

    Protos911 Нерд

    А где я писал вам про I2C переходник?:cool:
     
  17. Trem

    Trem Нерд

    Добрый вечер.
    Есть дисплей МЭЛТ и вроде все работает, но есть нюанс.
    После команды lcd.clear(); и последующей lcd.setCursor(4,0); текст печатается с первого сегмента, а не с 4, при этом первый сегмент занят произвольным символом или не занят, но все равно не 4 сегмента.
    IMG_2017-01-30_231442.jpg IMG_2017-01-30_231446.jpg
    Код:
    var lcd = require("HD44780").connect(C6,C7,C8,C9,A8,A10);
    setTimeout(function() {
    lcd.clear();
    lcd.setCursor(4,0);
    lcd.print("ABCDEFG");
    lcd.setCursor(4,1);
    lcd.print("abcdefg");
    }, 5);
    setTimeout(function() {
    lcd.clear();
    lcd.setCursor(4,0);
    lcd.print("abcdefg");
    lcd.setCursor(4,1);
    lcd.print("ABCDEFG");
    }, 5000);


    Если не пользоваться lcd.clear(); то все работает корректно, но приходиться использовать пробелы, что бы затереть предыдущие сообщения.
    Что не так у меня с руками? и как правльно пользоваться lcd.clear();
     
  18. Protos911

    Protos911 Нерд

    А это програмеры писавшие библиотеку с руками растущими под час из... нестандартных мест. :D
    Команду надо двоить, иначе работает криво;)
    Код:
    var lcd = require("HD44780").connect(C6,C7,C8,C9,A8,A10);
    setTimeout(function() {
    lcd.clear();
    lcd.clear();
    lcd.setCursor(4,0);
    lcd.print("ABCDEFG");
    lcd.setCursor(4,1);
    lcd.print("abcdefg");
    }, 5);
    setTimeout(function() {
    lcd.clear();
    lcd.clear();
    lcd.setCursor(4,0);
    lcd.print("abcdefg");
    lcd.setCursor(4,1);
    lcd.print("ABCDEFG");
    }, 5000);


    lcd.setCursor(4,0);
    lcd.print("ABCDEFG");
    lcd.setCursor(4,1);
    lcd.print("abcdefg");
    }, 5);
    setTimeout(function() {
    lcd.clear();
    lcd.clear();
    lcd.setCursor(4,0);
    lcd.print("abcdefg");
    lcd.setCursor(4,1);
    lcd.print("ABCDEFG");
    }, 5000);
    Сам нарвался... и такого море, я по тому и поднял тему:
    http://forum.amperka.ru/threads/Обращение-к-Амперке-Необходимы-политические-изменения-в-работе-Вики-Форума-и-тех-поддержки.10548/#post-100183
     
    Konkery нравится это.
  19. ИгорьК

    ИгорьК Гуру

    Чет Вы и код оформляете как те программеры и агрессивны слишком.
    Работает у меня этот дисплей без всяких танцев.
     
  20. Protos911

    Protos911 Нерд

    А попробуйте прочитать тему ПолностьЮ , может станет легче... ;)
    1. Как-бы код - это копипаст предыдущего поста Trem, так что этот пух выстрел мимо ( всех учить синтаксису и орфографии будете в школе):D
    2. Как у вас этот http://amperka.ru/product/text-lcd-16x2 дисплей может как-то работать, если на схеме и в коде пины не совпадают (вам я уже об этом уже писал;)).
    3. Проблема воспроизвелась и решилась вышеизложенным методом уже на пяти МЭЛТ MT-16S2H, при использовании библиотеки "HD44780", а посему я вам не верю...:cool:
    4. А ещё батенька вы несколько заврались " и агрессивны слишком", вот участок вашего (или не вашего ;)) кода:
    function printLCD(aIn, aOut, inf){
    if(inf){
    lcd.clear();
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print(" Cellar 2016");
    lcd.setCursor(0,1);
    lcd.print(" Jiaffe!");
    Вы "без всяких танцев" используете всё ту-же задвоенную команду lcd.clear() :D

    ПС.
    Походу я просёк тему - вы местный форумный тролль (характерная особенность отвечать на последний пост всех тем, порой не читая самой темы), а они обычно мутируют из гуру в результате звёздной болезни:cool:
    Жаль вас, вроде грамотный специалист, руки тоже нужного места растут, да и вроде здравые вещи в основном говорите;)
    Исправляйте свой пост и будем дружить, а пока в игнор! :)
     
    Последнее редактирование: 2 фев 2017
    tagir000 нравится это.