
我只是想知道如何在 Arduino 和 MATLAB 之間建立串行通訊。由此教學我複製了程式碼,但對於我的電腦使用“Windows”,我必須更改我的串行連接埠名稱。我的 arduino 連接到“COM4”連接埠。
但是當我運行程式碼時,彈出錯誤:“打開失敗:連接埠:COM4 不可用。沒有可用的連接埠。”我不明白這是什麼意思以及我該如何解決這個問題。我在網路上沒有發現任何有用的東西。你能幫我一下嗎?
我的程式碼如下:
function [obj,flag]=setupSerial(comPort)
flag =1;
obj=serial(comPort);
set(obj,'DataBits',8);
set(obj,'StopBits',1);
set(obj,'BaudRate',9600);
set(obj,'Parity','none');
fopen(obj);
a='b';
while (a~='a')
a=fread(obj,1,'uchar');
end
if(a=='a')
disp('Serial Setup Complete');
end
fprintf(obj,'%c','a');
mbox = msgbox('Serial Communication setup'); uiwait(mbox);
fscanf(obj,'%u');
fclose(obj);
end
提前致謝 。
答案1
您的連接埠可能已被其他通道使用或開放。在建立 obj 之前插入此行:
delete(instrfind({'port'},{comPort}));
此行將刪除 comPort 的任何先前設定。