05/04/21 19:09:29 93pVmXRd
ネタで落ちたところで豚切りスマソ。
16F373に秋月の16×2のLCDをつないで文字を出そうとしていますが、
文字化けしてヘンテコリンな文字列が出てきます。
4ビットモードです。
文字コード表で追うと、どうやら 0x** と送ったつもりの
下位4ビットが B'1111' に化けて 0x*F となっているようです。
困ったことに(?!)まともに表示するときもあります。
ということは、初期化の手順やデータを送る手順に間違いはないと思われます。
ハンダ付け不良を真っ先に疑いましたが、どうも違うようです。
化けるときは送る2行の文字列の全てが化けます。
で、Home clr を送ってから同じ文字列を送るとまともに表示したりします。
まともに表示するときは、2行の文字列全てがまともに表示されます。
電源を入り切りしてリセットしたときは必ず化けます。
2行目の先頭を示すインストラクションも化けているのでしょか、カーソルがどこかに
飛んでゆきます。
2~3秒のディレイを挟んでから完全に安定した頃を見計らって初期化→文字列送信
をしてもだめです。
MCLRをGNDに落としてリセットすると、50%ぐらいの確立でまともに表示します。
電源を入り切りしても、Home clr 後の2回目の送信だとまともに表示します。
Home clr のインストラクションは化けないということになります。
なしてだべさ?