質問編集履歴

1

Arduinoのソースコードを追加しました

2017/02/08 09:26

投稿

lefirea
lefirea

スコア17

test CHANGED
File without changes
test CHANGED
@@ -106,6 +106,148 @@
106
106
 
107
107
 
108
108
 
109
+ Arduino側のソースコードは以下のコードです。
110
+
111
+ ```Arduino
112
+
113
+ char data[128];
114
+
115
+ int count=0;
116
+
117
+ float a[4];
118
+
119
+ char*tp;
120
+
121
+ int flag=0;
122
+
123
+ int i;
124
+
125
+
126
+
127
+ void reset_arr();
128
+
129
+
130
+
131
+ void setup() {
132
+
133
+ // put your setup code here, to run once:
134
+
135
+ Serial.begin(9600);
136
+
137
+ memset(data,'\0',128);
138
+
139
+ }
140
+
141
+
142
+
143
+ void loop() {
144
+
145
+ // put your main code here, to run repeatedly:
146
+
147
+ while (Serial.available() > 0){
148
+
149
+ data[count]=Serial.read();
150
+
151
+ if(data[count]=='/' || data[count]=='\0'){
152
+
153
+ data[count]='\0';
154
+
155
+ count=0;
156
+
157
+ break;
158
+
159
+ }
160
+
161
+ else if(count>=127){
162
+
163
+ count=0;
164
+
165
+ break;
166
+
167
+ }
168
+
169
+ else {
170
+
171
+ count++;
172
+
173
+ }
174
+
175
+ delayMicroseconds(1025); //1.025[ms]
176
+
177
+ }
178
+
179
+
180
+
181
+ if( (strstr(data,"start")) != NULL){
182
+
183
+ Serial.println("ok go");
184
+
185
+ flag=1;
186
+
187
+ reset_arr();
188
+
189
+ }
190
+
191
+
192
+
193
+ else if( (strstr(data,",")) != NULL){
194
+
195
+ for(i=0;i<4;i++){
196
+
197
+ if(i==0){
198
+
199
+ a[i]=atof( strtok(data,",") );
200
+
201
+ }
202
+
203
+ else {
204
+
205
+ a[i]=atof( strtok(NULL,",") );
206
+
207
+ }
208
+
209
+ Serial.println(a[i]);
210
+
211
+ }
212
+
213
+
214
+
215
+ Serial.println("end");
216
+
217
+ flag=0;
218
+
219
+ reset_arr();
220
+
221
+ }
222
+
223
+
224
+
225
+ else if(data[0]!='\0'){
226
+
227
+ Serial.println("error");
228
+
229
+ reset_arr();
230
+
231
+ }
232
+
233
+ }
234
+
235
+
236
+
237
+ void reset_arr(){
238
+
239
+ for(i=0;i<sizeof(data);i++){
240
+
241
+ data[i]='\0';
242
+
243
+ }
244
+
245
+ }
246
+
247
+ ```
248
+
249
+
250
+
109
251
  ###試したこと
110
252
 
111
253
  baudrateの値を変えてみたり、parityなどのオプション(?)も設定したりしたが変わらなかった。