Hola a todos, sucede que llevo ya algun tiempo con problemas acerca de un delay que supuestamente por los calculos que hice deberia de ser de 2us, pero no sale de eso, sino de 25us. La forma en que hice los calculos fue de la siguiente manera.
Delay= 4*250ns*1*2
El 250 es porque uso un oscilador de 4MHz.
El 1 representa el valor resultante de restar 256 menos el valor cargado en el TMR0
Y el 2 es porque se esta ocupando (supuestamente) el divisor de frecuencia 1:2
Ya realice muchos cambios y ese el delay mas pequeño que obtengo, lo que no me serviria para toda la aplicación que estoy desarrollando ya que necesito un delay de 1us mínimo. Alguien sabe si sera posible con el uso de un 16f84? y ademas ¿Alguien sabe porque no logro la temporización que supuestamente yo planeo?
El programa que mando es el utilizo para los delay, y representa un programa que realiza cuatro rutinas diferentes de acuerdo a la combinación de dos switches que entran por el puerto A y tienen su salida en el puerto B. Es lo único que hace y sin embargo no he podido utilizarlo porque esas temporizaciones no salen. Ah y otra cosa, la idea es obtener un tren de pulsos pero el estado alto y el bajo en todas las comninaciones resulta de diferente ancho de pulso, es decir, por ejemplo, en la combinación 00 el nivel alto dura los 25us ya mencionados, y el bajo dura 30us, con 01 el alto es de 45us y el bajo de 60us, con 10 el alto es de 90us y el bajo de 110us, finalmente con 11 el alto es de 140us y el bajo de 160us. No se porque tiene esos retardos en el nivel bajo, y necesito que tanto nivel bajo, como alto sean iguales.
Muchas gracias por su ayuda, espero que me haya dado a entender.
Delay= 4*250ns*1*2
El 250 es porque uso un oscilador de 4MHz.
El 1 representa el valor resultante de restar 256 menos el valor cargado en el TMR0
Y el 2 es porque se esta ocupando (supuestamente) el divisor de frecuencia 1:2
Ya realice muchos cambios y ese el delay mas pequeño que obtengo, lo que no me serviria para toda la aplicación que estoy desarrollando ya que necesito un delay de 1us mínimo. Alguien sabe si sera posible con el uso de un 16f84? y ademas ¿Alguien sabe porque no logro la temporización que supuestamente yo planeo?
El programa que mando es el utilizo para los delay, y representa un programa que realiza cuatro rutinas diferentes de acuerdo a la combinación de dos switches que entran por el puerto A y tienen su salida en el puerto B. Es lo único que hace y sin embargo no he podido utilizarlo porque esas temporizaciones no salen. Ah y otra cosa, la idea es obtener un tren de pulsos pero el estado alto y el bajo en todas las comninaciones resulta de diferente ancho de pulso, es decir, por ejemplo, en la combinación 00 el nivel alto dura los 25us ya mencionados, y el bajo dura 30us, con 01 el alto es de 45us y el bajo de 60us, con 10 el alto es de 90us y el bajo de 110us, finalmente con 11 el alto es de 140us y el bajo de 160us. No se porque tiene esos retardos en el nivel bajo, y necesito que tanto nivel bajo, como alto sean iguales.
Muchas gracias por su ayuda, espero que me haya dado a entender.