dポイントプレゼントキャンペーン実施中!

16×2キャラクタLCDへの文字表示について質問です.
CGRAMアドレス:0xffの塗りつぶしの四角を表示させたいのですが,
'■'が'β'になって表示されてしまいます.
どのような方法をとれば■が表示できるでしょうか.

開発言語はC,環境はMPLAB X IDE,XC8コンパイラ.
対象デバイスはPIC18F4553です.

御回答の程よろしくお願いいたします.

A 回答 (3件)

まず本当に文字コード0xFFが「■」なのか疑問です。


LCDの文字コードは機種によって違いがあります。
例えばこちらのものは0xFFは「 ̄」です。
http://akizukidenshi.com/catalog/g/gP-06669/
他に、英語版では「ÿ」になっていると思います。

それを見る意味でも、0x00~0xFFまで全ての文字を表示してみるとよいでしょう。

なお、(一般的なのLCDでは)CGRAMではなくCGROMですね。RAMなのは最初の16個だけです。
    • good
    • 0

とりあえず他の文字が表示できるか、0x00~0xFFまで全ての文字を表示してみて下さい



0xFFだけ表示がおかしいのであれば、データを直接LCDへ出力する必要があります(C言語ライブラリを使用しない)
またコード0xFFはバックスラッシュを表します”\”

参考URL:http://www.kallanet.com/UPLOAD/about_LCD.pdf
    • good
    • 0

回路の間違いか、プログラムのミス、通信タイミングミス等と思います。

質問者ご本人にしかわからないと思います。

検証法としては、0x20から0xffまで一つずつ増やしながら順番に表示してみて、どこまで正常に表示されるか確かめてみてはいかがでしょうか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!