- 締切済み
8×8ドットマトリクスLED表示について
ForCy-USBのプログラミング http://www.recursion.jp/product/forcyusb/manual.pdf ForCy-USBを使って8×8のドットマトリクスLEDを一つ一つ点灯させたいのですがやり方が分かりません。(64個のLEDを任意に点灯)サイトの情報ではほとんどがc言語のプログラムなので質問させていただきました。 0xff 0x24 =sfr// ポートB を出力 0x0f 0x27 =sfr// ポートC 下位4bit を出力 0xfa 0x2a =sfr// ポートD 上位4bit を出力 :init ;scan [8]led 0 0x25 =sfr scan ++ 7 & =scan 1 scan << ~ dup 0x28 =sfr 0xf0 & 0x2b =sfr scan led 0x25 =sfr @c :main ↑(このようなプログラミングです) 例えば、斜め線を作るプログラムを作成していただけませんか。 ○○○○○○○● ○○○○○○●○ ○○○○○●○○ ○○○○●○○○ ○○○●○○○○ ○○●○○○○○ ○●○○○○○○ ●○○○○○○○ ____________________________________________ 0xff 0x24 =sfr // DDRB 0x0f 0x27 =sfr // DDRC 0xfa 0x2a =sfr // DDRD :ポート設定 ;行 [8]内容 0 0x25 =sfr // いったん消灯 行 ++ 7 & =行 // 表示行を巡回移動 1 行 << ~ // 対応する行のビットを0 dup 0x0f & 0x30 | 0x28 =sfr // SW1,2 はプルアップ 0xf0 & 0x2b =sfr 行 内容 0x25 =sfr // その行の内容表示 :走査 8 0 { dup 内容 ~ over =内容 ++ } for .. :反転 ポート設定 0 =行 8 0 { 0xff over << over =内容 ++ } for .. { 走査 反転 } interrupt @c . :LED表示 上記サイトの25Pをみてやっています
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- ts3m-ickw
- ベストアンサー率43% (1248/2897)
うわ‥‥これは判りにくい言語だこと。 ; が変数の定義で、変数名に漢字が使えるのか‥‥ってことは、 内容[]に表示したいデータを入れておけば良さそうだね。 0x01 0 =内容 0x02 1 =内容 0x04 2 =内容 0x08 3 =内容 0x10 4 =内容 0x20 5 =内容 0x40 6 =内容 0x80 7 =内容 を「;行 [8]内容」の下にでも入れておいたらいいんじゃない? どっちがMSBだか調べてないけど斜めには表示されるでしょう。
お礼
ありがとうございます。さっそく試してみます