Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 5
Puertos del C PIC16F877 Estos son puertos que admiten la configuracin independiente de sus bits para operaciones de entrada y salida. El puerto A cuenta 6 bits, y los puertos B, C, D y E tienen 8. La configuracin de cada uno de ellos se logra mediante la escritura de los correspondientes registros !"#$ asignando un %&' a cada bit que se desee configurar como entrada y un %(' al que se desee configurar como salida. En el siguiente e)emplo, los * bits m+s significati,os del -uerto B se configuran como entradas y los cuatro menos significati,os como salidas. .o,l/ b'&&&&((((' .o,/f !"#B Algunos de los pines usados para los puertos comparten funciones para otros mdulos, por lo que se requiere algo adicional para su configuracin. Esto ser+ ob)eto de estudio en el momento que sea preciso. En la figura & se obser,a el detalle del 0ard/are correspondiente a los puertos A y B.
$) a)
Fig. 1 Estructura de los pines en los puertos A y B. a) RA !RA"# $) RA%# c) RB !RB7 Fuente& 'ata ()eet. 'el PIC16F8%. *icroc)ip +ec)nology Inc# , 1
c)
Wilmer Sanz F.
&
almacena en 2 la constante 0e3adecimal 7A. *odo 'irecto !ealmente tendr8a que 0ablarse de un modo !egistro en ,e9 de uno Directo, ya que se trata de una alusin clara, dentro de la instruccin, a un registro de la !A.. #in embargo, los nombres simblicos definidos por los usuarios para las ,ariables de sus programas corresponden con direcciones de este bloque de memoria, por lo que puede entenderse como una %referencia directa' a tales ,ariables. Los siguientes son e)emplos de este modo. : #uma . . . E;< E;< (3=( (3=&
.56> :,( ADD2> #uma,& En estas l8neas implementan la suma de las ,ariables %#uma' y %:', y almacenan el resultado en %#uma'. *odo Indirecto La sinta3is de las instrucciones los microcontroladores -"C carece de caracteres especiales para condicionar el modo en que los operandos son e3tra8dos o escritos en la !A.. Esto parece una clara des,enta)a respecto a los lengua)es simblicos ?assemblers@ de los microprocesadores m+s comunes, donde un registro puede usarse como puntero a una direccin de la memoria de datos, tan solo con antecederlo o rodearlo de caracteres especiales ?como los corc0etes, %A B', para el caso de los microprocesadores "ntel@. #in embargo, el fabricante .icroc0ip sol,enta esta aparente des,enta)a reser,ando uno de los registros de propsito especial para efectuar la funcin de puntero$ se trata de ":D>, ubicado en la posicin ( de la !A.. Cuando una instruccin cualquiera incluye a ":D>, el microcontrolador no lo usar+ como a cualquier otro registro, sino que buscar+ el operando en %la direccin apuntada por >#!', otro de los registros de propsito espec8fico. #i, por e)emplo, >#! tiene el ,alor =(C, la instruccin1 .562> ":D>
guardar+ el contenido del registro 2 en la direccin =(C del banco !A.. (u$siste-a de Iniciali.aci/n y te-pori.aci/n Los circuitos de tempori9acin del -"C&6>8DD se obser,an en la figura =. -o/er up imer ?-2! @ y 5scillator #tartEup imer ?5# @ Estos dos circuitos son responsables de proporcionar los retardos necesarios para garanti9ar que la operacin del sistema inicie luego de culminar el estado transitorio de las seFales que inter,ienen durante el encendido.
Wilmer Sanz F.
Fig. , (u$siste-a de Iniciali.aci/n y +e-pori.aci/n Fuente& 'ata ()eet. 'el PIC16F8%. *icroc)ip +ec)nology Inc# , Acti0idades sugeridas E E "n,estigue1 M;uK es una directi,a o -seudo "nstruccinN MCu+les son las de uso m+s frecuente en la programacin de los -"CN
Bi$liogra12a
Wilmer Sanz F.
Wilmer Sanz F.