1. Уважаемые форумчане! Убедительная просьба, используйте наиболее подходящие темы для своих сообщений. Спасибо за понимание.
    Dismiss Notice

Контроллер своими руками

Discussion in 'Автоматика' started by Yuriiv, Apr 6, 2014.

  1. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Какие изменения? Телепаты в отпуске ;)
     
  2. Константин Ерошенко

    Константин Ерошенко Active Member

    Joined:
    25.09.2014
    211
    44
    попробуй BrewManiac. Там I2C присутствует.
     
  3. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    А где скачать?
    --- сообщения объединены, Sep 22, 2016, дата первого сообщения: Sep 22, 2016 ---
    Подключаю библиатеку I2C и в настройках экрана прописую I2C (0*27,16,2)
     
  4. Константин Ерошенко

    Константин Ерошенко Active Member

    Joined:
    25.09.2014
    211
    44
    В этой Please login or register to view links
    --- сообщения объединены, Sep 22, 2016, дата первого сообщения: Sep 22, 2016 ---
    Тогда не пойдет. Там экран на 4 строки.
    В этой теме Юрий Моисеев выкладывал для I2C. Поищи
    --- сообщения объединены, Sep 22, 2016 ---
    53 страница данной темы.
    --- сообщения объединены, Sep 22, 2016 ---
    Читать всю страницу.
     
  5. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Ну, во-первых, "0x27", а не "0*27". Во-вторых - если скетч с русским, то с 90% вероятностью - будут квадратики...
    Попробуйте поменять язык на английский - работает?
     
  6. Владимир ZDF

    Владимир ZDF Active Member

    Joined:
    11.06.2014
    131
    33
    Разобрался с fc80, плата с релюхой была инвертом, нормальнозамкнутая( хотя по маркировке нормальноразомкнутая) Решил проблему так- выпаял с платы реле и подключил к ней напрямую, управлЕтся даже3,3в хотя по маркировке ей надо 5в.
     
  7. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Ну вот. Чудес не бывает ;) Главное было понять, откуда взялась инверсия. А решение может быть любым -- перепаять реле или поменять функцию скетча на обратную (поменять местами функции pump_on() и pump_off()). В данном случае, нормально-замкнутое я бы тоже заменил.
     
  8. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    вот так и сделал, язык английский ,все равно квадратики
     
  9. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    SDA / SCL местами не перепутаны?
     
  10. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    Нет!
     
  11. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Тогда для проверки лучше всего взять example-скетч из Arduino IDE, залить в ардуинку и проверить. Если работает - значит, нужно копать ArdBir.
     
  12. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    проверил работает! что с ardbir не знаю!
     
  13. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Хочешь, могу выложить архив ArdBir, с которым я работал крайний раз (сейчас я только своей прошивкой занимаюсь, поэтому уже не помню, что я в ArdBir менял, чтобы на i2c посадить дисплей). Там под 20х4 все подправлено - у меня работало и с МЭЛТовскими дисплеями и с китайцами.

    Библиотека у меня вот эта:
    Screen Shot 2016-09-24 at 13.15.30.png
     
  14. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    ок. кидай архив
    --- сообщения объединены, Sep 24, 2016, дата первого сообщения: Sep 24, 2016 ---
    все разобрался наконецто!!!! всем спасибо
     
  15. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Решение в студию! ;) Вдруг, кому-то еще пригодится.
     
  16. Александр Лысенко

    Александр Лысенко Участник

    Joined:
    29.06.2014
    35
    0
    Делаем что делал ЮрийМоисеев(подключаем библиотеки и меняем порты на экран) +
    // SETTING LCD*****
    #if LCDType == 16
    lcd.begin(16,2);
    #elif LCDType == 20
    lcd.begin(20,4);
    #endif
    а надо
    // SETTING LCD*****
    #if LCDType == 16
    lcd.begin();
    #elif LCDType == 20
    lcd.begin();
    #endif
     
  17. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Точно... Я тоже правил эту инициализацию.
    Ну, а чтоб совсем красиво - убери вообще эти директивы #if #endif - т.к. вне зависимости от типа дисплея (LCType) инициализация будет одинаковая - lcd.begin() без параметров. Достаточно оставить одну эту строку.
     
    Docent likes this.
  18. Евгений GT

    Евгений GT Участник

    Joined:
    07.08.2014
    92
    12
    Всем доброго дня!
    После долгой паузы решил сделать блок на Arduino Micro Pro. Есть пару вопросов:

    1) нарисовал для себя схему, получилось что надо задействовать 6 аналоговых входов (4 кнопки + 2 на экран) и 8 цифровых (4 экран + пищалка + термометр + 2 рэле со светодиодами на ТЭН и помпу). Могу ли я назначить любые входы или есть разница?
    [​IMG]
    Правильно понимаю, что на аналоговый вход могу назначить все зеленые (с А0, А1 и т.д.), а
    все остальные, которые не задействовал на цифровые?

    2) ткните носов на пример, как реализовать управление SSR рэле и светодиодом одновременно.
    нашел в сети такой вариант:
    [​IMG]

    3) Нужна ли кнопка RESET? часто ли ей приходится пользоваться? Просто у меня нет ее на плате, а городить еще одну внешнюю... Если пару раз сбросить, то можно просто перемкнуть контакты.

    4) Нужен ли переменный резистор на контраст дисплея (часто ли придется пользоваться)? И почему не делают переменный на яркость?
     
    Last edited: Oct 9, 2016
  19. Олег

    Олег Участник

    Joined:
    18.11.2013
    509
    20
    Может кто знает как поменять в Меге 2560 пины инициализации для TFT экрана.
    UTFT myGLCD(ITDB32S, 38,39,40,41);
     
  20. DrCasper

    DrCasper Участник

    Joined:
    12.06.2014
    133
    18
    Имя:
    Дмитрий
    Нужно знать точную модель контроллера дисплея, в первую очередь...
    --- сообщения объединены, Oct 10, 2016, дата первого сообщения: Oct 9, 2016 ---
    1. Лучше, все-таки почитать учебник по Arduino - большая часть вопросов отпадет. В части используемых пинов -- фактичести, никакой разницы, какие использовать, нет. Важно помнить, что некоторые пины имеют двойное назначение, например в Nano на А4/А5 реализован I2C-интерфейс и, если планируется что-то на него вешать (у меня там дисплей и часы реального времени, например), то эти пины нужно оставить под I2C. Основное отличие аналоговых ВХОДОВ от цифровых -- это возможность реализовать АЦП на них, т.е. получаться не просто логический уровень, а измеряемый сигнал. Используется, например, для резистивных термометров (термопары, терморезисторы) и т.п.
    2. Можно как на схеме
    3. Вывести одну тактовую кнопку для собственного удобства... Это проблема? :)
    4. Хотите регулировать контрастность -- значит, нужен. Не хотите -- значит, не нужен :) Яркость управляется иначе. На некоторых дисплеях подсветка дискретная: или включена или выключена. Третьего не дано. На некоторых -- управляется контроллером. Где-то, наверное, можно и переменником. Но контрастность гораздо более актуальна, т.к. при низкой дисплей не читается, при высокой получаются артефакты.