記事一覧

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Johnny-Fiveでマイコン制御33 - 7セグメントLED表示器

○Led.Digitsオブジェクトを作成する

 7セグメントLED表示器(以下、LED表示器)を制御するには、Led.Digitsオブジェクトを使います。Led.Digitsオブジェクトは、物理的なボードに接続された単一のLED表示器を表すオブジェクトです。Led.Digitsオブジェクトを作成するには、Led.Digitsクラスのコンストラクタを使います。

 Johnny-Fiveでは、シフトレジスタ・デバイスの「MAX7219」と「MAX7221」、I2Cインターフェイス・デバイスの「HT16K33」を使用したLED表示器をサポートしています。

 シフトレジスタ・デバイスのLED表示器を制御するLed.Digitsオブジェクトを作成するには、コンストラクタの引数にLED表示器の「DATA(DIN)」「CLOCK」「CS」用のピン番号を含むオブジェクトを指定します。

たとえば、2ピンに「DATA(DIN)」、3ピンに「CLOCK」、4ピンに「CS」を使用するLed.Digitsオブジェクトを作成するには、次のように書きます。

new five.Led.Digits({

  pins: {

    data: 2,

    clock: 3,

    cs: 4

  }

});

 

・配線図

2016080816.png 

 MAX7219 8-ビット デジタル LED ディスプレイ

 

 I2CインターフェイスのHT16K33を使用したLED表示器を使用する場合は、「controller」プロパティに「HT16K33」を指定します

new five.Led.Digits({

  controller: "HT16K33"

});

 

・配線図

 2016080817.png

 

○LED表示器に文字を表示する

 LED表示器に文字を表示するには、「string」メソッドを使います。引数には、表示する文字列を指定します。

print(文字列)

 

 たとえば、「HELLO」と表示するには、次のように書きます。

var five = require("johnny-five");

var board = new five.Board();

 

board.on("ready", function() {

  // Led.Digitsオブジェクトを作成

  var digits = new five.Led.Digits({

    pins: {

      data: 2,

      clock: 3,

      cs: 4

    }

  });

 

  // 文字列を表示

  digits.print("HELLO");

});

 

 指定可能な文字は、次のとおりです。

0 1 2 3 4 5 6 7 8 9

! . :

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

a b c d e f g h i j k l m n o p q r s t u v w x y z


○LED表示器の特定の桁に文字を表示する

 LED表示器の特定の桁(この場合の桁は、左から右に07と数える)に文字を表示するには、「draw」メソッドを使います。引数には、桁位置(07)と表示する文字を指定します。

draw(, 文字)

 

たとえば、0桁目に「1」を表示するには、次のように書きます。

  // 0桁目に「1」を表示

  digits.draw(0, "1");

 

複数のLED表示器がカスケード(多段)接続されている場合、すべてのLED表示器で、指定した桁位置に文字が表示されます。特定のLED表示器に文字を表示するには、引数にデバイスインデックスを指定します。

draw(デバイスインデックス, , 文字)

 

デバイスインデックスは、カスケード接続されたLED表示器(最大8デバイス)の中から、特定のLED表示器を識別するための番号で、連結順に「0」から始まる連番になります。

たとえば、デバイス0(デバイスインデックス「0)LED表示器の0桁目に「1」を表示するには、次のように書きます。

  // デバイス00桁目に「1」を表示

  digits.draw(0, 0, "1");


LED表示器の明るさを調整する

 LED表示器の明るさ(輝度)を調整するには、「brightness」メソッドを使います。「brightness」メソッドを使います。引数には輝度を0100()で指定します。

brightness(輝度)

 

 たとえば、輝度を50%に設定するには、次のように書きます。

  // 輝度を50%設定

  digits.brightness(50);

 

複数のLED表示器がカスケード(多段)接続されている場合、すべてのLED表示器の輝度が設定されます。特定にLED表示器の輝度を設定するには、引数にデバイスインデックスを指定します。

brightness(デバイスインデックス, 輝度)

デバイスインデックスは、カスケード接続されたLED表示器(最大8デバイス)の中から、特定のLED表示器を識別するための番号で、連結順に「0」から始まる連番になります。

たとえば、デバイス0(デバイスインデックス「0)の輝度を50%に設定するには、次のように書きます。

  // デバイス0の輝度を50%に設定

  digits.brightness(0, 50);


LED表示器の表示をオフ/オン/クリアする

 LED表示器の表示をオフにするには「off」メソッドを、オンにするには「on」メソッドを使います。たとえば、5秒後にオフにし、10秒後にオンにするには、次のように書きます。

  // 5秒後

  this.wait(5000, function(){

    // 表示オフ

    digits.off();

  });

  // 10秒後

  this.wait(10000, function(){

    // 表示

    digits.on();

  });

 

複数のLED表示器がカスケード(多段)接続されている場合、すべてのLED表示器がオフ/オンされます。特定のLED表示器をオン/オフするには、引数にデバイスインデックスを指定します。デバイスインデックスは、カスケード接続されたLED表示器(最大8デバイス)の中から、特定のLED表示器を識別するための番号で、連結順に「0」から始まる連番になります。

 たとえば、デバイス0(デバイスインデックス「0)の表示をオフ/オンするには、次のように書きます。

  this.wait(5000, function(){

    // デバイス0の表示をオフ

    digits.off(1);

  });

  // 10秒後

  this.wait(10000, function(){

    // デバイス0の表示をオン

    digits.on(1);

  });

 

 なお、オフにしてもデータは保持され、オンにすると元の状態で表示されます。LED表示器の表示をクリアするには、「clear」メソッドを使います。

    // すべてのLED表示器の表示をクリア

    digits.clear();

 複数のLED表示器がカスケード(多段)接続されている場合、すべてのLED表示器がクリアされます。特定のLED表示器をクリアするには、引数にデバイスインデックスを指定します。

    // デバイス0をクリア

    digits.clear(0);


スポンサーサイト

コメント

コメントの投稿

非公開コメント

ads

プロフィール

Author:部員3号
FC2ブログへようこそ!

kindle本

最新コメント

温度計

ads

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。