write関数が未定義となることについて
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
ArduinoとMATLAB間でシリアル通信を行うMATLABのプログラムでwrite関数を用いようとしているのですが「関数 'write' (タイプ'serial' の入力引数) が未定義です。」とエラーが出てしまいます。
これの解決方法が分からないので教えてください。
下記がMATLABコードです。
s = serial('COM7', 'BaudRate', 9600, 'Terminator', 'CR', 'StopBit', 1, 'Parity', 'None');
fopen(s);
a=1;
t=1;
N=30;
out = zeros(2,N);
while(1)
if (t<=N)
write(s,1);
fprintf(s,'1');
out(1,:) = str2double(fscanf(s));
s.BytesAvailable;
write(s,2);
fprintf(s,'2');
out(2,:) = str2double(fscanf(s));
s.BytesAvailable;
else
fclose(s);
delete(s);
clear s
break;
end
t = t+1;
end
t=1:1:30;
figure
plot(t,out(1,N),'-.')
hold on
plot(t,out(2,N),'-.')
hold on
0 comentarios
Respuestas (1)
Takafumi
el 22 de Jun. de 2020
手元にArduino が無いので確かめられませんが、
MATLABでは、serial 関数から、serialport 関数への移行をしております。
serial 関数で押す場合は、fwrite を使います。
serial を serialport 関数への変更か
write を fwrite に変更するか、
検討してみてください。
0 comentarios
Ver también
Categorías
Más información sobre シリアル ポート デバイス en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!