下面给出的MATLAB脚本文件用于接收ARM系统采集到的5000个双字节数据,并将这些数据存储到100×50的矩阵data中。这样就可以方便的利用MATLAB强大的数据分析处理功能,从得到的数据中总结出有用的信息。
s = serial('COM1','BaudRate',115200,'Terminator', {'',''});
data = zeros(100,50);
fopen(s);
for i = 1:50
fwrite(s,0x1,'char');
tmp = fread(s,100,'int16');
data(:,i) = tmp;
for j = 1:1000
j=j;
end
end
fclose(s);delete(s);clear s;
ARM系统的串口发送程序如下。在ARM的串口接收中断服务程序中将URXD0Flag赋值为1,这样每当ARM接受到MATLAB发送过来的SOH (Start of Header)字符,即0x1,便会向MATLAB发送100个双字节数据。sl和sh分别存放数据的底八位和高八位。