Arduinoで遊ぼう - 秋月電子32x16LEDドットマトリクス(3)
Posted by arms22 on 2009年02月23日

以前、ここで公開した秋月のLEDドットマトリクス用のライブラリについて幾つか質問をいただいたので、FAQとして公開します。
Q1.任意の画像をLEDドットマトリクスに表示させるには一体どうしたらよいのでしょうか?
次の図はLEDドットマトリクスに表示するデータのフォーマットを表しています。
1バイトのデータが縦1ドット、横8ドットを表しています。1ビットがLEDドットマトリクスの1ドットに対応しています。上記データは縦8ドット、横8ドット分のデータで'A'という文字を表しています。表示データ作成用にエクセルシートを用意しました。ご利用ください。
マトリクスデータ生成用シート.xlshttp://xfind.hp.infoseek.co.jp/electric/arduino/matrix_data_gene.zip
Q2.任意の座標に表示データを転送することは可能ですか?
現在のbitBlt関数は8の倍数以外のX座標への転送をサポートしていません。Y座標については任意の座標への転送は可能です。しかしクリッピング処理は行っていない為、画面外への転送が発生する場合、ユーザ側でクリッピング処理を行ってください。
Q3.LEDドットマトリクスを2枚カスケード接続して、64x16のディスプレイとして表示できますか?
AkiMatrix.hの次のマクロをカスケード接続するLEDドットマトリクスの数に応じて変更してください。例えば3枚カスケード接続する場合、次のようにマクロの値を変えます。
#define AKI_MATRIX_CASCADE (3)
最後にAkiMatrixのバージョン005を公開しました。
https://github.com/arms22/arms22/tree/master/AkiMatrix
002からの主な変更点は次の通りです。
- hsync関数の高速化
- Arduino 013でコンパイルできない問題に対応
- シフトクロック速度設定マクロ(AKI_MATRIX_tCLOCK)の追加
Arduinoで遊ぼう - LEDドットマトリクス(2)
http://arms22.blog91.fc2.com/blog-entry-210.html
Arduinoで遊ぼう - LEDドットマトリクス
http://arms22.blog91.fc2.com/blog-entry-206.html
Arduinoをはじめようキット
posted with amazlet at 10.02.02
スイッチサイエンス
売り上げランキング: 2431
売り上げランキング: 2431
おすすめ度の平均: 



Ads by Google
21 Comments
はじめまして、こんにちは。
一年も前の記事にコメントすることを許してください。
ライブラリを使わさせてもらいまして、点灯させることができました。
次のステップとして横にスクロールしていくようなものを作ってみようとしたのですが、前のフレームに点灯させたものを消すことができません。
初心者ながらに考えてみましたがわからなかったのでもしご助言をいただけたら嬉しいです。
一年も前の記事にコメントすることを許してください。
ライブラリを使わさせてもらいまして、点灯させることができました。
次のステップとして横にスクロールしていくようなものを作ってみようとしたのですが、前のフレームに点灯させたものを消すことができません。
初心者ながらに考えてみましたがわからなかったのでもしご助言をいただけたら嬉しいです。
clearDisplayで全画面クリアできます。
もしくは前の画面部分に空白を上書きすればいいと思います。
もしくは前の画面部分に空白を上書きすればいいと思います。
初めまして、上の方と同じく過去の記事にコメント失礼します。
この度卒業研究の作品に秋月の32×16LEDマトリクス をArduino制御で使用したく
AkiMatrixバージョン005のライブラリを使用させて頂こうと思ったのですが、
infoseekのHPサービス終了によりリンク先からダウンロードできませんでした。
もしよろしければ制御ライブラリをダウンロードさせて頂けないでしょうか。
お手数ですがご返答よろしくお願いいたします。
この度卒業研究の作品に秋月の32×16LEDマトリクス をArduino制御で使用したく
AkiMatrixバージョン005のライブラリを使用させて頂こうと思ったのですが、
infoseekのHPサービス終了によりリンク先からダウンロードできませんでした。
もしよろしければ制御ライブラリをダウンロードさせて頂けないでしょうか。
お手数ですがご返答よろしくお願いいたします。
ライブラリをアップロードし直しました。
このコメントは管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
Makeに出展するときだけ動かしていますよ。
arduino UNO R3と公開頂いていますライブラリを用いて16*32LEDマトリックスを点灯させようとしています。
ただ、公開頂いているプログラムより、使用するピンを変更したいと考えています。
pin 0: sin1 (row) -> A0
pin 1: sin2 (led1) -> A1
pin 2: sin3 (led2) -> A2
pin 3: clk -> A3
pin 4: latch (inverted) -> A4
pin 5: strob -> 2
上記でAkiMatrix()を使用しますと、引数がint型ではないためエラーが発生してしまうようです。
(#define 100 A0 としても変更後が文字では無いため、コンパイルエラーになります。)
そこで、引数が文字でも使えるよう、改善をお願いいたしたいと思います。また、もし上記のピン配列で問題があるようでしたらご指摘頂きたいと思います。
お手数をお掛けしますが、ご検討よろしくお願い致します。
ただ、公開頂いているプログラムより、使用するピンを変更したいと考えています。
pin 0: sin1 (row) -> A0
pin 1: sin2 (led1) -> A1
pin 2: sin3 (led2) -> A2
pin 3: clk -> A3
pin 4: latch (inverted) -> A4
pin 5: strob -> 2
上記でAkiMatrix()を使用しますと、引数がint型ではないためエラーが発生してしまうようです。
(#define 100 A0 としても変更後が文字では無いため、コンパイルエラーになります。)
そこで、引数が文字でも使えるよう、改善をお願いいたしたいと思います。また、もし上記のピン配列で問題があるようでしたらご指摘頂きたいと思います。
お手数をお掛けしますが、ご検討よろしくお願い致します。
お世話になります。上に書き込みをさせて頂きましたが、その後いろいろ試した結果、Akimatrix.cppに#include <arduino.h>を追記したところ、無事にコンパイルを通りました。
コンパイルエラーをよくよく見てみますと、「OUTPUTがわからない」といった内容でした。なお、IDEのVerは1.03です。
以上、取り急ぎご連絡させてい頂きます。
コンパイルエラーをよくよく見てみますと、「OUTPUTがわからない」といった内容でした。なお、IDEのVerは1.03です。
以上、取り急ぎご連絡させてい頂きます。
複数枚数の秋月のLEDドットマトリクスをつなげた場合のmyMatrix.write()に関して質問があります。
LEDドットマトリックスのつなげ方として CN2AまたはCN2B と CN1AまたはCN2B をつなげます。
自分の環境ではLEDドットマトリクス3枚を
・1枚目と2枚目を CN2B と CN1B で
・2枚目と3枚目を CN2A と CN1B で
接続しました。
上記の状態で「Arduinoで遊ぼう - 秋月電子32x16LEDドットマトリクス(2)」にあるスケッチを実行した結果、上下左右1ドット間隔で表示されました。(市松模様ではなく、1行、1列間隔で表示されます)
具体的には
101010101010・・・
000000000000・・・
101010101010・・・
000000000000・・・
といった感じです。1枚目と2枚目のみでは正しく市松模様で表示されます。
そこで質問ですが、myMatrix.write()を使用する場合は
CN1AとCN2A または
CN1BとCN2B
いずれかの接続方法にする必要があるのでしょうか。
文章が長くなり申し訳ありませんが、ご回答よろしくお願い致します。
LEDドットマトリックスのつなげ方として CN2AまたはCN2B と CN1AまたはCN2B をつなげます。
自分の環境ではLEDドットマトリクス3枚を
・1枚目と2枚目を CN2B と CN1B で
・2枚目と3枚目を CN2A と CN1B で
接続しました。
上記の状態で「Arduinoで遊ぼう - 秋月電子32x16LEDドットマトリクス(2)」にあるスケッチを実行した結果、上下左右1ドット間隔で表示されました。(市松模様ではなく、1行、1列間隔で表示されます)
具体的には
101010101010・・・
000000000000・・・
101010101010・・・
000000000000・・・
といった感じです。1枚目と2枚目のみでは正しく市松模様で表示されます。
そこで質問ですが、myMatrix.write()を使用する場合は
CN1AとCN2A または
CN1BとCN2B
いずれかの接続方法にする必要があるのでしょうか。
文章が長くなり申し訳ありませんが、ご回答よろしくお願い致します。
接続枚数を3枚にしているため、AkiMatrix.hは
#define AKI_MATRIX_CASCADE (3)
へと(1)から(3)へ変更しています。
#define AKI_MATRIX_CASCADE (3)
へと(1)から(3)へ変更しています。
1枚目と2枚目と同じ接続方法でいいと思います。
お世話になります。
夜分のご回答、ありがとうございました。
夜分のご回答、ありがとうございました。
Arduino IDE 1.65にてコンパイルが通らなかったので,
https://github.com/arduino/Arduino/wiki/1.6-Frequently-Asked-Questions
http://blog.goo.ne.jp/souichi-kikaizikake/e/f4861f3efc3a0bdf533a9283ec010b2e
とかを参考に,
1点目
AkiMatrix.hの27行目あたりに
#ifndef prog_uint8_t
#define prog_uint8_t uint8_t
#endif
を追加,
2点目,AkiMatrix.cppの10行目の
#include "WProgram.h"
を
#include "Arduino.h"
に変更したら通りました.
ライブラリ大変参考になりました.ありがとうございます.
https://github.com/arduino/Arduino/wiki/1.6-Frequently-Asked-Questions
http://blog.goo.ne.jp/souichi-kikaizikake/e/f4861f3efc3a0bdf533a9283ec010b2e
とかを参考に,
1点目
AkiMatrix.hの27行目あたりに
#ifndef prog_uint8_t
#define prog_uint8_t uint8_t
#endif
を追加,
2点目,AkiMatrix.cppの10行目の
#include "WProgram.h"
を
#include "Arduino.h"
に変更したら通りました.
ライブラリ大変参考になりました.ありがとうございます.
はじめまして。
こちらサイトを参考に回路を製作しました。そこで任意の画像を表示させようと考えています。リンクが切れているので、よろしければ マトリクスデータ作成用.xls を再度貼っていただけないでしょうか。
こちらサイトを参考に回路を製作しました。そこで任意の画像を表示させようと考えています。リンクが切れているので、よろしければ マトリクスデータ作成用.xls を再度貼っていただけないでしょうか。
いつも楽しく拝見させていただいております。
下記のファイルですがダウンロードできないようです。
お手すきの際に修正いただけますでしょうか。
http://dl.dropbox.com/u/14188987/isweb/arduino/AkiMatrix005.zip
下記のファイルですがダウンロードできないようです。
お手すきの際に修正いただけますでしょうか。
http://dl.dropbox.com/u/14188987/isweb/arduino/AkiMatrix005.zip
ここから必要なファイルをDLしてください。
https://github.com/arms22/arms22/tree/master/AkiMatrix
https://github.com/arms22/arms22/tree/master/AkiMatrix
どうもありがとうございます!
このコメントは管理者の承認待ちです
Leave a reply
該当の記事は見つかりませんでした。