Skocz do zawartości

Adafruit w języku C


artbaryl

Pomocna odpowiedź

Witam,
chciałem zrobić pobieranie danych z tych dwóch modułów:

http://botland.com.pl/raspberry-pi-hat-czujniki-i-dzwiek/4585-rs232-hat-do-raspberry-pi.html

http://botland.com.pl/moduly-gps/2662-adafruit-ultimate-gps-modul-gps-mtk3339.html

ale widzę, że wszystko tutaj jest dedykowane pod Python'a. Czy jest łatwy sposób na ogarnięcie tego w języku C? (Dostałem odgórnie poproszony o napisanie tego w C jakby padły pytania czemu chce to zrobić w C)

Pytanie też czy wgl ma to sens drożyć te moduły w języku C bo jak ma się okazać, że to jest 10 razy dłuższa droga to już zrobię to w Pythonie 😉

Z góry dzięki za odpowiedź!

Link do komentarza
Share on other sites

Ten moduł GPS gada po serialu, jak zresztą większość GPS-ów. Nie potrzebujesz do niego żadnych shieldów, hatów czy innych wymysłów. No i ponieważ to jest zwykły port szeregowy, to możesz z niego czytać dane i je obrabiać nawet w bashu, jeśli koniecznie chcesz. Język nie ma tu znaczenia, dopóki wiesz jak się nim posługiwać.

[ Dodano: 08-05-2016, 20:51 ]

Właśnie tam popatrzyłem i rzuciło mi się w oczy:

W celu uruchomienia urządzenia wystarczy nałożyć płytkę na piny GPIO Raspberry Pi oraz pobrać sterowniki przy pomocy komendy:

wget -O - http://www.raspberrypi.org/files/astro-pi/astro-pi-install.sh --no-check-certificate | bash

DLACZEGO? 🙁

Link do komentarza
Share on other sites

Posiadam te moduły i nie ja nie kupowałem tak tylko powiem.

Programować umiem ale seriala nigdy nie obsługiwałem więc nie bardzo w tym się orientuje. Moje programowanie w tego typu urządzeniach ograniczało się do odczytywania wejść cyfrowych i analogowych (np. enkodery, termometry itp)

Takie coś znalazłem:

https://www.raspberrypi.org/forums/viewtopic.php?t=91923&p=642276

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

GPS: jak napisane już wcześniej moduł komunikuje się przez port szeregowy, więc możesz wykorzystać dowolną bibliotekę do parsowania stringów gps, np. TinyGPS (napisany 'pod' Arduino, ale do parsera ładujesz pojedyncze char-y, więc nie ma znaczenia na czym kod działa). Jedyne zadanie dla Ciebie to napisane trochę kodu łączącego port szeregowy (sprzęt) z wejściem 'biblioteki' TinyGPS. Chcesz to pisać w C - możesz albo przeportować kod zaproponowany przeze mnie na C albo poszukać innej biblioteki napisanej już w C.

Moduł z czujnikami/ledami: ekspertem od Pythona nie jestem i nie znam tego modułu, ale zakładam, że założenie jest takie, że doinstalowuje się pythonowe moduły (programowe) umożliwiające sterowanie modułem(sprzętowym). Jeśli chcesz wykorzystać te funkcje/sterownik to powinieneś utworzyć bindingi umożliwiające wywoływanie funkcji 'Pythonowych' z kodu w C. Druga opcja to rozkminić komunikację (jest po SPI albo I2C - musisz poszukać), może dostępna jest dokumentacja opisująca sterowanie modułem na poziomie pojedynczych komend (a nie wywołań funkcji drivera).

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.