6ta Clace
Posteado por Raúl Alejandro QL
Continuando con las lecciones, veremos las instrucciones Booleanas y su forma de uso, el microcontrolador de la familia 51, mas concretamente los microcotroladores 8051 y el 8052. tienen un procesadore Booleno incluido en el chip microprocesador.
Estos Microcontroladores poseen dos areas que perimten el direccionamientos "Bit a Bit" osea son bit direccionables
El primero corresponde al segmento de RAM interna de direcciones comprendida dentro del rango de memoria 20h a la memoria 2Fh.
El segundo corresponde al rango de direcciones denominado SFR(80h a FFh), el que sirve para el testeo de bits de los registros de control del microcontrolador.
Solo estas direcciones de memoria son bit direccionables.
La instruccion setb, pone en uno estado alto al bit direccionable correspondiente o al carry.
; se puede setear en estado alto los bits de las ; memorias bit direccionables. setb 20.0h ; M[20.0] = "1" ; se puede setear a "1" la memoria SFR setb 80.0h ; M[80.0] = "1" = p0.0 setb p0.0 ; p0.0 = "1" ; se puede setear el carry setb c ; c = "1"
La instruccion clr "clear" pone en estado bajo "0" los bits direccionables.
; la instrucccion pone en estado bajo "0" al bit. ; se puede usar las memorias bit direccionables clr 20.0h ; M[20.0] = "0" ; se puede hacer clear a una memoria SFR clr 80.0h ; M[80.0] = "0" = p0.0 clr p0.0 ; p0.0 = "0" ; se puede hacer clear a el carry clr c ; c = "0"
La instruccion cpl puede ser aplicada al direccionamiento bit direccionable
; Se puede cambiar el valor del Bit direccionable ; si carry tiene "1" cambia a "0" y viceversa cpl c ; c = not c ; de la misma forma el bit de una memoria cpl 2F.0h ; M[2F.0] = not M[2F.0] ; o complementar un puerto cpl p0.0 ; p0.0 = not p0.0
las instruccuiones mov tambien puede manejar memoria bit direccionable "Bit a Bit".
; tambien se pueden mover los bits mov 20.0h,c ; M[20.0] = c ; tambien en el otro sentido mov c,20.0h ; c = M[20.0]
Tambien se puede utilizar instrucciones logicas para las memorias bit direccionables
; logica and anl c,20.0h ; c = c and M[20.0] ; logica orl orl c,2F.0h ; c = c orl M[2F.0].
Visitas