ラズパイ pi4j でJava OLED アナログ時計
公開日:2021/9/25
安価に出回っている有機ELディスプレイのSSD1306(一枚500円程度)を使ってアナログ時計を作ってみました。作るといっても殆どプログラミングです
通信方法はI2Cで前回に引き続きpi4jを用いたJavaプログラミングです。アナログ時計に関しては 大半がArduino用のものかPythonで、Javaに関してはこれといったサンプルは見つからなかったです。
アナログ時計のプログラミングはラズパイの場合、JSTから時間をJavaで呼び出せばいいので別途時計モジュールは必要ありません。ただしネットとはつながっています。 液晶のグラフィック表示はピクセル指定なので、大変手間がかかりますが、キーボードからの打ち込みが早くなります。ショートカットキーは覚えねばなりません。pi4jからピクセル表示をI2Cで送るライブラリーは見つかったので、それを転用して、アナログ時計のアルゴリズムを仕込んだわけです。
スムーズに表示するのはそれなりに工夫が必要で、アナログ時計には脱針機構が無いと、秒針の表示はイマイチになりますが、秒が変わったら、ループを使った停止から抜け出して再描画をするプログラムにすればよい。
文字盤をつけて、縦型にして腕時計風の別バージョンも作ってみました。わかるかなーーー
Javaはプログラミングが感覚的にはCやPythonより面白く、かつコンパイルして実行するプログラムで、広く普及しているデファクト スタンダード言語なので、やはり心得ておきたいものです。
いいね!
10人がいいね!と言っています。