필터 지우기
필터 지우기

I'm trying to open a serial port, but Matlab says it's not available. What can i do?

조회 수: 57 (최근 30일)
Hi everyone, I know a lot of people already asked for this but i cannot find any solution. I've got an Arduino board connected to a serial port (COM5), but when i run fopen(serialobj) it fails saying that "COM5 is not available". I tried to open Arduino IDE and uploading another sketch on that port and it went well; even though I close the IDE matlab still gets the same error. I tried with INSTRFIND and the output was
Index: Type: Status: Name:
1 serial closed Serial-COM2
2 serial closed Serial-COM2
3 serial open Serial-COM5
4 serial closed Serial-COM5
5 serial closed Serial-COM3
6 serial closed Serial-COM5
7 serial closed Serial-COM3
8 serial closed Serial-COM3
9 serial closed Serial-COM3
The error message given by Matlab is this:
'Open failed: Port: COM5 is not available. No ports are available.↵Use INSTRFIND to determine if other instrument objects are connected to the requested device.'
Can someone help me? PS: Baudrate is 4800, the same as the one i set on Arduino.
  댓글 수: 1
Enrique Paredes Sánchez
Enrique Paredes Sánchez 2021년 6월 5일
I had the same problem, it was due to another program was using the port. I closed it and then it solved.

댓글을 달려면 로그인하십시오.

답변 (5개)

Nim Pim
Nim Pim 2021년 5월 2일
편집: Walter Roberson 2021년 6월 5일
Disconnect and delete all the objects using "instrreset". Then it works.

Saurabh Gupta
Saurabh Gupta 2017년 4월 12일
It looks like you already have the port open. You may want to fclose or delete it before trying to fopen it.
  댓글 수: 2
Peter Nelson
Peter Nelson 2019년 3월 26일
Doesn't work for me. I tried inserting the solution provided in the answer from SG:
if ~isempty(instrfind)
fclose(instrfind);
delete(instrfind);
end
but I still get the error. The only fix is to leave and re-start Matlab.... sometimes several times before it allows me to open it with the serial command. In my case its a USB port. Any other ideas???
Madalina Dobre
Madalina Dobre 2021년 12월 12일
hi,did you get a fix for this? i have the same issue

댓글을 달려면 로그인하십시오.


Davide Nicolò Fortunato
Davide Nicolò Fortunato 2019년 4월 19일
I have the same problem, but i have an elegoo uno board. (the microcontroller is the same atmega of arduino uno).
i have yet tried
if ~isempty(instrfind)
fclose(instrfind);
delete(instrfind);
end
but nothing :(

Renner Josef
Renner Josef 2019년 6월 4일
Does work for me so far with an elegoo MEGA2560 R3.
Thanks for your help.

alican kara
alican kara 2020년 6월 20일
편집: Image Analyst 2020년 6월 20일
MATLAB Serialport connection between Computers

카테고리

Help CenterFile Exchange에서 MATLAB Support Package for Arduino Hardware에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by