質問編集履歴

3

誤字修正

2020/07/24 00:05

投稿

koh_cafe
koh_cafe

スコア3

test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  追記
18
18
 
19
- マルチポストを推奨をしていない旨を知らずに下記のリンクに同じ質問をしてしまいした。
19
+ マルチポストを推奨をしていない旨を知らずに下記のリンクに同じ質問をしてしまいした。
20
20
 
21
21
  https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12228794132
22
22
 

2

マルチポストを推奨をしていない旨についての追記をしました。

2020/07/24 00:05

投稿

koh_cafe
koh_cafe

スコア3

test CHANGED
File without changes
test CHANGED
@@ -11,6 +11,16 @@
11
11
  データ型の問題の様な気がするのですが、あれこれ試しても上手くいきませんでした。
12
12
 
13
13
  御教授のほどお願い致します。
14
+
15
+
16
+
17
+ 追記
18
+
19
+ マルチポストを推奨をしていない旨を知らずに下記のリンクに同じ質問をしてしまいしまた。
20
+
21
+ https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12228794132
22
+
23
+ まだ問題は解決はしていないのですが関連した質問などを参考にしてやってみます。
14
24
 
15
25
 
16
26
 

1

マークダウン記法でソースコードを貼付けし直しました

2020/07/24 00:04

投稿

koh_cafe
koh_cafe

スコア3

test CHANGED
File without changes
test CHANGED
@@ -14,128 +14,92 @@
14
14
 
15
15
 
16
16
 
17
+ ```Aruduino IDE
18
+
17
19
  //IOのピン番号
18
20
 
19
21
  const int DIN_PIN = 7;
20
22
 
21
23
  const int LED_PIN = 6;
22
24
 
23
-
25
+
24
26
 
25
27
  //入力された文字を入れる変数
26
28
 
27
- char dat[32]; // 格納用文字列
29
+ char dat[32]; // 格納用文字列
28
30
 
29
- int count = 0; // 文字数のカウンタ
31
+ int count = 0; // 文字数のカウンタ
30
32
 
31
-
33
+
32
34
 
33
35
  void setup(){
34
36
 
35
- pinMode( LED_PIN, OUTPUT);
37
+ pinMode( LED_PIN, OUTPUT);
36
38
 
37
- pinMode( DIN_PIN, INPUT_PULLUP );
39
+ pinMode( DIN_PIN, INPUT_PULLUP );
38
40
 
39
- Serial.begin(9600);
41
+ Serial.begin(9600);
40
42
 
41
43
  }
42
44
 
43
45
  void loop(){
44
46
 
45
- //文字列を読み込む
47
+ //文字列を読み込む
46
48
 
47
- if (Serial.available()) {
49
+ Serial.flush();
48
50
 
49
- dat[count] = Serial.read();
51
+ if (Serial.available()) {
50
52
 
51
- if (count > 30 || dat[count] == '=') { // 文字数が既定の個数を超えた場合、又は終了文字を受信した場合
53
+ dat[count] = Serial.read();
52
54
 
53
- dat[count] = '\0'; // 末尾に文字を入れる
55
+ if (count > 30 || dat[count] == '=') { // 文字数が既定の個数を超えた場合、又は文字を受信した場合
54
56
 
55
- count = 0; // 文字カウンタリセット
57
+ dat[count] = '\0'; // 末尾に終端文字を入れる
56
58
 
57
- Serial.println(dat);
59
+ count = 0; // 文字カウンタをリセット
58
60
 
59
- } else {
61
+ Serial.println(dat);
60
62
 
63
+ } else {
64
+
61
- count++; // 文字カウンタに 1 加算
65
+ count++; // 文字カウンタに 1 加算
66
+
67
+ }
68
+
69
+ }
70
+
71
+ //出力
72
+
73
+ //読み込んだ文字が「on01」のときシリアルモニタに「ON」をさせ、LEDを点灯させる
74
+
75
+ if(dat == 'on01'){
76
+
77
+ digitalWrite(LED_PIN, HIGH);
78
+
79
+ //LEDを点灯させた後okを返信
80
+
81
+ Serial.print("ok\n");
82
+
83
+ Serial.flush();
84
+
85
+ }
86
+
87
+
88
+
89
+ //読み込んだ文字が「off01」のときシリアルモニタに「OFF」をさせ、LEDを消灯する
90
+
91
+ if(dat == 'off01'){
92
+
93
+ digitalWrite(LED_PIN, LOW);
94
+
95
+ //LEDを消灯させた後okを返信
96
+
97
+ Serial.print("ok\n");
98
+
99
+ Serial.flush();
100
+
101
+ }
62
102
 
63
103
  }
64
104
 
65
- }
66
-
67
- //出力
68
-
69
- //読み込んだ文字が「on01」のときシリアルモニタに「ON」をさせ、LEDを点灯させる
70
-
71
- if(dat == "on01"){
72
-
73
- digitalWrite(LED_PIN, HIGH);
74
-
75
- //LEDを点灯させた後okを返信
76
-
77
- Serial.print("ok\n");
78
-
79
- Serial.flush();
80
-
81
- }
82
-
83
-
84
-
85
- //読み込んだ文字が「off01」のときシリアルモニタに「OFF」をさせ、LEDを消灯する
86
-
87
- if(dat == 'off01'){
88
-
89
- digitalWrite(LED_PIN, LOW);
90
-
91
- //LEDを消灯させた後okを返信
92
-
93
- Serial.print("ok\n");
94
-
95
- Serial.flush();
96
-
97
- }
98
-
99
-
100
-
101
- //入力確認
102
-
103
- //読み込んだ文字が「in01」のとき
104
-
105
- if(dat == 'in01'){
106
-
107
- //DIN_PINの状態をon/offで返信
108
-
109
- int value;
110
-
111
- value = digitalRead( DIN_PIN );
112
-
113
- if ( value == HIGH ){ //HIGHがOFF,LOWがON
114
-
115
- Serial.print("off\n");
116
-
117
- Serial.flush();
118
-
119
- }else{
105
+ ```
120
-
121
- Serial.print("on\n");
122
-
123
- Serial.flush();
124
-
125
- }
126
-
127
- if(DIN_PIN == 1){
128
-
129
- Serial.print("on\n");
130
-
131
- }
132
-
133
- if(DIN_PIN == 0){
134
-
135
- Serial.print("off\n");
136
-
137
- }
138
-
139
- }
140
-
141
- }