【ラズパイ】【いろいろ計測モニター】時計表示を大きくする。

フォントをもっとシンプルなものに変更しました。

複雑なフォントにすると、データ化がめんどくさい。

こういうシンプルなデザインにした方が、数字表示用8LEDディスプレイみたいで(厳密には違うが)データ化が1時間程度で完了しました。

さらに、横幅も少し小さくして、時間と分のセパレータ「:」も入れることが出来ました。

このサイズだったらかなり見やすいでしょ。

    [ #1
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        ],
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
        ],
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
        ],
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
        ],
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
        ],
        [
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        ]
    ],

データもこんな感じなので(というか、縦に線を引いているだけなので)サクッと作れました。

具体的にはgitHubのソースを見て欲しい。

https://github.com/takishita2nd/RaspiDisplayMonitor

表示する時刻データを、

GLCD.drowLargeClock(datetime.datetime.now().strftime('%H:%M'))

こんな感じで文字列化して、

def drowLargeClock(time):
    position = 0
    val = 0
    for s in time:
        if s == ':':
            val = 10
        else:
            val = int(s)

        for page in range(6):
            for addr in range(24):
                if position + addr < 64:
                    SelectIC(1)
                    SetPage(page)
                    SetAddress(position + addr)
                else:
                    SelectIC(2)
                    SetPage(page)
                    SetAddress(position + addr - 64)
                WriteData(LFont.Array[val][page][addr])
        position += addr

このように処理させることで、大きいフォントで時刻表示できます。

これでさらに使い物になりましたな。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください