SevenPlumBar(7PlumBar)

カタカナでマーサ(となりの芝生)

ポン菓子屋店頭用電光掲示板


電光掲示板(LED 64×16)

 

f:id:SevenPlumBar:20190105230013j:plain

スクロール中でブレていますが…

SODIALのLEDモジュール(8×8×4連)を4個連結して、64×16にしてArduinoDUEでコントロールさせています
「たま吉さん」のスケッチ等を参考にさせていただき(感謝!)、SODIALのモジュールはLEDユニットの並びが左右逆のようなので、少し変更して動かしています

64×16での表示は出来たので、時計と温度・湿度表示をできるようにしたら(夏の屋外営業では必須?)ケースに入れようかと思っています

ちなみに、この表示で5V入力での消費電流は約200mAなので、6000mAh程度のモバイルバッテリーで、1日はもちそうです

 

変更箇所1 SDカード接続ピンアサイ

//#define MOSI_SD 11 // SDカードのMOISへ接続
//#define MISO_SD 12 // SDカードのMISOへ接続
//#define CLK_SD 13 // SDカードのCLKへ接続

#define MOSI_SD 75 // SDカードのMOSIへ接続@DUE
#define MISO_SD 74 // SDカードのMISOへ接続@DUE
#define CLK_SD 76 // SDカードのCLKへ接続@DUE

 

変更箇所2 MAX7219接続数、表示エリアの横ドット数指定

// #define SCREENS 8 // MAX7219カスケード接続数
#define SCREENS 16 // MAX7219カスケード接続数

// #define SC_WIDTH 32 // マトリック表示横ドット数
#define SC_WIDTH 64 // マトリック表示横ドット数

 

変更箇所3 フレームバッファからMAX7219バッファへの変換部

// for (uint8_t i=0; i < 8; i++) {
// memcpy(&ptr[i*8],&fbuf[i*4+32], 4);
// memcpy(&ptr[i*8+4],&fbuf[i*4], 4);
// }

for (uint8_t i=0; i < 8; i++) { // each MAX7219 has 8 rows
memcpy(&ptr[i*SCREENS],&fbuf[i*SC_WIDTH/8+SC_WIDTH+7], 1);
memcpy(&ptr[i*SCREENS+1],&fbuf[i*SC_WIDTH/8+SC_WIDTH+6], 1);
memcpy(&ptr[i*SCREENS+2],&fbuf[i*SC_WIDTH/8+SC_WIDTH+5], 1);
memcpy(&ptr[i*SCREENS+3],&fbuf[i*SC_WIDTH/8+SC_WIDTH+4], 1);
memcpy(&ptr[i*SCREENS+4],&fbuf[i*SC_WIDTH/8+SC_WIDTH+3], 1);
memcpy(&ptr[i*SCREENS+5],&fbuf[i*SC_WIDTH/8+SC_WIDTH+2], 1);
memcpy(&ptr[i*SCREENS+6],&fbuf[i*SC_WIDTH/8+SC_WIDTH+1], 1);
memcpy(&ptr[i*SCREENS+7],&fbuf[i*SC_WIDTH/8+SC_WIDTH], 1);
memcpy(&ptr[i*SCREENS+8],&fbuf[i*SC_WIDTH/8+7], 1);
memcpy(&ptr[i*SCREENS+9],&fbuf[i*SC_WIDTH/8+6], 1);
memcpy(&ptr[i*SCREENS+10],&fbuf[i*SC_WIDTH/8+5], 1);
memcpy(&ptr[i*SCREENS+11],&fbuf[i*SC_WIDTH/8+4], 1);
memcpy(&ptr[i*SCREENS+12],&fbuf[i*SC_WIDTH/8+3], 1);
memcpy(&ptr[i*SCREENS+13],&fbuf[i*SC_WIDTH/8+2], 1);
memcpy(&ptr[i*SCREENS+14],&fbuf[i*SC_WIDTH/8+1], 1);
memcpy(&ptr[i*SCREENS+15],&fbuf[i*SC_WIDTH/8], 1);
}

 

変更箇所4 max7219_matrix.hの中の

//#define MAXSCREENS 8 // 最大接続数

#define MAXSCREENS 16 // 最大接続数

 

nuneno.cocolog-nifty.com

カットしたアクリル材(2セット分)到着(1/9)・・・穴あけ加工前

f:id:SevenPlumBar:20190109213950j:plain

アクリル材入手

完成(1/17)  ArduinoDUE + SODIAL LED ディスプレイモジュール×4

f:id:SevenPlumBar:20190117223041j:plain

Arduinoシールド基板部品表(DUEの背中に乗せた基板)

①I2C接続のRTC:秋月電子 RTC-8564NB をLi電池でバックアップ(275nA)

②I2C接続のOLED:秋月電子 0.96インチ 128×64ドット OLED

③I2C接続の温湿度センサ:秋月電子 AM2322

④プッシュスイッチ×4:秋月電子

Arduinoシールド基板:秋月電子 Arduino用ユニバーサルプロトシールド

⑥3.3V出力 → 5.0V入力 レベル変換IC実装(SN74LS07)

 

メッセージ部分は完成したので、ポン菓子屋に引き渡した

2/24(日)が「今年の初ポン=デビュー日」らしい

行ってらっしゃ~い