Skocz do zawartości

Kurs? Raspberry Pi Pico [3] - I2C, SPI


H1M4W4R1

Pomocna odpowiedź

Po wypiciu melisy udało mi się skonfigurować VS i kompiluje kod w "Developer Command Prompt". Miganie diodami i użycie przycisku poszło gładko, ale już podłączenie wyświetlacza po I2C to masakra, nic nie działa. Nie mam pojęcia co ja źle robię. Przykłady też mi nie działają. Najgorzej, że w necie pełno jest przykładów wytłumaczonych na micropythonie a w C++ brakuje.

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

Dnia 7.11.2022 o 10:25, Bonus988 napisał:

Po wypiciu melisy udało mi się skonfigurować VS i kompiluje kod w "Developer Command Prompt". Miganie diodami i użycie przycisku poszło gładko, ale już podłączenie wyświetlacza po I2C to masakra, nic nie działa. Nie mam pojęcia co ja źle robię. Przykłady też mi nie działają. Najgorzej, że w necie pełno jest przykładów wytłumaczonych na micropythonie a w C++ brakuje.

Przechodzę ostatnie dni przez tą samą męczarnię. Niestety problem tkwi w tym, że nie ma zintegrowanego środowiska dla RP2040.

Z tego co zauważyłem kluczowe są:

- CMakeLists.txt - niektóre biblioteki wymagają dopisania, niektóre nie. Wydaje mi się, że podstawowe biblioteki z SDK wymagają. 

- Pliki .json - nie znalazłem NIGDZIE opisu co powinno się w nich znaleźć, a bez nich nie uzyskamy plików .bin, .uf2, .hex, .elf - więc nie uzyskamy wsadu do procesora. Ja po prostu skopiowałem je z przykładów z SDK. Bardzo słabe jest to, że aby poznać podstawy w C/Cpp trzeba by być już doświadczonym z json. 

- Bardzo często jeśli coś działało i przestało należy zrobić restart Visual Studio. 

Poza tym:

- Brakuje dobrego i prostego opisu jak operować na PIO

- Visual Studio zazwyczaj nie podświetla błędu, tylko trzeba szukać w tej tonie tekstu wyrzucanego w logu - jeśli problem jest z linkowaniem albo zależnościami

- include z biblioteki zewnętrznej może nie działać, nawet jeśli ten sam include w Twoim main.c działa. Nie wiem dlaczego tak jest, ale potwornie przeszkadza, bo niektóre biblioteki są OK, a inne powodują, że człowiek rzuca mięsem. 

- co do zasady przykłady nie mają wklejonego spakowanego projektu, co niestety oznacza, że zwykle nie działają, bo trzeba coś dodatkowo skonfigurować, tylko nie wiadomo co (na początku). 

Nie wiem czy powyższe Ci jeszcze pomoże, ale może komuś innemu tak - jakbym przeczytał gdzieś powyższe jak się zabierałem do RP2040 to bym oszczędził sporo czasu i nerwów. 

Cały czas nie wiem jak wiele z powyższych rozwiązać "poprawnie". Chociażby aby uzyskać wsad, uruchamiam "Debug", który generuje wsad, po czym się wykrzacza z braku połączenia. Nie mam nigdzie opcji "Build" i nie mogę jej włączyć. 

  • 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

Ciekawe... nigdy nie miałem problemów  z C/C++ na Pico

 Może dlatego, że nie używam VS(C), a do utworzenia uf2 używam make?

PIO jest ładnie opisane w dokumentacji, a i przykłady da się znaleźć...

  • Lubię! 1
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.