ライブラリのほとんどは、複数の言語では、相互作用GPIOピンを介してと/sys/class/gpio/export
、/sys/class/gpio/import
、/sys/class/gpio/gpio10/value
、などしかし、Linuxカーネルのドキュメント明記物事のレガシーな方法です。
物事を行う非レガシーな方法は何ですか?
カーネル空間を正しく理解していれば、これらの関数または標準のカーネルドライバーを一般的なGPIOタスクに使用します。
ユーザースペースには何を使用しますか?非レガシー用のSysfsインターフェースはありますか?
PS:私はカーネルのドキュメントに、古い整数ベースのインターフェースは非推奨と見なされていますが、互換性の理由から引き続き使用できると述べていることを認識しています。ただし、そのレガシーコードの使用には興味がありません。
/sys/class/gpio/export
カーネルサービスを使用できますが、ハードウェアに直接アクセスしてGPIOピンとやり取りすることはありません。確かにWiringPiとAFAIK pigpiodはSoCレジスタに直接アクセスします。