You are on page 1of 4

Al tener un alto nivel de resistencia (varias decenas de kiloohmios), estas resistencias virtuales no afectan a

los pines configurados como salidas, sino que sirven de un complemento til a los pines configurados como
entradas. De lo contrario, se comportaran como si fueran flotantes gracias a su alta resistencia de entrada.

* Adems de los bits del registro WPUB, hay otro bit que afecta a la instalacin de las resistencias pull-up. Es
el bit RBPU del registro OPTION_REG.
El puerto PORTB se puede utilizar como una fuente de aliemntacin. Al estar habilitado,
cada bit del puerto PORTB configurado como una entrada puede causar una interrupcin
al cambiar su estado lgico. Con el propsito de habilitar que los pines causen una
interrupcin, el bit apropiado del registro IOCB debe estar a uno.

Gracias a estas caractersticas, los pines del puerto PORTB se utilizan con frecuencia para comprobar los
botones de presin en el teclado ya que detectan cada apretn de botn infaliblemente. Por eso, no es
necesario examinar todas las entradas una y otra vez.Cuando los pines X,Y y Z se configuran como entradas
de puesta a uno (1), slo se necesita esperar una peticin de interrupcin que aparece al apretar un botn.
Ms tarde, se comprueba cul botn fue activado al combinar ceros y unos en las entradas.

Vamos a hacerlo en mikroBasic...
'El pin PORTB.1 se configura como entrada digital. Se produce una
interrupcin con cualquier
'cambio de su estado lgico. Tambin tiene una resistencia pull-up.
Todos los dems pines del
'puerto PORTB son salidas digitales.
...
ANSEL, ANSELH = 0 ' Todos los pines de E/S se configuran como
digitales
PORTB = 0 ' Todos los pines del puerto PORTB se ponen a cero
TRISB = %00000010 ' Todos los pines del puerto PORTB excepto PORTB.1
' se configuran como salidas
OPTION_REG.RBPU = 0 ' Se habilitan las resistencias pull-up
WPUB.1 = 1 ' La resistencia pull-up se conecta al pin PORTB.1
IOCB.1 = 1 ' El pin PORTB.1 puede causar una interrupcin por
el
' cambio del estado lgico
INTCON.RBIE = 1 ' Se habilita una interrupcin por el cambio del
estado
' lgico en el puerto
INTCON.GIE = 1 ' Se habilitan todas las interrupciones no
enmascaradas
...
PIN RB0/INT
El pin RB0/INT es la nica fuente verdadera de la interrupcin externa. Se puede confi-gurar de manera que
responda al borde ascendente de seal (transicin de cero a uno) o al borde descendente de seal (transicin
de uno a cero). El bit INTEDG del registro OPTION_REG selecciona la seal apropriada.
Pines RB6 y RB7
El PIC16F887 no dispone de ningn pin especial para la programacin. Esta funcin se les asigna a los pines
de E/S. Ms concretamente son los pines del puerto PORTB utilizados para la transmisin de seal de reloj
(RB6) y de datos (RB7) durante la programacin. Adems, es necesario suministrar el voltaje de alimentacin
Vdd (5V) as como el voltaje apropiado Vpp (12-14V) para la programacin de memoria FLASH. El pin MCLR
se utiliza para este propsito. No se preocupe de los detalles relacionados a este proceso, tampoco se
preocupe de cul voltaje se aplica primero puesto que el programador se encargan de eso. Se habilita
cargar el programa en el microcontrolador an despus de haber sido soldado en el dispositivo destino. Por
supuesto, el programa cargado se puede cambiar de la misma manera. Esta funcin se le denomina ICSP (In-
Circuit Serial Programming - Programacin serial en circuito). Para utilizarlo correctamente es necesario
planificar con antelacin.

Slo es necesario instalar un conector miniatura de 5 pines en el dispositivo destino para suministrar al
microcontrolador un voltaje de programacin necesario. Para evitar la interferencia entre los voltajes y el
funcionamiento de los otros mdulos conectados a los pines del microcontrolador, es necesario aislarlos de la
placa durante la programacin utilizando las resistencias o los puentes.


Como hemos visto, los voltajes aplicados a los pines del zcalo del programador son los mismos que los
utilizados durante la programacin ICSP.

You might also like