Voy a redactar los valores que adquieren los bits del registro OPTION, despues de producirse un reset por una de las cinco causas posibles:
Direccion Conexion Desbordamiento Desbordamiento MCLR# MCLR#
de la perro guardian perro guardian modo normal modo reposo
Alimentacion modo normal modo reposo
-------------------------------------------------------------------------------------------------------------------------
OPTION 81h 1111 1111 1111 1111 uuuu uuuu 1111 1111 1111 1111
Y como sabemos el bit 7 del registro OPTION es:
RBUP# Resistencia de pull up de PORTB
1 = Desactivadas
0 = Activadas
Pues bien, como puede verse la mayoria de las veces despues de un Reset vale "1", es decir que si no lo configuro por defecto vale "1", esto es, las resistencias de puul up internas estan desactivadas (como si estuvieran configuradas los pines del PORTB como salida).
Pero, cuando configuro alguno de los pines del PORTB como entrada... ¿DEBO PONER RBUP#= 0 SI ES QUE NO QUIERO USAR RESISTENCIA EXTERNA A FUENTE EN LOS RESPECTIVOS PINES DE IN?. Y como generalmente no tenemos en cuenta a RBUP#, es la razon por la cual que siempre hay que poner una resistencia externa (por lo general 10K) hacia fuente para los pines de entrada del PORTB.
¿Y que pasa con el PORTA, no tienen resistencias internas de pull up?