Skocz do zawartości

Arduino Leonardo + expander PCF8574 błąd kompilacji programu


vidas

Pomocna odpowiedź

Witam. Mój problem polega na tym, że na Arduino Leonardo nie mogę skompilować programu po zaimportowaniu biblioteki expandera. Występuje błąd: C:\Program Files (x86)\Arduino\libraries\PCF8574\PCint.h:3:59: error: 'PCMSK2' was not declared in this scope

Dodam, że jak przełączę w Arduino IDE na arduino nano czy inne kompilacja idzie bez problemu. Dziwne, bo taki sam expander w elektroprzewodniku był podpinany do Leonardo i ładnie śmiga. Więc w czym jest problem i jak to naprawić? Pozdrawiam 🙂.

Link do elektroprzewodnika: https://www.youtube.com/watch?v=JNmVREu ... Przewodnik

Program:

#include

#include

PCF8574 expander;

void setup()

{

expander.begin(0x20);

}

itd...

Link do komentarza
Share on other sites

Biblioteka pobrana z linku pod filmem, więc powinna działać, z innego filmiku pobrałem biblioteke i tam też używał Leonardo i to samo. Można prosić o link do działającej biblioteki?

Link do komentarza
Share on other sites

Cóż, ATmega32u4, której używa Leonardo nie ma rejestru PCMSK2 -- ma tylko PCMSK0. Zatem to, co masz działać nie będzie. Osobiście nie znam żadnych bibliotek dla PCF8574 -- ma na tyle prosty interfejs, że zawsze programowałem bezpośrednio -- więc niestety nie mogę dać ci linka do działającej biblioteki.

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Niestety mogę co najwyżej odesłać do noty katalogowej i dokumentacji biblioteki Wire, ale nie jest to jakoś bardzo skomplikowane -- po prostu wysyłasz albo odbierasz bajt, w którym bity odpowiadają poszczególnym nóżkom.

Link do komentarza
Share on other sites

Na IDE 1.0.6 działa ta biblioteka ale inne mi potrzebne nie działają :/.

PS: Znalazłem już chyba rozwiązanie tematu, tu są nowe działające biblioteki: https://playground.arduino.cc/Main/PCF8574Class Tylko trochę różnią się kodowaniem w IDE. Najpierw inicjujemy expandera: PCF8574 PCF_20(0x20); potem w funkcji loop możemy użyć poszczególnych pinów jako wejścia PCF_20.read(0); albo jako wyjścia PCF_20.write(0, HIGH). Jutro to przetestuje na razie na sucho to rozpracowałem. Napisałem, może komuś się przyda.

Link do komentarza
Share on other sites

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...

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.