Autor Tema: Problema con uso de timer en Matlab  (Leído 2927 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
Problema con uso de timer en Matlab
« en: 08 de Marzo de 2011, 18:12:12 »
hola a todos, resulta que estoy comunicandome con matlab via USB-CDC, hasta ahi todo bien, lo que estoy haciendo es enviarle al pic una letra(a) y el devuelva lo que haya tomado del ADC, con '1' y '2' prendo y apago un led. Ahora esto lo hago manualmente, es decir tengo un boton con el que hago la funcion de enviar y tengo otro boton con el que leo el dato. Lo que no he podido hacer es uso del timer en matlab para hacer la escritura,lectura y otros menesteres cada intervarlo de tiempo (1 segundo). vengo leyendo los ejemplos de la pagina de mathworks pero los entiendo muy poco.

No se si alguien tenga idea de como debo estructurar el .m para que sea llamado y haga lo que quiero

hasta ahora lo hago asi
Código: Matlab M
  1. t=timer;
  2. set(t,'ExecutionMode','FixedRate');
  3. set(t,'Period',1);
  4. set(t,'TimerFcn',@pide);
  5. handles.t=t;
  6. start(t);
  7. guidata(hObject, handles);

en el .m de la funcion  tengo lo siguiente

Código: Matlab M
  1. function pide(t,timerfcn)
  2. s=handles.s
  3. fprintf(s,'a\n');

s es el como tengo definido el puerto serie
Código: Matlab M
  1. s=serial('COM1');
  2. set(s,'BaudRate',9600);
  3. set(s,'DataBits',8);
  4. set(s,'Parity','none');
  5. set(s,'StopBits',1);
  6. set(s,'FlowControl','none');
  7. fopen(s);
  8. handles.s=s;
  9. guidata(hObject, handles);

cuando se ejecuta la funcion pide  me salta un error de que no reconoce s    :?
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA


 

anything