• Jueves 14 de Noviembre de 2024, 17:11

Autor Tema:  Leer datos puerto Serie COM1  (Leído 5182 veces)

janek

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Leer datos puerto Serie COM1
« en: Viernes 25 de Junio de 2010, 11:40 »
0
Hola a todos
 
DATOS del Problema
_____________________________________________________________
Sistema de adquisicion: UPM100 Hottinger Baldwin
Parametros
----------------------------
  Characters/Line: 88
  Lines/Page: 072
----------------------------
  Separator[2]:
  Terminator[2]: 0D0A
----------------------------
  Recording Output: RS232-C
----------------------------
  Baud Rate:9600
----------------------------
  Data length: 8Bits
----------------------------
  Parity: No
 

Matlab R2009a
Puerto Serial: COM1
_______________________________________________________________
 
Estoy intentando crear una GUI en Matlab para comunicarme con un sistema de adquisicion de datos.
El caso es que quiero leer los datos que envia el sistema y guardarlos en un archivo.
 
El primer paso seria leer del Puerto Serie COM1.
He encontrado cierto codigo el la red:
 
%ABRIR el puerto COM1
clc; disp('BEGIN')
SerPIC = serial('COM1');
set(SerPIC,
'BaudRate',9600);
set(SerPIC,
'DataBits',8);
set(SerPIC,
'Parity','none');
set(SerPIC,
'StopBits',1);
set(SerPIC,'FlowControl','none');
fopen(SerPIC);
%*-*-*-*-*-*-
%Para leer los datos del puerto se usa la función fscanf.
s1 = serial('COM1');
s1.BaudRate=9600;
fopen(s1);
fscanf(s1)
%CERRAR el puerto COM1 al finalizar
fclose(SerPIC);
delete(SerPIC)
clearSerPIC
disp('STOP')
Pero cuando lo ejecuto me da el siguiente error:
??? Error using ==> serial.fopen at 72
Port: COM1 is not available. No ports are available.
Use INSTRFIND to determine if other instrument objects are connected to the requested
device.
 
Despues ejecuto INSTRFIND como me dice y me muestra lo siguiente:
Instrument Object Array
   Index:    Type:     Status:   Name:  
   1         serial    open      Serial-COM1
   2         serial    closed    Serial-COM1
   3         serial    closed    Serial-COM1

Sabe alguien que es lo que puede estar sucediendo??
Necesito leer datos transmitidos por RS-232C al puerto Serie de mi ordenador pero parece que Matlab no lo detecta.
Gracias

amye

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Leer datos puerto Serie COM1
« Respuesta #1 en: Martes 28 de Septiembre de 2010, 16:09 »
0
Buenos dias

Yo esoy haciendo un programa similar para leer datos del puerto serial en matlab y al principio me salia ese mismo error, lo que tiene que hacer es verifcar que tipo de puertos seriales utilizar su computador por el administrador de dispositivos y si sigue con el mismo problema despues de verificar los puertos lo mejor es cambiarle el nombre al puerto por ejemplo yo lo cambie al COM4 y se me soluciono ese problema

El problema que yo tengo es que tengo algo en el software que no permite que matlab actualice el dato tomado, lo que hace es que toma solo un dato y lo copia el numero n de veces que le digo, si depronto me puede ayudar con esto le agradeceria

Espero haberle ayudado

harlan_yezid

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Leer datos puerto Serie COM1
« Respuesta #2 en: Miércoles 16 de Febrero de 2011, 18:20 »
0
esto se debe a que tienes abierto el puerto y no lo has cerrado
siempre que lo abras debes cerrarlo
te recomiendo volver ha iniciar matlab
y siempre que abras el puerto debes cerrarlo aqntes de intentar abrirlo nuevamente