TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: pajaro en 04 de Agosto de 2008, 15:10:25
-
holla amigos necesito
saber como puedo hacer para poner 4 pulsadores
usando la interrunción
incremetar - decrementar - desplazamiento derecha - izquierda
cuando pulso un boton se detecte la pulsación
un saludo
-
Puedes utilizar las interrupciones por cambio de estado si no me falla la memoria rb0 a rb4.
Si habilitas las resistencias de pull up internas cuando tu pulsador mande un 0 ira a tu rutina de interrupción donde procesaras lo que quieres que aga.
Lo demás en tan avio que una leída al manual de tu compilador te lo resuelve
Suerte :g)
-
querida sandra, la memoria te fallo :mrgreen:
la interrupción por cambio de estado es en el nibble alto del puerto b, osea en RB4-RB7
-
Haa se agrádese la corrección :P
-
hola amigos
cuantas interrupciones puedo enviar a la vez o como puedo dar prioridad entre ellas?
pic16F877A
un saludo.
-
Que tal amigos!
Pajaro, existen multiples interrupciones que posee el pic, pero estas van a depender precisamente del modelo del pic que elijas.
Por ejemplo las hay por el porb.0, portb4...portb7, tmr0, tmr1, sspi, adc....
Las prioridades en las interrupciones solo estan disponibles segun entiendo en la serie18 (pic18FXXXX) entre otros :mrgreen:
Para saber cual interrupcion fue activada debes chequear los flag de las interrupciones que hallas habilitado :mrgreen:
Saludos
-
Pajaro, no hace falta las prioridades.
Si estás trabajando con varios pulsadores, pues la opción más adecuada sería la que propone sandrita, son cuatro pulsadores conectados a los pines RB4:RB7 del micro. Activas la interrupción por cambio en PORTB y cada vez que se produce la interrupción deberás leer el puerto y ver cuál fue el botón que se presionó. Como el usuario no puede presionar el botón tan rápido, a lo mínimo tendrás unos 300ms entre una pulsación y otra... tiempo de sobra...
Lo que sí sería importante es que menciones el compilador con el que estás trabajando. No todos los compiladores de Basic manejan bien las interrupciones. Por ejemplo PBP tiene su "punto débil" con las interrupciones. Protón y MikroBasic creo que las tratan mejor.
Ok saludos, nos leemos! :mrgreen: