ИК паяльная станция на Arduino Mega 2560. Доработка скетча "ARS_v2_Lilium_JSN"

Тема в разделе "Глядите, что я сделал", создана пользователем Jalnin, 2 ноя 2012.

Статус темы:
Закрыта.
  1. Andrsen

    Andrsen Нерд

    Все проще оказалось- надо было просто еепром затереть)
    Код (Text):

    // Подключение библиотеки для работы с EEPROM.
    #include "EEPROM.h"

    void setup()
    {
      // Проход всех ячеек(байтов) и запись в них нулей.
      for (int i = 0; i < EEPROM.length(); i++) EEPROM.update(i, 0);
    }

    void loop()
    {
      // Пустой цикл...
    }
     
     
    Последнее редактирование: 24 авг 2020
  2. Andrsen

    Andrsen Нерд

  3. Watashi

    Watashi Гуру

    В случае с EEPROM это 255, т.е. все биты в единицу.
    Ноль, в случае вывода строки символов, воспринимается как конец строки.
     
  4. SOLOway

    SOLOway Гуру

    в версиях 2.1.х для очистки EEPROM (надеюсь, я ничего не упустил :) ) вводим две дополнительные переменные для обработчика нажатий кнопок
    Код (C++):
    boolean  button_state1 = false;                           //для короткого и обычного нажатий, доп.
    boolean  button_long_state1 = false;                      //для длительного нажатия, доп.
    в перечне статусов событий добавлен
    Код (C++):
    REFLOW_STATE_MENU_RESET
    Затем введен
    Код (C++):
    void sReset() {
      asm volatile ("jmp 0");
    }
    Далее в основном цикле пишем обработчик нажатий кнопки CANCEL для режима IDLE с использованием введенных ранее дополнительных переменных
    Код (C++):
    //фиксируем момент нажатия кнопки "Cancel" + защита от дребезга
          if (cancelSwitchState == HIGH && !button_state1 && ( millis() - ms_button) > 200)
          {
            ms_button =  millis();
            button_state1 = true;
            button_long_state1 = false;
            D4_Low;                                            //внутренний вентилятор выключить
            D5_Low;                                            //внешний вентилятор выключить
          }

          //держим "Cancel" 8 секунд и стираем память
          if (cancelSwitchState == HIGH && !button_long_state1 && ( millis() - ms_button) > 8000)
          {
            button_long_state1 = true;
            ms_button =  millis();
            button_state1 = false;
            reflowState = REFLOW_STATE_MENU_RESET;
            updateScreen = true;
          }
          if (cancelSwitchState == LOW )
          {
            if (button_long_state1) button_long_state1 = false;
            if (button_state1) button_state1 = false;
          }
    и длинному (8++сек.) её удержанию поручаем выполнить sReset
    Код (C++):
    //Стираем всю память и переходим в начало
        case REFLOW_STATE_MENU_RESET:
          lcd.clear();
          lcd.setCursor(0, 0);
          lcd.print("EEPROM formatted");
          for (int i = 0; i < 512; i++) {
            EEPROM.write(i, 255);
          }
          sReset();
          break;
    Под понятием "стираем всю память" @SNMar4enko подразумевает вернуть заводские значения ячейкам, т.е. 255 (т.е. = FF).
    Это я себе в качестве шпаргалки оставлю тут :)
    P.S.: Обновлён пост #4729
     
    Последнее редактирование: 25 авг 2020
  5. katilcreed

    katilcreed Нерд

    Привет. Пытаюсь использовать программу Watashi. В ILI9486 нет сенсорного экрана. Я пытаюсь использовать его с кодировщиком, но кодировщик случайным образом перемещается по меню и переходит в меню. Кодировщик работает, но обрабатывает случайным образом. В чем дело, вы можете мне помочь?
     
  6. xake

    xake Нерд

    Если имеете в виду "энкодер", то я отключал клавиатуру (пин подключения аналоговой клавиатуры подтягивал к нулю)
     
  7. katilcreed

    katilcreed Нерд


    Я использую модуль кодировщика Arduino. ссылки правильные. модуль имеет подтягивающие резисторы. Нужно ли мне вносить какие-либо изменения в setting.h?
     
  8. katilcreed

    katilcreed Нерд


    Поскольку я перевел сайт с русского на турецкий, многое изменилось. Интересно, а есть ли полная ссылка на файл docx. Не могли бы вы дать ссылку на программу управления компьютером, если я попрошу?
     
  9. Andrsen

    Andrsen Нерд

    Там есть переключение видов энкодера, бывает и сам энкодер бракованный.
    Код (Text):

    Cl_do_btn_long Btn_ok(BTN_OK);
    // Введены два новых параметра, которые могут принимать два значения 0 или 1
    #define Rotate 0  // направление вращения
    #define I_Type 1  // тип энкодера
    // если энкодер ведет себя неправильно - смените тип энкодера
    //
    RotaryEncoder encoder(Enc_Clk, Enc_DT, Rotate, I_Type);   // пины подключения энкодера
    static byte LastPos = 2;
    byte K_Pos;
    int NewPos, Pos_Mem;
     
     
  10. katilcreed

    katilcreed Нерд

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

    Кстати переводил на английский софт Dmitrysh_V3-4in и компьютер, работает нормально.
    Я добавляю компьютерное программное обеспечение с английским кодом и английской библиотекой
     

    Вложения:

    • ENG.zip
      Размер файла:
      12,4 КБ
      Просмотров:
      406
    • irsp.zip
      Размер файла:
      291,1 КБ
      Просмотров:
      423
    • UTFT_lib.zip
      Размер файла:
      489,8 КБ
      Просмотров:
      367
    geleos27 нравится это.
  11. katilcreed

    katilcreed Нерд

    Частично нашел проблему с кодировщиком. Когда держу в руке клеммы кодировщика, он работает стабильно. Когда я отпускаю руку, он продолжает беспорядочно просматривать меню.
    Сталкивались ли вы с такой неисправностью? Как решить эту проблему?
     
  12. katilcreed

    katilcreed Нерд

    Проблема была решена, когда я бессмысленно потянул за линию переключателя модуля кодировщика 10 кОм.
     
  13. Mularik

    Mularik Нуб

    Кстати, в файле "ОПИСАНИЕ И НАСТРОЙКА" ошибка: в секции "Touch-Screen" - В начале файла Touch.h есть две строчки... Эти сточки в файле Setting.h
     
  14. Beaten_Sect0r

    Beaten_Sect0r Нуб

    подскажите какая нужна версия ScottPlot для программы @Leonid0071
     
  15. Rafae

    Rafae Нерд

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

    Вложения:

  16. SOLOway

    SOLOway Гуру

    @Beaten_Sect0r На Github.com, к сожалению, не доступна та версия, которую использовал @Leonid0071 . Самая старая версия, доступная для загрузки:
    Возможно, у @Leonid0071 сохранились более старые версии, попробуйте связаться с ним через его канал на youtube:
    @Rafae Возможно, вы находили раньше информацию о станции dmingo. Посмотрите прикрепленный файл.
     

    Вложения:

    • dmingo v.2.0.txt
      Размер файла:
      174 байт
      Просмотров:
      349
    Beaten_Sect0r нравится это.
  17. prusony

    prusony Нерд

    Try writing your question in english....
    (Please specify what lower heater will be?)
     
  18. Rafae

    Rafae Нерд

    Olá, li todas as páginas e decidi usar com arduino nano com lcd20x4 ARDUINO REWORK v1.3.4_Dimming_irsp

    Vou usar 2 sopradores 1 na parte superior e outro na parte inferior a outra parte de aquecimento da parte inferior ou usarei cerâmica ou resistência de mola mas será controlado por outro sistema pelo Arduino quero controlar apenas os sopradores
     
  19. ShVV

    ShVV Гик

    А воздуходувки мелочевку не сдуют?
     
  20. Rafae

    Rafae Нерд

    SOLOway нравится это.
Статус темы:
Закрыта.