TODOPIC
Lenguajes de programación para PC => Visual Basic => Mensaje iniciado por: ENO45 en 16 de Febrero de 2006, 23:00:00
-
hola quisiera saber como puedo hacer un retraso de 10 milisegundos en el programa. Es para que cuando envio un byte por el puerto serie espere la constestacion antes de enviar otro BYTE
espero con ancias su ayuda
-
Pues con un timer a 10ms,
Cuando mandes un byte activas el timer, y cuando termine el timer mandas otro byte, lo mejor seria utilizar una bandera que activaras en la rutina del timer, para saber si tienes que mandar o no.
SalU2
-
hola si no es mucha molestia me podrias dar unejemplo porque lo que me digiste no tengo la mas minima idea de como arrancar, es que mi conocimiento son muy basicos.
gracias
-
hola como andan si me pueden ayudar alguien yo tambien necesitaria saber como se hace un retraso de 10 ms ó 15 ms si es posible con un ejemplo
nacha4
-
Cabe destacar que los Timer en Vb, no calculan bien tiempos menores a 50ms. Pues nada dificil
Simplemente inserten un objeto Timer y a su propiedad interval la ponen a 10.
luego ponen:
Private Sub Timer1_Timer()
Form1.Caption = Date & Time
End Sub
y prueben. exitos.
-
Hola:
Que les parece esto?
'declarancion de un Api de Windows, para usarlo en los retardos.
Public Declare Sub Sleep Lib "Kernel32.dll" (ByVal Time As Integer)
y se puede utilizar por ejemplo:
sleep(10)' pausa de 10 milis.
-
jeje Gio, la API hace maravillas, y es muy veloz. Si a alguien le interesa, puedo publicar muchos programas interesantes que he hecho en el pasado utilizando la API de Windows.
El VB trae una utililidad llamada API Viewer, que se activa mendiante el menu Add-Ins, en la cual puedes merodear por las llamadas a la API del Windows, y utilizarlas.Aunque requiere de cierta experiencia y conocimiento en VB. Saludos y muy linda la funcion.
-
Buenass!!amigo BrunoF haber si posteas, los que creas ma sinteresantes, de esos programas que usan la API' de Windows, la verdad que estoy en pleno aprendizaje de este lenguaje y me interesaria ver como se maneja las API's....
Gracias!!! :wink:
-
jaja bueno...empecemos con algo que hice sin API, pero que si lleva un poco de matematica, y puede ser de mucha utilidad para proyectos de los foreros...
Un tacometro analogico para sus aplicaciones!. P.D: Charly, gracias x la explicacion de los TV! :D
Los archivos:
-
Que tal a todos, me parece interesante lo de las API's y espero que el pana BrunoF pueda postear los ejemplos. Y el del retardo con las API's hacia tiempo que andaba buscado uno asi para aplicarlo en VB. Gracias. :lol:
Edito: Gracias BrunoF por el post del ejemplo. :o
-
Hola:
jeje, muy bueno lo tuyo Bruno, si vas a postear ejemplos de esos, seria recomendable abrir otro hilo para no mezclar la idea original de este, y asi la gente tambien pueda saber de que se trata el post original... :lol:
un abrazo hermano. :mrgreen:
-
A ver hablo desde el desconocimiento de lo que estais haciendo pero si necesitais que algun tipo de rutina espere a la llegada de algun tipo de información... por ejemplo llegada por tcp/ip de un dato lo mejor qu podeis hacer es esperarlo en un bucle con la sentencia
doevents
Cuando el evento de llegada se produzca podeis asignarselo a una variable... como byterecibido tonces
while byterecibido="" then
doevents
do
... patatin patatan...
esa sub o function se quedará esperando eternamente a que llegue un byte... sin tener que meter por medio retrasos
igual no les viene bien para el caso pero les doy ideas por si acaso. De hecho en el bot de migración hecho en vbasic se usa este metodo para la recepción del html que se requiere del servidor.
1 saludo
-
De nada amigos :D
Tenes razón Gio, ya abriré un nuevo hilo..aunque vszener abrió un hilo hace tiempo pa' postear ejemplos, voy a ver si logro encontrarlo aquí...
Con respecto a la funcion Sleep... es muy útil, pero tengan cuidado! mientras se ejecute el Sleep, el programa no hace mas nada que perder el tiempo(no se puede ejecutar codigo simultáneamente al Sleep,solo se ejecutará una vez finalizado el Sleep). Asi que si lo van a usar, que sea en pequeños intervalos para no congelar el programa ni producir errores indeseados.
Aca adjunto un programita que hice para que se vayan empapando un poco del tema. Como no comprendi en totalidad como querian que funcione el programa, lo hice asi:
La PC envia inicialmente el caracter "a" indicando al dispositivo conectado, que pide comunicarse.
Luego se espera durante maximo 10ms la respuesta del dispositivo. Si todo va bien el dispositivo envia "a" (97 en decimall) a la PC.
Luego se envia de a 1 caracter por vez el contenido de la variable TextoAEnviar. El dispositivo responde con "a"(97 decimal) cada vez que recibe un dato.
Para finalizar envio el caracter "z". El dispositivo responde para finalizar con "z". Se confirma la comunicacion exitosa.
Si se excede los 10ms de espera de respuesta, se muestra un mensaje, y se cierra la comunicación.
Espero que les sirva.
Saludos!!!
-
Bueno mi post es este Programas caseros en VB (http://www.todopic.com.ar/foros/index.php?topic=7042.0) , pero vamos comparado con tus ejemplos los mios no son nada!jeje ahora estoy haciendo un programa de musica para mi guitarra!!!jeje
Sigue poniendo ejemplitos amigo BrunoF!!!
Suerte!!! :wink: