TODOPIC
Lenguajes de programación para PC => C, C#, C++ => Mensaje iniciado por: Esau en 28 de Septiembre de 2010, 22:38:00
-
hOLA AMIGOS, RETOMANDO EL VALIOSO TRABAJO DE JIM con lo de su interfaz usb, necesito sacar datos por el puerto USB cada dos segundos...
Soy nuevo en esto del C#, y se me ocurrio utilizar un timer cuyo time interval es de 2000, YA QUE NCESITO sacar datos cada dos segundos
si pongo la sentencia
private void timer1_Tick(object sender, EventArgs e)
{
salida_frec = 0x00;
control.Frecuencia_Salida(salida_frec);
}
la salida 0x00 si se tiene a los dos segundos... El detallle esta en que necesito 20 salidas osea de la 0x00 hasta la 0x19 y que cada dos segundos se ejecute una a una como le hago????
Saludos
-
bueno, yo estoy dando mis primeros pasos en c#, no se si sea lo mas eficiente pero podrias hacer un ciclo For, seria algo como for(i=0;i<=19;i++)
Control.frecuencia_salida(i);
Asi entonces cada dos segundos se incrementa i en una unidad hasta 20
-
Un dato, piensa que de 0x00 a 0x19 no van 20 salidas, sino que van 25 ya que despues del 0x09 va el 0x0A hasta el 0x0F.
Bueno, a falta de aclarar esto un ejemplo que te podria servir es este:
*entiendo que la variable salida_frec es int y la tienes declarada globalmente, es decir, fuera del timer1_Tick
salida_frec = 0;
private void timer1_Tick(object sender, EventArgs e)
{
control.Frecuencia_Salida(salida_frec);
salida_frec++;
if(salida_frac == 20) salida_frec=0;
}
saludos
-
Un dato, piensa que de 0x00 a 0x19 no van 20 salidas, sino que van 25 ya que despues del 0x09 va el 0x0A hasta el 0x0F.
Bueno, a falta de aclarar esto un ejemplo que te podria servir es este:
*entiendo que la variable salida_frec es int y la tienes declarada globalmente, es decir, fuera del timer1_Tick
salida_frec = 0;
private void timer1_Tick(object sender, EventArgs e)
{
control.Frecuencia_Salida(salida_frec);
salida_frec++;
if(salida_frac == 20) salida_frec=0;
}
saludos
lo mejor es trabajar con los timer, sin embargo me gusta trabajar mas con hilos y al final le coloco un delay para que cada dos segundo entre a competir el procesador con los demás procesos.
hilos y delegados para modificar objetos por eventos:
http://msdn.microsoft.com/en-us/library/aa446540.aspx