Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > ASM y Microcontroladores
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-05-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Hice una prueba colocando un TrackBar en el formulario y este código:

Código Delphi [-]
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  If comport.Connected then
    Comport.WriteStr(IntTostr(TrackBar1.Position ))
  else
    showmessage('Abra el Puerto primero');
end;

Conecte los pines 2 (Tx) y 3 (Rx) de mi puerto com en puente para que el trasmita y reciba simultaneamente.
Al TrackBar le puse un valor de mínimo 100 y máximo 500 con intervalos de 15 y en memo me aparecen perfectamente los tres dígitos. tres lecturas y se limpia el memo.

Pienso que el problema no esta en la recepcion sino en la manera en que estas enviando los datos, pero eso ya es codigo de los pics y ahi si no se nada.

Última edición por FGarcia fecha: 23-05-2008 a las 22:17:58.
Responder Con Cita
  #2  
Antiguo 12-05-2008
italo_grossi italo_grossi is offline
Registrado
 
Registrado: jun 2006
Posts: 4
Poder: 0
italo_grossi Va por buen camino
hola

grax amigos por la ayuda pero contesto algunas preguntas.....los ocntervalos de 15 ms??? eso es demasiado timepo la idea es muestrear menos de 1 ms 500us seria lo ideal lo que pasa es que a esa velocidad el porgrama de delphi si agrupa los valores en 3 cifras y toodo bien pero cuendo bajo la velocidad ......entonces en algunas lineas del memo encontremos solo un valor y entraas nada o en otroas la cifra entera.

la cosa creo k va mas que nada en trabajar no recepcionando el buffer del puerto serial se que mi codigo es muy basico y no he solo copiado o pegado como se dice ahi me base en un ejemplo que traia el mismo componente cport se que a baja velocidad ni un problema... pero es no es mi idea.....

estoy probando las posibles soluciones que me han anviado.........ahhh lo ultimo la rutina del microcontrolado es muy basica y solo manda un string....noc reo que eso sea el problema.
Responder Con Cita
  #3  
Antiguo 12-05-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Quiza el problema esta en que por debajo de los 15 ms la aplicación aun esta ejecutando otro codigo, por lo que algunas muestras se 'pierden'...

bueno, es una idea. Quiza pasa por optimizar el codigo de 7.c...
Responder Con Cita
  #4  
Antiguo 13-05-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Hola!
No me explique correctamente, los intervalos de 15 no son intervalos de ningun temporizador, son los intervalos que avanza en su posicion el trackbar.

Despues de dormir y descansar (aja!) probe con un timer en intervalos de 1ms e insisto funciona bien. Solo añadi al formulario un Timer con su propiedad Interval a 1 y un boton de inicio.

Código Delphi [-]
procedure TForm1.Button7Click(Sender: TObject);
begin
  if timer1.Enabled then
    begin
      Button7.Caption := 'Timer On';
      timer1.Enabled := false;
    end
  else
    begin
      Button7.Caption := 'Timer Off';
      timer1.Enabled := true;
    end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  trackbar1.Position := TrackBar1.Position + 1;
end;

Última edición por FGarcia fecha: 13-05-2008 a las 18:29:37. Razón: Pruebas extras
Responder Con Cita
  #5  
Antiguo 15-05-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Código Delphi [-]
procedure TForm1.Button7Click(Sender: TObject);
begin
  if timer1.Enabled then
    begin
      Button7.Caption := 'Timer On';
      timer1.Enabled := false;
    end  else    
    begin
      trackbar1.Position := 0; //Y esto no??? o mantenemos lo anterior?
      Button7.Caption := 'Timer Off';
      timer1.Enabled := true;
    end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  trackbar1.Position := TrackBar1.Position + 1;
end;

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta Delphi 6, Delphi 2005 y Delphi 2006 Leviatan Varios 6 18-08-2007 16:02:08
Ayuda con Cport VNNO Varios 0 10-02-2007 02:07:30


La franja horaria es GMT +2. Ahora son las 13:34:30.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi