- 締切済み
LCD表示プログラムで誤表示が解決できない
pic16F84AにS-10551D(秋月)をつないでキャラクタ表示をしようとしていますが50%くらい誤まって表示してしまい解決策が有りません。 プログラムはアッセンブラでMPLAB IDEv8.60を使用 電波新聞社のPICマイコン完全マスターを参考 にしています。データ長4bitのイニシャライズも本やLCD添付資料のままでは表示しませんでした。 LCDパネルの問題かマイコンソフトの問題かの区別も出来ていません。 ちなみにソースを変更してSC1602BS 16*2行のLCDパネルでは正しく表示出来ます。 S-10551Dは16桁1行の一番安いパネルですが使えず捨てるのはくやしいので質問しました。同じような経験をされて解決された事があればアドバイス願います。 最終的にはLCDにバッテリーの充放電量を表示できる充放電コントローラーを作るのが目的です。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
私の場合、8Mhz用のプログラムを、間違って16MHzで動かしたことがありましたが、当然ながら、キャラクタ液晶が一部文字化けしたり、文字をとりこぼしていました。16MHzのクロックに合うようにプログラムを変更して解決しました。 ご質問のケースの場合は、これとは違うと思いますが、LCDの製品の違いによって、多少応答速度がちがうのかもしれません。本に載っているプログラムは、きっちりしすぎているのかもしれませんので、コマンド送信部分の時間を少し長くしてみてください。
- TooManyBugs
- ベストアンサー率27% (1472/5321)
LCDの表示は一筋縄では行きません。 一般にスペックはコントローラーのスペックなのでそのままでは動かないことがよく有ります。 極端に動作を遅くしてやると動くこともあります、動いたら少しずつ早くして行くと良いでしょう。
- koujikuu
- ベストアンサー率43% (429/993)
BUSY をチェックしてみたら、LCDディスプレイはRC発振なのでタイミングにばらつきがあるかも?
お礼
ありがとうございました