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

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

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

  1. Phantom

    Phantom Active Member

    Joined:
    11.05.2014
    490
    138
    Имя:
    Олег
    Отулючи все нагрузки от пина. Залей из АрдуиноИДЕ пример digitalWrite (кажется так он называется) и проконтролируй изменение состояния выхода. Если не меняется, то попробуй поменять на другой свободный пин. Если не заработает, то брось всё и отдыхай. Случаются банальные затупы, которые после ночи проходят . Утро вечера мудренее.
     
  2. Олег

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

    Joined:
    18.11.2013
    509
    20
    Я так и сам часто делаю.Спасибо за совет.
    Сейчас запустил 2.6.7.10 -после загрузки надо сдвинуть калибровку датчика в какую нибудь сторону- тогда Тэн включается вот вам и глюк
    --- сообщения объединены, Dec 5, 2016, дата первого сообщения: Dec 5, 2016 ---
    Видео зачем удалил?
     
  3. Phantom

    Phantom Active Member

    Joined:
    11.05.2014
    490
    138
    Имя:
    Олег
    Перед сменой прошивок ставил из примеров EepromClear? В 267 и 283 карты расположения переменных в памяти различаются.
     
  4. Олег

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

    Joined:
    18.11.2013
    509
    20
    Да делал. Дело в том что теперь и 2.6.7 запускается после того как 'сдвинешь' калибровка датчика.
     
  5. Phantom

    Phantom Active Member

    Joined:
    11.05.2014
    490
    138
    Имя:
    Олег
    без сдвигания показания датчика верные?
     
  6. VlasenkoAV

    VlasenkoAV Участник

    Joined:
    29.08.2016
    48
    18
    Имя:
    Андрей
    Это не я... Неожиданно не смог зайти на свой акаунт и тоже увидел что видео нет.. Может взламали, не знаю. Создал новый с более сложным паролем. На том вообще от 1го до нуля пароль был.
    Короче, дублирую

    Теперь блок выглядит вот так
    --- сообщения объединены, Dec 6, 2016 ---
    --- сообщения объединены, Dec 6, 2016 ---
    А может банально пин выгорел? У меня такое было, попробуй перепортировать на другой свободный (если имеется), если заработает то проволочкой по воздуху подпаяйся, а от старой ноги перережь дорожку чтоб еще один порт не отправить к праотцам.
     

    Attached Files:

  7. Олег

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

    Joined:
    18.11.2013
    509
    20
    Да не пин это - пробовал все подряд сам не знаю в чем дело- пусть так работает
    --- сообщения объединены, Dec 12, 2016, дата первого сообщения: Dec 7, 2016 ---
    для 8.3 эта ссылка не катит
    --- сообщения объединены, Dec 12, 2016 ---
    На прошивке 2.8.3 никак не могу добиться что бы работал зуммер-хоть активный хоть пассивный-может кто подскажет?
     
  8. VlasenkoAV

    VlasenkoAV Участник

    Joined:
    29.08.2016
    48
    18
    Имя:
    Андрей
    Немного доработал свой блок. Что скажете?
     
    aggressor, 14Znoj88 and leo0702 like this.
  9. Олег

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

    Joined:
    18.11.2013
    509
    20
    Не могу вставить вот это в скетч 2.6.7:
    Code:
    #include <IRremote.h>
    //int RECV_PIN = 11;
    IRrecv irrecv(11);
    decode_results results;
    int Button_up=A1;
    int Button_dn=A0;
    int Button_start=A2;
    int Button_enter = A3;
    int a=0;
    int b=0;
    int c=0;
    int d=0;
    
    void setup()
    {
    irrecv.enableIRIn(); // vklyuchit? priyemnik
    pinMode(Button_up, OUTPUT);
    pinMode(Button_dn, OUTPUT);
    pinMode(Button_start, OUTPUT);
    pinMode(Button_enter, OUTPUT);
    }
    void loop() {
    if (irrecv.decode(&results)) {
    if (results.value == 0xFF629D) {a=a+1;}
    if (results.value == 0xFFA857) {b=b+1;}
    if (results.value == 0xFF02FD) {c=c+1;}
    if (results.value == 0xFFC23D) {d=d+1;}
    if (a==1){digitalWrite(Button_up, HIGH);} else {digitalWrite(Button_up, LOW); a=0;}
    if (b==1){digitalWrite(Button_dn, HIGH);} else {digitalWrite(Button_dn, LOW); b=0;}
    if (b==1){digitalWrite(Button_start, HIGH);} else {digitalWrite(Button_start, LOW); c=0;}
    if (a==1){digitalWrite(Button_enter, HIGH);} else {digitalWrite(Button_enter, LOW); d=0;}
    irrecv.resume();
    }
    }
    
    --- сообщения объединены, Dec 24, 2016, дата первого сообщения: Dec 24, 2016 ---
    Вместо кнопок
     
  10. Николай Дементьев

    Николай Дементьев Well-Known Member

    Joined:
    01.09.2016
    1,294
    210
  11. Олег

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

    Joined:
    18.11.2013
    509
    20
    Пишет:
    Code:
    exit status 1
    'allOFF' was not declared in this scope
    
    --- сообщения объединены, Dec 24, 2016, дата первого сообщения: Dec 24, 2016 ---
    Вставил вот так:
    Code:
    // sensor and lcd
    OneWire ds(7);
    LiquidCrystalRus lcd(A4,A5,2, 3, 4, 5);
    
    #include <IRremote.h>
    //int RECV_PIN = 11;
    IRrecv irrecv(11);
    decode_results results;
    int Button_up=A1;
    int Button_dn=A0;
    int Button_start=A2;
    int Button_enter = A3;
    int a=0;
    int b=0;
    int c=0;
    int d=0;
    
    void setup()
    {
    irrecv.enableIRIn(); // vklyuchit? priyemnik
    pinMode(Button_up, OUTPUT);
    pinMode(Button_dn, OUTPUT);
    pinMode(Button_start, OUTPUT);
    pinMode(Button_enter, OUTPUT);
    }
    void loop() {
    if (irrecv.decode(&results)) {
    if (results.value == 0xFF629D) {a=a+1;}
    if (results.value == 0xFFA857) {b=b+1;}
    if (results.value == 0xFF02FD) {c=c+1;}
    if (results.value == 0xFFC23D) {d=d+1;}
    if (a==1){digitalWrite(Button_up, HIGH);} else {digitalWrite(Button_up, LOW); a=0;}
    if (b==1){digitalWrite(Button_dn, HIGH);} else {digitalWrite(Button_dn, LOW); b=0;}
    if (b==1){digitalWrite(Button_start, HIGH);} else {digitalWrite(Button_start, LOW); c=0;}
    if (a==1){digitalWrite(Button_enter, HIGH);} else {digitalWrite(Button_enter, LOW); d=0;}
    irrecv.resume();
    }
    }
    // push buttons
    //const char Button_up    = A1;
    //const char Button_dn    = A0;
    //const char Button_start = A2;
    //const char Button_enter = A3;
    
    
    // outputs
    const byte Pump = 6;
    const byte Buzz = 8;
    const byte Heat = 10;
    
    Наверно не правильно?
     
  12. Николай Дементьев

    Николай Дементьев Well-Known Member

    Joined:
    01.09.2016
    1,294
    210
  13. валера48

    валера48 Участник

    Joined:
    30.03.2015
    34
    4
    Никто не сталкивался с проблемой нижние строки дисплея 2004 уехали наверх и показываются вместе.
     
  14. Maksss

    Maksss Active Member

    Joined:
    20.02.2015
    257
    28
    Куда копать, подскажите пожалуйста.
    вторая и третья кнопки на пленочной китайской четырехкнопочной клавиатуре выполняют какие то хаотичные действия, в ручном режиме обе кнопки включают релешку. Как будто они две запаралеллены, но прозванивал - не замыкают друг на друга.
    // push buttons
    const char Button_up = A3;
    const char Button_dn = A2;
    const char Button_start = A1;
    const char Button_enter = A0;

    Забил такое подключение, на другую клавиатуру менять пробовал. С чего начать поиск глюка? Прошивка Open-ArdBir-2.8.3-RC

    Как по другому можно подключить, не через входы A0-A3 для проверки?
     
  15. Николай Дементьев

    Николай Дементьев Well-Known Member

    Joined:
    01.09.2016
    1,294
    210
    С науки о контактах..... проверяйте правильность подключения и качество соединения.
    С наступившем Вас!
     
  16. Phantom

    Phantom Active Member

    Joined:
    11.05.2014
    490
    138
    Имя:
    Олег
    Скорее всего сама клава сжохла. Для начала ее бы отключить и мультиметром проверить
     
  17. Олег

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

    Joined:
    18.11.2013
    509
    20
    Переназначь на другие пины какие свободные ( #include "Pcb_Brauduino_Original.h" или другой раскоментированный) не забудь сохранить и перезалить-не получится выкинь клаву-хотя сомневаюсь что здесь неисправна клава
    --- сообщения объединены, Jan 7, 2017, дата первого сообщения: Jan 7, 2017 ---
    С рождеством ВАС всех!!!
     
  18. Maksss

    Maksss Active Member

    Joined:
    20.02.2015
    257
    28
    Клаву менял, прозванивал, она работает нормально. Может быть флюс попал под контакты при монтаже штырьковых контактов на разведенную плату.

    Вопрос такой:
    А можно кнопки назначать не только на АЦП контакты A0-A3??
     
  19. Phantom

    Phantom Active Member

    Joined:
    11.05.2014
    490
    138
    Имя:
    Олег
    Назначить можно на любые. В данном случае контакты работают как дискретные входы, не задействую ацп.
    --- сообщения объединены, Jan 8, 2017, дата первого сообщения: Jan 8, 2017 ---
    Для проверки платы можешь отклбчить клавиатуру. Взять провод, один конец которого соединить с gnd. Вторым поочередно касаться штырей на плате, имитируя нажатие соответствующих кнопок.
     
  20. Maksss

    Maksss Active Member

    Joined:
    20.02.2015
    257
    28
    Да, так тоже делал, еще до подключения клавиатуры... Все же скорее всего флюс где то между платой и штырьками коротит, но туда уже не подлезть никак, а выпаивать весь штырьковый разъем лениво...

    В принципе логично, что АЦП не требуется для кнопок, просто я хз как это реализовано в прошивке.
    Спасибо большое за ответы!!!