Проблема со скетчем.

Тема в разделе "Arduino & Shields", создана пользователем Avenger, 30 дек 2018.

  1. Avenger

    Avenger Нуб

    Доброго времени суток!Не получается залить скетч ардуино про мини из за следующей ошибки в коде.
    Вероятнее всего конфликт возникает в библиотекой button.h ,
    собственно ссылка на неё: https://github.com/tigoe/Button
    Непосредственно сам скетч и схема подключения :
    [​IMG]

    #include <TEA5767.h>
    // from https://github.com/andykarpov/TEA5767
    #include <Wire.h>
    #include <Button.h>
    // from http://arduino-info.wikispaces.com/HAL-LibrariesUpdates Та самая библиотека
    #include <LiquidCrystal_I2C.h>
    LiquidCrystal_I2C lcd(0x27,16,2); // adress is 0x20 for LCD16x2
    // adapted sketch by niq_ro from http://nicuflorica.blogspot.ro
    // version 2.0

    TEA5767 Radio;
    double old_frequency;
    double frequency;
    int search_mode = 0;
    int search_direction;
    unsigned long last_pressed;

    Button btn_forward(11, PULLUP);
    // Собственно где ошибка отсутствия переменной, часть отвечающая за кнопки s1/s2
    Button btn_backward(12, PULLUP);
    // Собственно где ошибка отсутствия переменной

    void setup() {
    Wire.begin();
    Radio.init();
    Radio.set_frequency(99.90);
    Serial.begin(9600);
    lcd.init();
    lcd.backlight(); //backlight is now ON
    lcd.begin(16,2);
    lcd.clear();
    }

    void loop() {

    unsigned char buf[5];
    int stereo;
    int signal_level;
    double current_freq;
    unsigned long current_millis = millis();
    if (Radio.read_status(buf) == 1) {
    current_freq = floor (Radio.frequency_available (buf) / 100000 + .5) / 10;
    stereo = Radio.stereo(buf);
    signal_level = Radio.signal_level(buf);
    lcd.setCursor(0,0);
    lcd.print("FM: "); lcd.print(current_freq);
    lcd.print("MHz ");
    lcd.setCursor(0,1);
    if (stereo) lcd.print("STEREO "); else lcd.print("MONO ");
    lcd.print(signal_level);
    lcd.print("/15 ");
    }
    if (search_mode == 1) {
    if (Radio.process_search (buf, search_direction) == 1) {
    search_mode = 0;
    }
    }
    if (btn_forward.isPressed()) {
    last_pressed = current_millis;
    search_mode = 1;
    search_direction = TEA5767_SEARCH_DIR_UP;
    Radio.search_up(buf);
    delay(500);
    }
    if (btn_backward.isPressed()) {
    last_pressed = current_millis;
    search_mode = 1;
    search_direction = TEA5767_SEARCH_DIR_DOWN;
    Radio.search_down(buf);
    delay(500);
    }
    delay(100);
    }
     
  2. причем тут конфликт, онже пишет 'PULLUP' was not declared in this scope
    он незнает что такое PULLUP, смотрите функцию btn_forward в библиотеки, что туда передавать надо.
     
  3. Airbus

    Airbus Радиохулиган Модератор

    [​IMG]
     
    Последнее редактирование: 31 дек 2018
  4. тогда такие вопросы бы не задавал )
     
  5. Airbus

    Airbus Радиохулиган Модератор

    Для начала дефинировать выводы что за btn_forvard и где.В сетапе назначить как входа и подтянуть их.Ну и код вставить правильно для начала
     
  6. Avenger

    Avenger Нуб

    На том сайте не нашел её, нашел вот здесь:
    https://github.com/tigoe/Button
     
  7. мне за вас библиотеку открыть?

    #define BUTTON_PULLUP_INTERNAL 2
    #define BUTTON_PULLDOWN LOW
    #define BUTTON_PULLUP HIGH

    не обманул компилятор, PULLUP как видно там нет.
     
  8. Avenger

    Avenger Нуб

    В каком файле и что необходимо добавить?
     
  9. DetSimen

    DetSimen Guest

    В файле "мосх" добавить "знания"
     
    parovoZZ нравится это.
  10. Avenger

    Avenger Нуб

    А без острот?
     
  11. DetSimen

    DetSimen Guest

    Ну.... Я свою мнению высказало.
     
    Airbus нравится это.
  12. parovoZZ

    parovoZZ Гуру

    Все, полная деградация? Уже не можем подтяжку включить без библиотеки?
     
    Airbus нравится это.
  13. зачем ее включать? там резисторы на схеме.
     
  14. parovoZZ

    parovoZZ Гуру

    Снаружи они зачем?
     
    Airbus нравится это.
  15. [​IMG]