So-net無料ブログ作成

bcm2835_for_java(仮称)の体裁がまとまってきた [JAVAでプログラム]

(2013.09.16)
C言語で書かれたBCM2835ライブラリ(これです)をJAVAから呼び出す仕組み(<==bcm2835_for_java)の開発を続けてきましたが、少しずつ体裁がまとまってきました。

アプリケーションで使用するファイルは以下の3つです。

bcm2835.jar <== BCM2835ライブラリのラッパー
libbcm_interface.so <== JAVAプロセス側のインターフェース関数群
bcm2835_for_java <== BCMプロセス側のインターフェース関数群(root権限で動作する)

Raspberry piでLEDを点滅するJAVAプログラムはこんな感じです。
import dkl.bcm2835;

public class Example {

    static final byte PIN = bcm2835.RPI_GPIO_P1_11;
    public static void main(String[] args) {
        
        bcm2835.bi_init(args[0]);
        bcm2835.gpio_fsel(PIN, bcm2835.BCM2835_GPIO_FSEL_OUTP);
        for(int i=0; i<5; i++ )
        {
            bcm2835.gpio_write(PIN, bcm2835.HIGH);
            bcm2835.bi_delay(500);
            bcm2835.gpio_write(PIN, bcm2835.LOW);
            bcm2835.bi_delay(500);
        }
        if( bcm2835.ope_sync() != 0 )
        {
            System.out.print("ope_sync error\n");
        }
        bcm2835.bi_close();
    }
}

ライブラリの呼び出しをすっきり記述できるように整理しました。
<以前のコード>
BCMInterface.INSTANCE.bi_init(args[0]);
BCMInterface.INSTANCE.bi_bcm2835_init();

<今のコード>
bcm2835.bi_init(args[0]);

ソース・コードの見苦しい点には目をつぶり、簡単な説明を付けてGITHUBに登録しようと考えているのですが・・・

GITがよく判らない(爆)

にほんブログ村 IT技術ブログへ
にほんブログ村 ネットブログ コミュニティサイトへ
にほんブログ村 IT技術ブログ オープンソースへ


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0