Ошибка компиляции

Тема в разделе "Arduino & Shields", создана пользователем abubakar, 11 ноя 2019.

  1. abubakar

    abubakar Нерд

    Решите эту проблему. Библиотеки стоят, но не уверен что они подходят(EEPROM; EEPROMEX; не нашел в интернете). Версия IDE 1.8.10.Также тестировал в 1.6.5, но там другая ошибка была. Arduino pro mini328.
    Собираюсь сделать вот это https://itnan.ru/post.php?c=1&p=257943
    300р за это)
    Версия 1.6.5
    Код (C++):
    Arduino: 1.6.5 (Windows 8.1), Плата"Arduino/Genuino Uno"

    C:\Users\Admin\AppData\Local\Temp\build1769431011113277175.tmp/core.a(wiring.c.o): In function `__vector_16':
    D:\arduino-1.6.5-r5\hardware\arduino\avr\cores\arduino/wiring.c:49: multiple definition of `__vector_16'

    sketch_nov11b.cpp.o:D:\arduino-1.6.5-r5/sketch_nov11b.ino:137: first defined here
    collect2.exe: error: ld returned 1 exit status
    Ошибка компиляции.

     
    Код (C++):
    Arduino: 1.8.10 (Windows 10), Плата:"Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

    wiring.c.o (symbol from plugin): In function `__vector_16':

    (.text+0x0): multiple definition of `__vector_16'


    sketch\VERS1.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here

    collect2.exe: error: ld returned 1 exit status

    Несколько библиотек найдено для "EEPROMex.h"
    Используется: C:\Users\Admin\Documents\Arduino\libraries\EEPROMEx
    exit status 1
    Ошибка компиляции для платы Arduino Pro or Pro Mini.


     
    Скетч полностью не размещается в сообщении.
     

    Вложения:

    • VERS1.ino
      Размер файла:
      14,1 КБ
      Просмотров:
      332
  2. Green

    Green Гик

    Таймер 0 уже используется Ардуино - переопределите на другой.
    .
     
  3. parovoZZ

    parovoZZ Гуру

    Причем на 16 векторе сидит вот это прерывание:
     
  4. abubakar

    abubakar Нерд

    так, а что делать?)
     
  5. akl

    akl Гуру

    использовать другой таймер (1 или 2) а еще мне кажется очень много лишнего в обработчике прерывания для таймера. Не очень понятно что делает приблуда, но всякие там опросы кнопок, дребезги и многое другое можно сделать обычными ардуиновыми методами при помощи миллис(), таймер наверное нужен для какого-то уз-датчика расстояния или типа того, для которого возможно существует готовая ардуино-библиотека, в которой и можно подсмотреть как делать чтоб работало.
     
  6. akl

    akl Гуру

    да, в прерывании таймера просто какая-то дичь происходит, так делать нельзя в принципе. только самые критичные операции должны быть там.
     
  7. DetSimen

    DetSimen Guest

    переписывать самому всё заново, с нуля.
     
    Andrey12, parovoZZ и Asper Daffy нравится это.
  8. parovoZZ

    parovoZZ Гуру

    при том, что с ультразвуком можно работать напрямую с МК. Лишняя прилада нафик не нужна.
     
    DetSimen нравится это.