TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: rgga86 en 19 de Enero de 2004, 12:54:00
-
Bueno, me gustaria saber como se hace un circuito para contar con el tmr0 los pulsos de cualquier entrada no nadamas de la RA4, me gustaria contar cuantas veces se activa cualquier entrada, si me pudieran facilitar un esquema de un circuito (creo que se llama antirebotes para no contar de mas) y algunas lineas del asm para hacer ese conteo. Y otra cosa como puedo programar para que por ejemplo a los 4 conteos de cualquier entrada se active una rutina?
GRACIAS
-
bueno por el antirrebotes este puede ayudar primero inicializas variables claro
delay_32ms
incf RETARDO,F ;+1
btfss RETARDO,5 ;Checa si son 32ms
goto delay_32ms
clrf RETARDO ;Ya son 32ms
rutinaxx
btfss PORTB,0
goto delay_32ms
incf cnt_rutinas,F
movlw 0x04
xorwf cnt_rutinas,W
btfss STATUS,Z
goto delay_32ms
call rutina_conteo
clrf cnt_rutinas
goto delay_32ms
aqui por ejemplo esta en loop despues del retardo checas el estado del pin RB0 si vale 1 que es lo que esperas incrementa un contador para obtener que numero quieres para ejecutar tu rutina en tu caso pones que 4 cuando ya sean 4 inc. se hace una comparacion y se checa el resultado del registro estado por ultimo llamas a la rutina que tu quieres y limpias el registro espero te sirva con respecto a usar cualquier pin y que cuente el tmr0 no se si se puede pero yo no le veo mucho sentido mejor explicate un poco mas saludos
-
Pasate por el subforo de Pic Basic Pro, y mira el post de manejo de interrupciones...
http://miarroba.com/foros/ver.php?pag=3&temaid=1079915&foroid=8826
en la página 3, deje un ejemplo de manejo de interrupciones en las cuales tienes control sobre el tmro.
es un contador de segundos y minutos..
Espero que te sirva de algo.
Saludos