Perpustakaan apa yang tersedia untuk berinteraksi dengan GPIO?
Perpustakaan apa yang tersedia untuk berinteraksi dengan GPIO?
Jawaban:
Saya akan menafsirkan apa yang saya pikir Anda mungkin bertanya secara lebih luas sebagai "Bagaimana saya bisa mengendalikan GPIO dari userland?"
Cara yang sangat bagus untuk memulai menggunakan GPIO adalah menggunakan /sys
filesytem. Anda dapat melakukan semuanya dari baris perintah.
Sebagai contoh,
cd sys/class/gpio
echo 0 > export
cd gpio0
echo high > direction
Dokumentasi lainnya ada di linux / Documentation / gpio.txt .
Ada satu yang saya temukan di sini . Saya belum memiliki kesempatan untuk mengujinya, karena Pi saya belum tiba. Namun, hal itu terlihat meyakinkan. Bahkan ada utas forum di sini yang mengaku hasil yang menjanjikan. Jika Anda ingin contoh C down-to-the-basics menggunakan pustaka standar, ada satu di sini dari eLinux.
RPi.GPIO adalah paket Python untuk kontrol GPIO.
Video tutorial ini menunjukkan penggunaan dasar paket.
quick2wire dapat digunakan oleh pengguna biasa (bukan root):
API Python Quick2Wire
Pustaka Python untuk mengendalikan perangkat keras yang terpasang pada pin tajuk Raspberry Pi, tanpa berjalan sebagai pengguna root .
Pi4J memungkinkan Anda untuk mengontrol pin GPIO menggunakan Java. Saya tidak yakin cara kerjanya tetapi ada penjelasan di http://pi4j.com/
Sangat sederhana untuk mengontrol port GPIO dalam bahasa apa pun seperti yang ditunjukkan pada http://elinux.org , jadi saya percaya bahwa Anda sebenarnya tidak memerlukan kerangka kerja untuk kontrol langsung.
Anda perlu tahu fitur tambahan apa yang Anda harapkan dari suatu framework
Saya akhirnya menulis kerangka kerja untuk diri saya sendiri: Mengontrol port GPIO melalui HTTP dan dengan pekerjaan cron yang sangat sesuai dengan kebutuhan saya. Saya ingin memiliki sesuatu untuk otomatisasi rumah. Jadi saya membutuhkan pekerjaan cron dan antarmuka web JSON untuk menjalankan aplikasi asli di iPhone saya. Karena itu saya tidak menulis UI browser. Saya percaya ini juga baik untuk sistem alarm.
Saya belum menemukan daftar kerangka kerja (lengkap). Ada beberapa yang disebutkan di forum raspberrypi.org.
Johny-Five cukup mudah digunakan untuk mereka yang terbiasa dengan Node.js atau JavaScript. Lihat 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();
});
Berguna khusus untuk proyek Pi yang mengendalikan GPIO melalui server Web