Skocz do zawartości

Błąd kompilacji dla płytki Arduino Uno WiFi Rev2


LionBS

Pomocna odpowiedź

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

 

Chcę wgrać na Arduino Uno WiFi Rev2. kod programu nadajnika i wyskakują mi błędy. Podobne błędy wyskakiwały w starszej bibliotece do obsługi radia <VirtualWire.h>
po zainstalowaniu biblioteki <RH_ASK.h> nadal nie mogę wgrać kodu. Gdzieś wyczytałem aby przejść na nowszą bibliotekę RadioHead i guzik z tego. Na Arduino Uno  inne programy mi działałają. 

Mam też Arduino UNO i nie ma problemu z graniem na niego kodu do nadajnika.

Kod programu:

#include <RH_ASK.h>
#include <SPI.h> // Not actualy used but needed to compile

RH_ASK driver;

void setup()
{
  pinMode(13,1);
    Serial.begin(9600);  // Debugging only
    if (!driver.init())
         Serial.println("init failed");
}

void loop()
{
    uint8_t buf[12];
    uint8_t buflen = sizeof(buf);
    String x="";
    String y="Turn LED OFF";
    if (driver.recv(buf, &buflen)) // Non-blocking
    {
      int i;
      // Message with a good checksum received, dump it.
      Serial.print("Message: ");
      x=((String)(char*)buf);
      x.trim();
      Serial.println(x+ " :"+x.length());   
       if(x=="Turn LED ON!")
       {
        Serial.println("true ");
        digitalWrite(13,1);
        }
        else
        {
          digitalWrite(13,0);
          }
          
    }
    
}

 

Błędy które wyskakują:
 

C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp: In member function 'virtual void RHHardwareSPI::attachInterrupt()':
C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:49:25: error: 'virtual void SPIClassMegaAVR::attachInterrupt()' is private within this context
     SPI.attachInterrupt();
                         ^
In file included from C:\Program Files (x86)\Arduino\libraries\RadioHead/RadioHead.h:540:0,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHGenericSPI.h:10,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHHardwareSPI.h:10,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:7:
C:\Users\Lenovo T420S\AppData\Local\Arduino15\packages\arduino\hardware\megaavr\1.8.7\libraries\SPI\src/SPI.h:186:15: note: declared private here
   inline void attachInterrupt() { SPI0.INTCTRL |= (SPI_IE_bm); }
               ^~~~~~~~~~~~~~~
C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp: In member function 'virtual void RHHardwareSPI::detachInterrupt()':
C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:56:25: error: 'virtual void SPIClassMegaAVR::detachInterrupt()' is private within this context
     SPI.detachInterrupt();
                         ^
In file included from C:\Program Files (x86)\Arduino\libraries\RadioHead/RadioHead.h:540:0,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHGenericSPI.h:10,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHHardwareSPI.h:10,
                 from C:\Program Files (x86)\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:7:
C:\Users\Lenovo T420S\AppData\Local\Arduino15\packages\arduino\hardware\megaavr\1.8.7\libraries\SPI\src/SPI.h:187:15: note: declared private here
   inline void detachInterrupt() { SPI0.INTCTRL &= ~(SPI_IE_bm); }
               ^~~~~~~~~~~~~~~
exit status 1
Błąd kompilacji dla płytki Arduino Uno WiFi Rev2.

 

Proszę o pomoc co z tym zrobić. Cały czas nad tym pracuję i czytam co się da aby znaleźć rozwiązanie. 

Edytowano przez LionBS
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.