Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用matlab从串口读取高频信号_Matlab_Arduino_Serial Port - Fatal编程技术网

用matlab从串口读取高频信号

用matlab从串口读取高频信号,matlab,arduino,serial-port,Matlab,Arduino,Serial Port,我正在尝试从seril端口读取信号(与arduino一起发送)。您可以在我的代码中看到,我做了一些事情,但还不够,因为读取一个值所需的延迟为0.8s(在“tic”和“toc”之间的延迟)。 这是我在matlab中的代码,如果有人有建议的话 %User Defined Properties serialPort = 'COM6'; % define COM port # %Define Function Variables time = 0; data = 0; coun

我正在尝试从seril端口读取信号(与arduino一起发送)。您可以在我的代码中看到,我做了一些事情,但还不够,因为读取一个值所需的延迟为0.8s(在“tic”和“toc”之间的延迟)。 这是我在matlab中的代码,如果有人有建议的话

%User Defined Properties 
serialPort = 'COM6';            % define COM port #

%Define Function Variables
time = 0;
data = 0;
count = 0;

%Open Serial COM Port
s = serial(serialPort,'BaudRate', 9600);
fopen(s);

tic
while (toc<=10) 

    dat = fscanf(s,'%f'); %Read Data from Serial as Float      
    count = count + 1;    
    time(count) = toc;    %Extract Elapsed Time
    data(count) = dat(1); %Extract 1st Data Element  
end


%Close Serial COM Port
fclose(s);
delete(s);
disp('Session Terminated...');
%用户定义的属性
serialPort='COM6';%define COM端口#
%定义函数变量
时间=0;
数据=0;
计数=0;
%打开串行COM端口
s=串行(串行端口,“波特率”,9600);
福彭(s);
抽搐

while(根据文档,您需要使用
read
:未定义的函数或变量“serialport”。readasyn(第1行)s=serialport('COM6','InputBufferSize',3600)中的错误;正如Ander所说,使用
read
读取浮点,并在数据到达串行端口时触发的事件回调中对采集进行计时,使用,我发现了这个问题,可能它与我的Matlab版本不兼容。您能澄清一下您使用的是哪个版本吗?正如您所说,这是一个新功能,因此您可能有一个旧版本锡安