当前,我正在使用Matlab 2018b和Arduino硬件的最新支持包。我正在与arduino Due Board合作。我想读取一个频率为50 Hz的正弦信号。我开发了一个脚本,使我能够每50毫秒读取一次示例。即使必须读取的信号的周期为20 ms。读取此信号的最佳速度是每毫秒1个样本。
我试图增加BaudRate,但是Arduino硬件支持包仅允许您使用此代码通过开发板进行连接,而软件未提供任何选择。 我试图创建一个串行连接,但是在那之后,使用Arduino的特定功能遇到了麻烦。
clc, clear all, close all;
% set initial index, voltage and time value
k = 0; %index
v = 0; %voltage
t = 0; %time
tmax = 20;
% create arduino object
a = arduino('COM4', 'Due');
pause (1);
display("starting to read")
tic % Start timer
while toc <= tmax
k = k + 1;
v(k) = readVoltage(a,'A1');
t(k) = toc;
end