回答編集履歴
1
追記
test
CHANGED
@@ -20,3 +20,38 @@
|
|
20
20
|
|
21
21
|
まぁ取りあえず、回路とスケッチを上述の内容で書き換えてください。
|
22
22
|
|
23
|
+
--------------------------------------------------
|
24
|
+
≪追記≫
|
25
|
+
|
26
|
+
①まず、使われていない「/そのまま/」と書いてあるあたりの変数を消します。
|
27
|
+
(残しても問題はないですけど)
|
28
|
+
|
29
|
+
②setup関数から見ていくとまず、lcd_init関数ですけど、一番最初以外にも2か所あります。
|
30
|
+
lcdは起動後に一度だけ初期化すれば良いですから、2番目と3番目(loop関数内)を消します。
|
31
|
+
|
32
|
+
③lcd_init関数内で、なぜか digitalWrite(rs,LOW);が入り込んでいる。これは不要。
|
33
|
+
その代わり?に必要なdelayが無い。
|
34
|
+
lcd_write8(0x23);あたりも、Eピンはクロックピン相当なので0x「2」3の部分は不要
|
35
|
+
その他の操作コマンドも正しいのかは確認していないけど、最期は画面クリア0x01にした方が良い。
|
36
|
+
|
37
|
+
④lcd_write8関数で、Eピンの操作だけども
|
38
|
+
RSを操作して、EピンをHIGHです。つまり、EをHIGHにしてからRSを操作しても遅いです。
|
39
|
+
|
40
|
+
⑤setup関数内の
|
41
|
+
lcd_locate(0,0);
|
42
|
+
lcd_prints(a1);
|
43
|
+
lcd_locate(1,0);
|
44
|
+
lcd_prints(a2);
|
45
|
+
|
46
|
+
は指定位置の間違いでしょう。x,yですから2番目は2行目の先頭の0,1では?
|
47
|
+
|
48
|
+
⑥loop関数内の処理全体はこれがあると変に文字が消えます。
|
49
|
+
__llo
|
50
|
+
としたいのでしょうか?
|
51
|
+
消すのならちゃんと消さないとオカシイですよ。
|
52
|
+
|
53
|
+
※細かい所は上記以外にも修正しましたけど、表示させる所までは書き換えておきました。
|
54
|
+
https://www.tinkercad.com/things/jpwEI8twTNi
|
55
|
+
|
56
|
+
|
57
|
+
|