• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino 1.6.6 i IRremote - błędy kompilacji
#1
Cześć, ma może ktoś z Was najnowsze Arduino 1.6.6? Na wcześniejszych wersjach wszystko było dobrze, a na tej nie chce mi skompilować nic.
Nawet najprostszy kod:

Kod:
#include <IRremote.h>
#define irPin 7
IRrecv irrecv(irPin);
decode_results results;

void setup() {
  Serial.begin(9600);
  irrecv.enableIRIn();
}

void loop() {
  if (irrecv.decode(&results)) {
     Serial.print("0x");
     Serial.println(results.value, HEX);
     delay(250);
     irrecv.resume();
     }
}

Wyskakuje mi błąd:

Cytat:C:\Program Files (x86)\Arduino\libraries\RobotIRremote\src\IRremoteTools.cpp:5:16: error: 'TKD2' was not declared in this scope

 int RECV_PIN = TKD2; // the pin the IR receiver is connected to

                ^

Znaleziono wiele bibliotek w "IRremote.h"
Wykorzystane: C:\Program Files (x86)\Arduino\libraries\RobotIRremote
Nie wykorzystane: D:\DyskGoogle\PC\Arduino\libraries\Arduino-IRremote-master
Użycie biblioteki RobotIRremote w wersji 1.0.2 w folderze: C:\Program Files (x86)\Arduino\libraries\RobotIRremote
exit status 1
Błąd kompilacji.

Ktoś sobie z tym poradził?

Pozdrawiam.
 
#2
Ja korzystam z wersji 1.0.5 chyba najlepsza wersja, próbowałem wyższe ale co chwilę jakiś błąd więc zostałem przy tej wersji.

Nie masz czasem zainstalowanej starszej wersji jeszcze? Wygląda na to że masz dwie. Pozatym nie masz chyba biblioteki w odpowiednim folderze. Wejdź do C:\Program Files (x86)\Arduino\libraries\ i tam wgraj bibliotekę IRremote
 
#3
Miałem podobny komunikat, wykasowałem część plików.
 
#4
Ja również miałem podobny. W moim przypadku pomogło wyrzucenie biblioteki RobotIRremote. Smile
[Obrazek: Sygnatura1-w60.jpg]
 
#5
Witam
I ja swoje 3 grosze dorzucam do tematu.
Osobiście zalecam używania wersji 1.5.xx - tak właśnie. Żadnej wyższej od 1.6.0.
Przynajmniej wszystko działa. Jeśli potrzebuję nowości, to raczej grzebię w bibliotekach i je podmieniam.
Na przykład ostatnio borykałem się z problemem zapisu zmiennej typu float do pamięci EEPROM.
Jak wszystkim doskonale wiadomo pamięć EEPROM pozwala zapisać wszystko w 8-mio bitowych komórkach o adresach od 0-1023 (w przypadku Uno).
Aby zapisać zmienną float potrzeba 4 bajtów.... dobra już widzę, że odbiegam od tematu :-)
W każdym razie zapis taki klasycznie robi się wykorzystując tzw unie, lub dziwne praktyki "unikania" części ułamkowych przez pomnożenie przez potęgi liczby 10.
A tymczasem w najnowszej wersji 1.6.7 są w bibliotece EEPROM  2 fajne funkcje (get i put), które robią to doskonale.
Starsze wersje IDE tego nie mają... więc jak coś potrzebuję, to staram się podmieniać... i jak tylko mogę unikam jak ognia wersji 1.6.7 :-)
Pozdrawiam
 
#6
Super, działa, dziękuję za pomoc! Smile
 
#7
Zamykam. Smile
[Obrazek: Sygnatura1-w60.jpg]
 
  


Skocz do:


Przeglądający: 1 gości