プログラミング素人のはてなブログ

プログラミングも電気回路も専門外の技術屋の末端が勉強したことや作品をアウトプットするブログ。コードに間違いなど見つけられたら、気軽にコメントください。 C#、Python3、ラズパイなど。

Arduinoで電光掲示板をつくった

Arduinoで駅の文字が流れる電光掲示板風を作ってみました。

www.youtube.com

ハードウェアと回路図

f:id:s51517765:20200828125302j:plain

f:id:s51517765:20200828125027p:plain

LCDは1602というものです。

可変抵抗はLCDのバックライトの明るさ調整用で、私の場合は約50%でちょうどいい感じでした。
可変抵抗でなく、5kΩ、5kΩの決め打ちでもOKです。

ソースコード

サンプルコードを参考に、LiquidCrystal.hをインクルードし、初期化します。

#include <LiquidCrystal.h>
lcd.begin(displayWidth, 2);

setCursorで開始位置を指定し、lcd.print(string);で文字列を表示します。

    lcd.setCursor(0, 0);
    lcd.print(string0);
    lcd.setCursor(0, 1);
    lcd.print(displayString);

文字列はステップごとに1文字ずつ変更していくことで、流れるように見えます。
↓はhttps://s51517765.hatenadiary.jp/を表示させるときのイメージです。
f:id:s51517765:20200828130433p:plain

この表示文字列の生成はプログラミングコンテストの文字列系で出てきそうな問題です。
最初、アルゴリズムがうまく作れなくて配列外参照をして文字化けが出ました。
f:id:s51517765:20200828130929p:plain

github.com