Jakie biblioteki są dostępne do współpracy z GPIO?
Jakie biblioteki są dostępne do współpracy z GPIO?
Odpowiedzi:
Mam zamiar zinterpretować to, o czym myślę, że pytasz szerzej: „Jak mogę kontrolować GPIO z przestrzeni użytkownika?”
Bardzo dobrym sposobem na rozpoczęcie korzystania z GPIO jest użycie systemu /sys
plików. Możesz to wszystko zrobić z wiersza poleceń.
Na przykład,
cd sys/class/gpio
echo 0 > export
cd gpio0
echo high > direction
Więcej dokumentacji znajduje się w linux / Documentation / gpio.txt .
Jest taki, który tu znalazłem . Nie miałem okazji go przetestować, ponieważ moje Pi nie dotarło. Wygląda to jednak pewnie. Jest nawet wątek na forum , który głosi obiecującą wypłatę. Jeśli chcesz najprostszego przykładu C przy użyciu standardowych bibliotek, jest tutaj jeden z eLinux.
RPi.GPIO to pakiet Pythona do kontroli GPIO.
Ten film instruktażowy pokazuje podstawowe użycie pakietu.
quick2wire może być używany przez zwykłych użytkowników (nie root):
Interfejs API Python Quick2Wire
Biblioteka Python do sterowania sprzętem podłączonym do pinów nagłówka Raspberry Pi, bez uruchamiania jako użytkownik root .
Pi4J pozwala kontrolować piny GPIO za pomocą Java. Nie jestem pewien, jak to działa, ale wyjaśnienie znajduje się na stronie http://pi4j.com/
Sterowanie portami GPIO w dowolnym języku jest bardzo proste, jak pokazano na http://elinux.org , więc uważam, że tak naprawdę nie potrzebujesz ram do bezpośredniego sterowania.
Musisz wiedzieć, jakich dodatkowych funkcji oczekuje się od frameworka, takich jak
Skończyłem pisać dla siebie strukturę: Kontroluj porty GPIO przez HTTP i zadania cron, które idealnie pasują do moich potrzeb. Chciałem mieć coś do automatyki domowej. Potrzebowałem więc zadań crona i interfejsu internetowego JSON, aby uruchomić natywną aplikację na moim iPhonie. Dlatego nie napisałem interfejsu użytkownika przeglądarki. Uważam, że byłoby to również dobre dla systemu alarmowego.
Nie znalazłem (kompletnej) listy ram. Niektóre są wymienione na forum raspberrypi.org.
Johny-Five jest dość łatwy w użyciu dla osób znających Node.js lub JavaScript. Zobacz http://johnny-five.io/examples/raspi-io/
npm install johnny-five raspi-io
var five = require("johnny-five");
var Raspi = require("raspi-io").RaspiIO;
var board = new five.Board({
io: new Raspi()
});
board.on("ready", function() {
var led = new five.Led("P1-13");
led.blink();
});
Szczególnie przydatny w projektach Pi kontrolujących GPIO za pośrednictwem serwera WWW