Skocz do zawartości

Błąd kompilacji dla płytki Arduino Uno


Pomocna odpowiedź

i tak musze najpierw rozwiazac te problem vektora 11

libraries\VirtualWire\VirtualWire.cpp.o (symbol from plugin): In function `crc16_update(unsigned int, unsigned char)':

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

libraries\Servo\avr\Servo.cpp.o (symbol from plugin):(.text+0x0): first defined here

collect2.exe: error: ld returned 1 exit status

exit status 1

Błąd kompilacji dla płytki Arduino Uno.

 

Wywal <serwo.h> a zamiast tego dołącz #include"ServoTimer2.h" i zastosuj się do porad z linku który podałem wcześniej

Przed chwilą, _LM_ napisał:

Wywal <serwo.h> a zamiast tego dołącz #include"ServoTimer2.h" i zastosuj się do porad z linku który podałem wcześniej

i blad sie rozwiaze?

 

1 minutę temu, Marek2115 napisał:

i blad sie rozwiaze?

 

Poczekaj chwilke...zadzwonie do tego znanego polskiego jasnowidza...on napewno nam pomoze..😉 a tak na serio to wyprobuj ta druga biblioteke i powinno byc ok

(edytowany)
19 minut temu, ethanak napisał:

@farmaceuta da się, ale muszą być mocno używane 🙂

 

No chyba ze ktos uzywa majtek jako apaszki lub szalu...to wtedy da sie przez glowe, a przez d...juz nie..😉 taki "smnieszny" paradoks...😅hehe

Edytowano przez farmaceuta

tak wygloda tera kod

// receiver
#include <ServoTimer2.h>
#include <VirtualWire.h>

ServoTimer2 myservo;

void setup()
{
    Serial.begin(9600);
    myservo.attach(6);
    vw_set_ptt_inverted(true); 
    vw_setup(2000);	
    vw_rx_start(); 
}

void loop()
{
  
    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;
    
    check();
    
    if (vw_get_message(buf, &buflen)) 
    {
     int i;
     int lvl;
        digitalWrite(13, true); 
      	if(buf[0] == 68)
          { 
            up();
          }
          if(buf[0]== 85)
          {
            down();
          }
        digitalWrite(13, false);
     } 
}
void up()
{
  int lvl;
  if(lvl <= 6)
  {
    lvl += 1;
    check(); 
   }
   else
   {
     lvl = 1; 
   }
}
void down()
{
  int lvl;
  if(lvl <= 1)
  {
    lvl -= 1;
    check(); 
   }
   else
   {
     lvl = 6; 
   }
}
void check()
{
  int lvl;
  if (lvl == 1)
  {
    myservo.write(750);
  }
  if (lvl == 2)
  {
    myservo.write(1500);
  }
  if (lvl == 3)
  {
    myservo.write(2250);
  }
  if (lvl == 4)
  {
    myservo.write(750);
  }
  if (lvl == 5)
  {
    myservo.write(1500);
  }
  if (lvl == 6)
  {
    myservo.write(2250);
  }
}

 

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...