datos puerto serial guardar en varias variables
buena miran tengo un dispositovo un gps y este envia tramas por serial o usb he visto que matlab tiene la opcion de utilizar puertos COM
PS=serial('COM2');
set(PS,'Baudrate',9600); % se configura la velocidad a 9600 Baudios
>> set(PS,'StopBits',1); % se configura bit de parada a uno
>> set(PS,'DataBits',8); % se configura que el dato es de 8 bits, debe estar entre 5 y 8
>> set(PS,'Parity','none'); % se configura sin paridad
>> set(PS,'Terminator','CR/LF');% “c” caracter con que finaliza el envÃo
>> set(PS,'OutputBufferSize',1); % ”n” es el número de bytes a enviar
>> set(PS,'InputBufferSize' ,1); % ”n” es el número de bytes a recibir
>> set(PS,'Timeout',5); % 5 segundos de tiempo de espera
>> fopen(PS);
>> variable = fread(PS,1,'uint8');
por ejemplo pero el gps que tengo me envia varios tipos de tramas y la tramam que yo necesito es la siguiente
$GPGGA, 161229.487,3723.2475,N, 12158.3416,W, 1,07,1.0,9.0,M, 0000*18 segun la trama termina con un
en Basic para yo tormar esa trama utilzo una instruccion que dice wait ('$GPGGA') pero no se como se hace esto en matlab otra cosa es que por ejemplo en la trama que les mostré anteriormente:
161229.487 es la hora 16h:12m:29s487milesimas de segundo
3723.2475 latutud
N norte o sur
12158.3416 longitud
W este u oeste
como ven la como significa que lo que viene despues es otra medida mi pregunta es como hago para guardar cada una de estas medidas en variables distintas?
PS=serial('COM2');
set(PS,'Baudrate',9600); % se configura la velocidad a 9600 Baudios
>> set(PS,'StopBits',1); % se configura bit de parada a uno
>> set(PS,'DataBits',8); % se configura que el dato es de 8 bits, debe estar entre 5 y 8
>> set(PS,'Parity','none'); % se configura sin paridad
>> set(PS,'Terminator','CR/LF');% “c” caracter con que finaliza el envÃo
>> set(PS,'OutputBufferSize',1); % ”n” es el número de bytes a enviar
>> set(PS,'InputBufferSize' ,1); % ”n” es el número de bytes a recibir
>> set(PS,'Timeout',5); % 5 segundos de tiempo de espera
>> fopen(PS);
>> variable = fread(PS,1,'uint8');
por ejemplo pero el gps que tengo me envia varios tipos de tramas y la tramam que yo necesito es la siguiente
$GPGGA, 161229.487,3723.2475,N, 12158.3416,W, 1,07,1.0,9.0,M, 0000*18 segun la trama termina con un
en Basic para yo tormar esa trama utilzo una instruccion que dice wait ('$GPGGA') pero no se como se hace esto en matlab otra cosa es que por ejemplo en la trama que les mostré anteriormente:
161229.487 es la hora 16h:12m:29s487milesimas de segundo
3723.2475 latutud
N norte o sur
12158.3416 longitud
W este u oeste
como ven la como significa que lo que viene despues es otra medida mi pregunta es como hago para guardar cada una de estas medidas en variables distintas?