【Java】Raspberry PiでカラーLED
pigpioを使いRGBのLEDを操作するプログラムをJavaで書いてみたので、自分用に内容を記事にしときたいと思います。
前回の記事でカラーLEDを動かす為の配線を行いましたので、これを動かしていきます。
プログラムはリモートでテストしていきます。
使用するライブラリはこれ。
https://github.com/nkolban/jpigpio
私が改造した奴がこれ。
https://github.com/nompor/jpigpio
今回はオリジナルのライブラリでも問題なく処理できると思うので、どっちを使ってもOK。
赤、黄、青、緑、紫の順で点灯させます。
import jpigpio.JPigpio;
import jpigpio.PigpioException;
import jpigpio.PigpioSocket;
public class RGBLED {
public static void main(String[] args) throws InterruptedException, PigpioException {
PigpioSocket sock = new PigpioSocket("ラズパイIPアドレス", 8888);
final int R = 4;//赤LED GPIO番号
final int G = 3;//緑LED GPIO番号
final int B = 2;//青LED GPIO番号
sock.gpioSetMode(R, JPigpio.PI_OUTPUT);//R
sock.gpioSetMode(G, JPigpio.PI_OUTPUT);//G
sock.gpioSetMode(B, JPigpio.PI_OUTPUT);//B
try {
int colors[][] = {
{0,1,1}//赤
,{0,0,1}//黄
,{1,1,0}//青
,{1,0,1}//緑
,{0,1,0}//紫
};
int cnt =0;
while(true){
int[] clr = colors[cnt];
cnt = ++cnt % colors.length;
sock.gpioWrite(R, clr[0] == 1);//R
sock.gpioWrite(G, clr[1] == 1);//G
sock.gpioWrite(B, clr[2] == 1);//B
Thread.sleep(500);
}
} finally {
sock.gpioTerminate();
}
}
}
実行結果
関連記事
















ディスカッション
コメント一覧
まだ、コメントがありません