NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

LCDの使い方(AE-AQM1602A)ドット絵で自作文字前編

イメージ 2
ドット文字(8文字使った電車です)
 
 LCD(AE-AQM1602A)では自作文字を最大8文字まで記憶出来ます!
 と言う事で、EXCELを使ったドット絵から16進数のコードに変換するシートを使ってみました

1. ドット絵を作る

 ドット絵を作るにはLCDの使い方(AE-AQM1602A)基礎編の(表2)↓の様にDDRAMData「0x00」~「0x07」(最大8文字が編集可能)を指定して、CGRAMAddress「0x00」~「0x07」それぞれの行に、CGRAMData「0x00」~「0x1F」を指定する事で8行×5列のドット絵を作ります。

 
(表2): 文字コード(DDRAM Data)、CGRAMアドレス、文字パターン(CGRAM Data)の関係
イメージ 3

2. ドット絵をコードに変換!

 一行ずつ2進数のドット絵を16進数に直して行くのも大変なので、EXCELで絵をコードに変換してくれるシートを作ってみました!
 ディスプレイに見立てた8×5セルに「■」を記入して行くだけで16進数に変換してくれます!
 作り方は2-1~2-3の通りです。
 
2-1. 作り方
 〇下の表1を全てコピーし、EXCELのA1セルを選択し貼り付けます。
 〇紫のセルC11に「="0x"&BIN2HEX(IF(C3="",0,1) & IF(D3="",0,1) & IF(E3="",0,1) & IF(F3="",0,1) & IF(G3="",0,1),2)」を貼り付けC18までオートフィル
 
2-2. 使い方
 〇自分が作りたい図になる様に塗潰したい場所に「■」を入力する
 〇各CGRAMアドレス毎に、ドット絵から16進数に変換されたCGRAMデータが8行分完成です
 
  表1:ドット絵から16進数に変換
項目 CGRAM
Address
CGRAMData
b4 b3 b2 b1 b0
ドット絵 0x00      
0x01    
0x02    
0x03
0x04
0x05
0x06  
0x07    
絵を
16進数
に変換
0x00 0x03
0x01 0x07
0x02 0x0D
0x03 0x1F
0x04 0x1F
0x05 0x1F
0x06 0x1D
0x07 0x07
 
2-3. 8文字作成
 EXCELで作った表1を8個並べて8文字作ってみました!
 因みに8両編成の電車をイメージしています
イメージ 1
図1:EXCELで8文字分のコード作成

3. まとめ

 電車8両編成の文字データが完成しました
 このデータを使ってLCD上で電車を走らせられます
 
イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【LCDの使い方】目次に戻る