/sys/class/leds/ktd202x:led1/device/reset ファイルに”1”を書き込むとリセット
/sys/class/leds/ktd202x:led1/device/registers ファイルにLEDの色データを書き込むとボタンの色が変更できます。
import java.io.*;
public class led { /** * led クラスのインスタンスのためのコンストラクタ */ public led() { // インスタンス変数の初期化 try { PrintWriter leddev = new PrintWriter(new BufferedWriter(new FileWriter("/sys/class/leds/ktd202x:led1/device/reset"))); leddev.print("1"); leddev.close(); } catch(Exception e) { System.out.println("LED write error" + e); }
}
/** * LEDの初期化 * * @param なし * @return なし */ public static void resetLed() { try { PrintWriter leddev = new PrintWriter(new BufferedWriter(new FileWriter("/sys/class/leds/ktd202x:led1/device/reset"))); leddev.print("1"); leddev.close(); } catch(Exception e) { System.out.println("LED write error" + e); } }
/** * LEDの明るさを変える * * @param r,g,b 明るさ 赤 緑 青 * @return なし */ public static void changeLed(int r,int g,int b) { if( r > 255 ) r = 255; if( r < 0 ) r = 0; if( g > 255 ) g = 255; if( g < 0 ) g = 0; if( b > 255 ) b = 255; if( b < 0 ) b = 0;
try { PrintWriter leddev = new PrintWriter(new BufferedWriter(new FileWriter("/sys/class/leds/ktd202x:led1/device/registers"))); leddev.print("led1=" + r + ";ch1_enable=1;led2=" + g + ";ch2_enable=1;led3=" + b + ";ch3_enable=1;"); leddev.close(); } catch(Exception e) { System.out.println("LED write error" + e); } }
/** * メイン */ public static void main(String args[]) { led.changeLed(255,0,255); try { Thread.sleep(3000); } catch(Exception e) { } led.resetLed(); }
}
|
※コメント投稿者のブログIDはブログ作成者のみに通知されます