Programación General > Visual C++

 Timer Interrupt

(1/1)

swingt81:
Hola, estoy inetntando cambiar la frequencia del reloj para enviar un archivo wav por el puerto paralelo.
para ello quiero reprogramar el reloj a la frecuancia del archivo wav.
como aun no me han montado el chisme que tengo q conectar al puerto paralelo (es una empresa muy friki), para comprobar si el programa funciona bien, cada vez q llamo a la interrupcion de tiempo incremento una variable. despues en el main, cada vez q esta variable llegue a la frecuencia deseada, imprimo algo por pantalla. en teroia, si se llama a la interrupcion x veces por segundo, se imprimira algo cada segundo....vaya explicacion mas fea. el caso es q se me qeda parado en el while y no imrpime nada. os pongo el codigo a ver si me podeis decir donde esta fallando.  o si se os ocurre algo mejor, pos se aceptan todas las sugerencias.
ah, os lo adjunto como archivo, q si no es un toston.muchas gracias.

Eternal Idol:
Espero que esto solo lo quieras hacer funcionar en 9x ... el codigo es un poquito "crudo" para mi gusto ...


--- Código: Text ---   while(1){         while (  tics<fs_hz ){;}                    printf("\t\tNumero de tics: %d\n",tics);                     //AQUI ES DONDE CREO Q DEBERIA VENIR LA RUTINA "SendData()" CUANDO PODAMOS          //OBTENER LA VELOCIDAD NECESARIA DEL TIMER          tics=0;            }         
Si fs_hz es mayor a cero jamas llegara al printf para empezar. Despues si fs_hz es cero nunca saldra del primer while ya que este es infinito y no tiene ninguna comprobacion ...

Tal vez esto se parezca mas a lo que necesitas:

--- Código: Text --- while (tics < fs_hz){  printf("\t\tNumero de tics: %d\n",tics);   tics++;       //dijiste "cada vez q llamo a la interrupcion de tiempo incremento una variable", hagamoslo asi esto termina alguna vez.  }         

Navegación

[0] Índice de Mensajes

Ir a la versión completa