TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: OTSELECTRONICSEIRL en 11 de Julio de 2009, 21:06:12
-
Una cita del texto de Angulo dice:
" El puerto B tiene internamente unas resistencias de pull-up conectadas a sus pines (sirven para fijar el pin a un nivel de 5 voltios), su uso puede ser habilitado o deshabilitado bajo control del programa. Todas las resistencias de pull-up se conectan o se desconectan a la vez, usan el bit llamado RBUP que se encuentra en el registro (posicion de memoria RAM) llamado OPTION. La resistencia de pull-up es desconectada automaticamente en un pin si se programa como salida. " :(
Pues bien, ¿eso siginifica que siempre debo estar pendiente por configurar RBUP? ¿alguien me puede dar alcances de que significa todo esto?
Gracias.
-
Activando RBUP, los pines que esten configurados como entrada tendrán habilita la resistencia de pull-up.
si tu pin es configurado como salida , la pull-up se desactiva automaticamente,Obviamente no es necesaria.
Estas son muy usadas con teclados , botones , etc.. para eliminar resistencias externas.
-
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?
-
Por default las resistencias de pull-up estan desactivadas , el puertob es el unico que posee esta caracteristica.
Solo se desactivan las resistencias de pull-ip en el POWER-on Reset.
De igual manera si presionas el MCLR , ira a Vector de reset y de ahi al inicio de tu programa donde configuras el puerto y caracteristicas.