p4 ken
/
LED_Matrix_Japanese_Scroll
LT-5016M1を74HC595で制御します。文字スクロールなどの参考にどうぞ。
制作の過程はNotebookに書いています。
Diff: main.cpp
- Revision:
- 37:a4f0801ded23
- Parent:
- 36:cd90267b5a27
--- a/main.cpp Thu Mar 09 10:54:16 2017 +0000 +++ b/main.cpp Thu Mar 09 10:55:28 2017 +0000 @@ -82,8 +82,8 @@ {0,0,0,0,0,0,0,0,0,128,0,7,0,0,0,8,0,0,0,0,0,0,0,0,4,4,7,7,254,254,127,127,124,124,2,2,128,128,0,0,0,0,0,0}}; char scan = 16; // 点灯中の行 -int round = 0; // スキャンを何周したか -int scroll = 0; // 左スクロールした量 +//int round = 0; // スキャンを何周したか +//int scroll = 0; // 左スクロールした量 char speed = 10; // スクロール速度 void receive() { // シリアル受信割り込み @@ -109,10 +109,10 @@ while(1) { // 行選択 scan++; // 一行進む - if(scan == 17+0) { // 16行目の次 + if(scan == 17+10) { // 16行目の次 SER = 0; // 点灯 scan = 1; // 1行目に戻る - round++; // スキャンが1周した +// round++; // スキャンが1周した } else if(scan == 2) { // 2行目 SER = 1; // 消灯 } @@ -129,8 +129,10 @@ p = pattern3[y][x+(t/8/speed*2)] >> ( (t/speed)%8); p += pattern3[y][x+(t/8/speed*2)+2] << (8-(t/speed)%8); spi.write(p); + } else { + spi.write(0); //消灯 + //spi.write(pattern4[scan-1][4*11-1-i%(4*11)]); } -// spi.write(0); //消灯 // if(round < 500) { // spi.write(pattern1[scan-1][8-1-i%8]); // } else if(round < 1000) { @@ -142,13 +144,13 @@ } // スクロール - if(round > speed) { // スクロール速度 - scroll++; // 1ドットスクロールする - round = 0; // スキャン周回カウントリセット - } - if(scroll > 200) { // スクロール幅 - scroll = 0; // スクロール数リセット - } +// if(round > speed) { // スクロール速度 +// scroll++; // 1ドットスクロールする +// round = 0; // スキャン周回カウントリセット +// } +// if(scroll > 200) { // スクロール幅 +// scroll = 0; // スクロール数リセット +// } RCK = 0; CLK = 0;