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

Тема в разделе "Arduino & Shields", создана пользователем Jalnin, 2 ноя 2012.

  1. foxbe

    foxbe Нуб

    Всем привет! При компиляции скетча Svs_06.ino, получаю ошибку:"fatal error: TimeLib.h: No such file or directory". Где взять библиотеку?
     
  2. Watashi

    Watashi Гик

    Это библиотека MsTimer2, установите ее.
     
  3. foxbe

    foxbe Нуб

    Спасибо!
     
  4. StDV

    StDV Нерд

    Приветствую. "Установка чипа бессвинец" - 200 гр.? Или я что-то не понял?
     
  5. HAR

    HAR Нуб

    Всем привет! При компиляции скетча Svs_06.ino, получаю ошибку 274 строка: 'tmElements_t' does not name a type.
     
  6. Yojiq

    Yojiq Гик

    надпись стартовая, сам можешь ее отредактировать или перейти на другую, параметры пайки для свинца использовались.
     
  7. Yojiq

    Yojiq Гик

    без часового модуля профиль не запустится ?
     
  8. Watashi

    Watashi Гик

    Это нет библиотеки часов RTC, мне казалось я ее включил, но не тут то было )) попробую поискать какую я использовал (так получилось что я сейчас за 500 км от своего компа и посмотреть не могу)

    ПС нашел ее, прилагаю.
     

    Вложения:

    • DS1307RTC.zip
      Размер файла:
      6 КБ
      Просмотров:
      85
    Последнее редактирование: 16 сен 2019
  9. Watashi

    Watashi Гик

    Не пробовал. можно конечно исключить часы, тогда меняется стартовая страница
     
  10. Lenar

    Lenar Нерд

    я попробовал залить в DUE,
    насколько я понял не хватает библиотеки
    https://github.com/jlesech/Eeprom24C32_64
    в библиотеке MsTimer2 нет файла TimeLib.h
    компилятор пишет что сама библиотека MsTimer2 может не работать с DUE
    TimeLib.h взял отсюда https://github.com/PaulStoffregen/Time
    на сигналы бузера пишет - error: 'tone' was not declared in this scope
    закоментил бузер
    ещё вывалились ошибки
    Код (C++):










    ПРЕДУПРЕЖДЕНИЕ: библиотека TimerOne должна запускаться на архитектурах (avr) и может быть несовместима с вашей платой на архитектуре (sam).
    In file included from C:\Users\1\Documents\Arduino\libraries\UTFT/UTFT.h:180:0,

                     from C:\c__________7\___podelki\_паялка\Watashi\Svs_V06\Svs_V06.ino:68:

    C:\Users\1\Documents\Arduino\libraries\UTFT/hardware/arm/HW_ARM_defines.h:35:0: warning: "pgm_read_word" redefined [enabled by default]

    #define pgm_read_word(data) *data

    ^

    In file included from C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/Arduino.h:31:0,

                     from sketch\Svs_V06.ino.cpp:1:

    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/avr/pgmspace.h:103:0: note: this is the location of the previous definition

    #define pgm_read_word(addr) (*(const unsigned short *)(addr))

    ^

    In file included from C:\Users\1\Documents\Arduino\libraries\UTFT/UTFT.h:180:0,

                     from C:\c__________7\___podelki\_паялка\Watashi\Svs_V06\Svs_V06.ino:68:

    C:\Users\1\Documents\Arduino\libraries\UTFT/hardware/arm/HW_ARM_defines.h:36:0: warning: "pgm_read_byte" redefined [enabled by default]

    #define pgm_read_byte(data) *data

    ^

    In file included from C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/Arduino.h:31:0,

                     from sketch\Svs_V06.ino.cpp:1:

    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/avr/pgmspace.h:102:0: note: this is the location of the previous definition

    #define pgm_read_byte(addr) (*(const unsigned char *)(addr))

    ^

    C:\Users\1\Documents\Arduino\libraries\TimerOne\TimerOne.cpp:21:26: error: 'short unsigned int TimerOne::pwmPeriod' is not a static member of 'class TimerOne'

    unsigned short TimerOne::pwmPeriod = 0;

                              ^

    C:\Users\1\Documents\Arduino\libraries\TimerOne\TimerOne.cpp:22:25: error: 'unsigned char TimerOne::clockSelectBits' is not a static member of 'class TimerOne'

    unsigned char TimerOne::clockSelectBits = 0;

                             ^

    C:\Users\1\Documents\Arduino\libraries\TimerOne\TimerOne.cpp:23:31: error: 'void (* TimerOne::isrCallback)()' is not a static member of 'class TimerOne'

    void (*TimerOne::isrCallback)() = NULL;

                                   ^

    exit status 1
    Ошибка компиляции для платы Arduino Due (Programming Port).
     
     
  11. Yojiq

    Yojiq Гик

     

    Вложения:

  12. Watashi

    Watashi Гик

    Вообще то я давно запускал на DUE и библиотеки подбирал чтоб там работали и DumpFileI2C_F писался под этот момент. В тот момент у меня работал только интерфейс ввода данных профиля и я решил что сначала нужно закончить основной функционал а потом перейти к ускорению платформы и добавлннию фишек.
    Относительно ошибок. Вроде они предупреждающие а не критичные и связаны с кривой русификацией библиотеки UTFT . У меня компиляция первый раз проходит с похожими ошибками, а в последующих без
     
  13. Lenar

    Lenar Нерд

    почистил библиотеки ардуино у себя и попробовал снова
    если подключена MsTimer2-master то компиляция на этом и прекращается, если её удалить то компиляции тоже не происходит, но ошибок больше )
    несколько таких - error: invalid conversion from 'Pio*' to 'uint8_t
    несколько таких - error: base operand of '->' is not a pointer
    ну и в обоих случаях пишет
    exit status 1
    Ошибка компиляции для платы Arduino Due (Programming Port).
     
  14. HAR

    HAR Нуб

    СПАСИБО Watashi. Yojiq. компиляция прошла успешно!!!!!
     
  15. Watashi

    Watashi Гик

    У вас похоже эта версия IDE, Надо работать с последними версиями. У меня сейчас вроде1.8.9
     
  16. Watashi

    Watashi Гик

    как работает?
     
  17. HAR

    HAR Нуб

    Watashi пока не пробовал.ардуинка дома.
     
  18. Lenar

    Lenar Нерд

    под 1.8.9 тоже самое, использовал 1.8.5, если я правильно понимаю компилятор не может переназначить выводы для due.

    Код (C++):
    In file included from C:\Users\1\Documents\Arduino\libraries\UTFT/UTFT.h:180:0, from C:\c__________7\___podelki\_паялка\Watashi\Svs_V06\Svs_V06.ino:15:
    C:\Users\1\Documents\Arduino\libraries\UTFT/hardware/arm/HW_ARM_defines.h:35:0: warning: "pgm_read_word" redefined [enabled by default]
    #define pgm_read_word(data) *data
    ^
    In file included from C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/Arduino.h:31:0,
                     from sketch\Svs_V06.ino.cpp:1:
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/avr/pgmspace.h:103:0: note: this is the location of the previous definition
    #define pgm_read_word(addr) (*(const unsigned short *)(addr))
    ^
    In file included from C:\Users\1\Documents\Arduino\libraries\UTFT/UTFT.h:180:0,
                     from C:\c__________7\___podelki\_паялка\Watashi\Svs_V06\Svs_V06.ino:15:
    C:\Users\1\Documents\Arduino\libraries\UTFT/hardware/arm/HW_ARM_defines.h:36:0: warning: "pgm_read_byte" redefined [enabled by default]
    #define pgm_read_byte(data) *data
    ^
    In file included from C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/Arduino.h:31:0,
                     from sketch\Svs_V06.ino.cpp:1:
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\cores\arduino/avr/pgmspace.h:102:0: note: this is the location of the previous definition
    #define pgm_read_byte(addr) (*(const unsigned char *)(addr))
    ^
    In file included from C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/pins_arduino.h:20:0,
                     from C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:6:
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp: In member function 'TSPoint TouchScreen::getPoint()':
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:63:65: error: invalid conversion from 'Pio*' to 'uint8_t {aka unsigned char}' [-fpermissive]
    #define digitalPinToPort(P)        ( g_APinDescription[P].pPort )
                                                                     ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:61:21: note: in expansion of macro 'digitalPinToPort'
       uint8_t xp_port = digitalPinToPort(_xp);
                         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:63:65: error: invalid conversion from 'Pio*' to 'uint8_t {aka unsigned char}' [-fpermissive]
    #define digitalPinToPort(P)        ( g_APinDescription[P].pPort )
                                                                     ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:62:21: note: in expansion of macro 'digitalPinToPort'
       uint8_t yp_port = digitalPinToPort(_yp);
                         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:63:65: error: invalid conversion from 'Pio*' to 'uint8_t {aka unsigned char}' [-fpermissive]
    #define digitalPinToPort(P)        ( g_APinDescription[P].pPort )
                                                                     ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:63:21: note: in expansion of macro 'digitalPinToPort'
       uint8_t xm_port = digitalPinToPort(_xm);
                         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:63:65: error: invalid conversion from 'Pio*' to 'uint8_t {aka unsigned char}' [-fpermissive]
    #define digitalPinToPort(P)        ( g_APinDescription[P].pPort )
                                                                     ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:64:21: note: in expansion of macro 'digitalPinToPort'
       uint8_t ym_port = digitalPinToPort(_ym);
                         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:77:4: note: in expansion of macro 'portOutputRegister'
       *portOutputRegister(yp_port) &= ~yp_pin;
        ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:78:4: note: in expansion of macro 'portOutputRegister'
       *portOutputRegister(ym_port) &= ~ym_pin;
        ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:86:4: note: in expansion of macro 'portOutputRegister'
       *portOutputRegister(xp_port) |= xp_pin;
        ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:87:4: note: in expansion of macro 'portOutputRegister'
       *portOutputRegister(xm_port) &= ~xm_pin;
        ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:102:5: note: in expansion of macro 'portOutputRegister'
        *portOutputRegister(xp_port) &= ~xp_pin;
         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:106:5: note: in expansion of macro 'portOutputRegister'
        *portOutputRegister(yp_port) |= yp_pin;
         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:125:5: note: in expansion of macro 'portOutputRegister'
        *portOutputRegister(xp_port) &= ~xp_pin;
         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:129:5: note: in expansion of macro 'portOutputRegister'
        *portOutputRegister(ym_port) |= ym_pin;
         ^
    C:\Users\1\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.11\variants\arduino_due_x/variant.h:66:44: error: base operand of '->' is not a pointer
    #define portOutputRegister(port)   ( &(port->PIO_ODSR) )
                                                ^
    C:\Users\1\Documents\Arduino\libraries\Touch-Screen-Library-master\TouchScreen.cpp:133:5: note: in expansion of macro 'portOutputRegister'
        *portOutputRegister(yp_port) &= ~yp_pin;
         ^
    exit status 1
    Ошибка компиляции для платы Arduino Due (Programming Port).
     
  19. Watashi

    Watashi Гик

    Скорее всего библиотека Touch-Screen-Library-master несовместима с DUE/
    Я столкнулся с двумя видами тача на дисплеях:
    1 - используется два цифровых выхода с ардуино и два аналоговых.
    2 - используется интерфейс типа I2c(Могу ошибаться) и использует библиотеку UTFTTouch
    библиотека Touch-Screen-Library-master предназначена для дисплеев 1-го типа для Uno или Mega.
    Для работы с Due у меня дисплей 2-го типа, я на тестах все проверил, а в скетч пока не включал.
    Нужно поискать библиотеку под Due работающую с тачами 1-го типа, я этого не делал, просто не сталкивался с такой проблемой.
     
  20. chirokiy77

    chirokiy77 Нерд

    всем привет ребята подскажите какая схема детектора ноля сейчас проверенная и нормально рабочая?