GPIOとインターフェースするためのライブラリ


30

GPIOとのインターフェイスに使用できるライブラリは何ですか?


ない完全なリストが、ここにいくつかある-私はこの質問を閉じることになると思うが、答えの決して終わることのないストリームがあるだろうとリスト型質問は、よくスタックサイトで作業しない傾向があるとして
user2813274

回答:


14

「ユーザーランドからGPIOを制御するにはどうすればよいですか?」として、あなたがより広く求めていると思われるものを解釈します。

GPIOの使用を開始する非常に良い方法は、/sysfilesystem を使用することです。これらはすべてコマンドラインから実行できます。

例えば、

cd sys/class/gpio
echo 0 > export
cd gpio0
echo high > direction

その他のドキュメントはlinux / Documentation / gpio.txtにあります。


1
これはすべてのOSで動作しますか?
アレックスL

これはLinux固有です。
ブルーシフト

1
この方法を使用するチュートリアルはありますか?ライブラリ(主にpythonのもの)しか見ていません。
シェーンハドソン

2
これは、OPのリクエストによると、必ずしもライブラリではありません。
アンドリューラーソン

1
この質問に対する他の回答ははるかに優れています-この回答は、ライブラリに関する質問には回答しません。
レカンタ

12

ここで見つけたものがあります。Piが届かないので、テストする機会がありません。ただし、確実に見えます。フォーラムのスレッドでもありますここで公言はペイオフを約束していること。あなたが標準ライブラリを使用してダウンツー・基本Cの例をしたい場合は、1をあります、ここ eLinuxから。


それでは、このライブラリの体験はどうでしたか?
ピーターモーテンセン


1

quick2wireは一般ユーザー(root以外)が使用できます:

Quick2Wire Python API

rootユーザーとして実行せずに、Raspberry Piのヘッダーピンに接続されたハードウェアを制御するためのPythonライブラリ。


このリンクは質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供する方が良いでしょう。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。
マークブース

@MarkBooth:「答えの本質的な部分」は、他の答えとは異なり、「通常のユーザーが使用できます」です。
ダグレ

1

私はWiring PIを使用していますが、とてもうまく機能します。私は言語Cでそれを使用し、今のところ問題はありませんでした。理解しやすく、扱いも簡単です。



0

http://elinux.orgに示されているように、任意の言語でGPIOポートを制御するのは本当に簡単なので、直接制御のためのフレームワークは実際には必要ないと思います。

フレームワークに期待する追加機能を知る必要があります。例えば

  • ブラウザ経由のリモート制御
  • きれいなブラウザUIまたはスタンドアロンプ​​ログラム
  • 自動時間ベース制御(cronジョブ)

私は自分自身のためのフレームワークを書くことになりました:HTTPとcronジョブでGPIOポートを制御します、私のニーズに完全に適合するを使用します。私はホームオートメーションのために何かを持ちたかった。そのため、iPhoneでネイティブアプリを実行するには、cronジョブとJSON Webインターフェイスが必要でした。したがって、ブラウザUIを作成しませんでした。警報システムにも適していると思います。

フレームワークの(完全な)リストはまだ見つかりませんでした。raspberrypi.orgのフォーラムには、いくつかの言及があります。


0

Johny-Fiveは、Node.jsまたはJavaScriptに精通している人にとって非常に使いやすいです。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();
});

Webサーバーを介してGPIOを制御するPiプロジェクトに特に役立ちます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.