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
Ir a la versión completa