UNPKG

obniz

Version:

obniz sdk for javascript

95 lines (71 loc) 3.02 kB
# MatrixLED_MAX7219 複数LEDを操作するMAX219チップと連携するクラスです。 7セグメントやマトリックスLEDとセットで販売されていることが多く、色々な表示が可能です。 また、連続してつなげることができるのも特徴です。 [http://akizukidenshi.com/catalog/g/gM-09984/](http://akizukidenshi.com/catalog/g/gM-09984/) ![](./max7219.jpg) <iframe width="560" height="315" src="https://www.youtube.com/embed/5teMmFK1_FY" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe> ## wired(obniz, { clk, cs, din, gnd, vcc}); 1. vcc: 電源のプラスです。 2. gnd: 電源のマイナスです。 3. din: SPIの MOSI ピンです。 4. cs: チップ選択です。 チェーン上に複数繋ぐ場合は1つだけをobnizにつなぎ、残りはこのように接続して下さい。 ![](./wired.png) ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); ``` ## init(width, height) マトリックスを初期化します。 1つのMAX7219が8*8のマトリックスを持っている必要があり、 そのマトリックスが横にどれだけつながっているかを指定します。 2つであれば width = 16, height=8となります。 ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); matrix.init(8*2, 8); ``` ## brightness(value) 明るさで、0~15が指定できます。 ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); matrix.init(8*2, 8); matrix.brightness(7); ``` ## draw(ctx) HTML5のcanvasをそのまま描画します。html上でobnizを使っている場合は `obniz.util.createCanvasContext()` を使うことで、canvasを簡単に生成できます。nodejsの場合はnode-canvasを使うことが出来ます。 あとは、そこに描画し、この関数に渡すと2値化されてディスプレイに表示されます。 ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); matrix.init(8*4, 8); matrix.brightness(7); const ctx = obniz.util.createCanvasContext(matrix.width, matrix.height); ctx.fillStyle = "black"; ctx.fillRect(0, 0, matrix.width, matrix.height); ctx.fillStyle = "white"; ctx.font = "9px sans-serif"; ctx.fillText('Hello World', 0, 7); matrix.draw(ctx); ``` ## clear() すべてを消去します。 ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); matrix.init(8*4, 8); matrix.clear(); ``` ## test() MAX7219にあるテストコマンドを利用します。 最後に表示されていたものが表示されます。 ```Javascript // Javascript Example const matrix = obniz.wired("MatrixLED_MAX7219", { clk:0, cs:1, din:2, gnd:3, vcc:4}); matrix.init(8*4, 8); matrix.test(); ```