LCDを極める!の最近のブログ記事

6 文字が流れるプログラムを製作する
 最後は文字が左から右に流れるプログラムを製作します。文字が移動するプログラムはいろいろな実現方法があると思いますが、その一例として紹介します。

 プログラムの流れですが、
(0) ループは大きく分けて前半のループと後半のループの二つあります。
    前半のループは、最初の文字列がLCDの15列の位置に表示されてから、
    0-15列のすべてに文字が表示されるまでの処理をしています。
    後半のループは、最初の文字列が左端から消えて、15列の位置に空白を表示してから、
  すべての文字が空白になるまでの処理を しています。
(1) LCDの15列の位置(locate(15,0))に、文字列の最初の文字(msg[0])を表示します。
(2) 次に14列の位置に文字列の最初の文字(msg[0])を、15列の位置に文字列の2番目の文字(msg[1])を表示します。
(3) 前半のループが終了するとLCDの0-15列の位置に、msg[0]-msg[15]が表示されます。
    for(j)のループは、文字を左にシフトする回数分ループします。
    for(k)のループはLCDの0-15列に文字を表示するためのループです。
    後半のループも似たような処理をしています。

 LCDでいろいろなプログラムを作成していると、図8の文字コード表に載っていない文字や記号を表示したくなることがあると思います。ここでは、自分で作成した文字や記号をLCDのCGRAMに登録し、表示する方法を紹介します。
 ここでは、LCDに「えれきじゃっく!」とひらがなで表示してみます。

4 温度を測定しLCDに表示する
 次に温度を測定し、LCDに表示してみます。温度センサにはLM35を使います(図10)。LM35は簡単に温度を測定できるため、インターネットで多くの利用事例が紹介されています。

s図10_LM35ピン配置.jpg
図10 LM35ピン配置

 使い方も簡単で 4~20[V]の電源電圧を加えるだけで 2℃ ~ 150℃までの温度が測定できます。しかも、1℃温度が上昇するごとに+10mVの電圧が出力されるので、動作が確認しやすくとても使い使いやすいセンサです。
 たとえば、室温25.9℃をこのセンサで測定すると0.259[V]が出力されます(図11)。今回はこの温度センサを使って室温を測定し、LCDに表示してみたいと思います。

s図11_LM35の動作確認.jpg
図11 LM35の動作確認

3 LCDに文字を表示する
 それでは、LCDに文字を表示してみましょう。
 まず最初に新しいプログラムを作成してください。ここでは、プログラム名を[LCD_chara]としました。今回はTextLCDライブラリを使ってプログラムを作成するので、このライブラリを追加します。
 ライブラリの追加方法ですが、後で自分で作成した文字や記号を表示(外字を表示)するプログラムを作成します。このときに、TextLCDライブラリを変更する必要があるので、今までとちょっと違った方法でライブラリを追加します。

 まず、図2のようにプログラム名を右クリックし、新しいフォルダを作成してください。フォルダ名はText_LCDとします。すると、図3の赤いアンダラインのようにプログラム名の階層の下に新しいフォルダ(TextLCD)が作成されます。

s図2_フォルダの追加.jpg
図2 フォルダの追加

 今回は、StarBoard Orangeに付属しているLCDを使ってプログラムを作成していきます。 LCDを使用すれば、いろいろな情報が表示できるようになりとても便利です。
 たとえば、以下のような利用が考えられます。
  • mbedに接続したセンサの値を表示する。
  • mbedのネットワーク情報など、実行時のmbedの状態を表示する。
  • 時計やゲームなどLCDを利用したシステムの開発
  • プログラム製作時のデバッグ
 StarBoard Orangeには16×2のキャラクタLCDが付属しています。今回はこのLCDを使ってLCDの使い方をマスタしましょう。





2010年12月: 月別アーカイブ

カテゴリ


Copyright (C) 2006-2015 CQ Publishing Co.,Ltd. All Rights Reserved.