Ver Mensaje Individual
  #2  
Antiguo 18-03-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola soymoe, bienvenido a Club Delphi

Como a todos cuando inician, te invitamos a que leas nuestra guía de estilo.

Para la toma de temperatura a intervalos regulares podes usar un TTimer (pestaña System).

Un ejemplo simple, pone en tu formulario un TTimer, un TLabel y dos TButton:
Código Delphi [-]
...
implementation

// (*)
function GetValueFromSensor: Double;
begin
  Result := Random(100) / (Random(10)+1)
end;

// Inicializar el timer
procedure TForm1.FormCreate(Sender: TObject);
begin
  with Timer1 do
  begin
    Interval:= 500;  // valor en ms = 1/2 seg. (o el lapso que desees) 
    Enabled:= False;// inactivo
  end;
end;

// El evento se dispara cuando el tiempo fijado en la propiedad Interval se cumple
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Label1.Caption := FormatFloat('0.00', GetValueFromSensor);
end;

// Activar la toma de temperatura
procedure TForm1.btnStartClick(Sender: TObject);
begin
  Timer1.Enabled:= True;
end;

// Desactivar la toma de temperatura
procedure TForm1.btnStopClick(Sender: TObject);
begin
  Timer1.Enabled:= False;
end;
(*) No he usado la librería ComPort (y mucho menos adaptador usb-usart), por lo que simulé la toma de temperatura con una función que devuelve valores aleatorios para hacer funcional el ejemplo.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita