Diferencia entre TRISx |= 0x02; y TRISx = 0x02;

¿Crees que tu consulta técnica no cabe dentro de ninguna temática de las que tenemos? ¿Tienes material para compartir y no sabes donde hacerlo? Si entiendes que no podrías ubicarte dentro de un foro específico con tu inquietud o tu propuesta, este espacio será el lugar para proponer nuevos sub-foros y nuevas divisiones que no existan aún. De mismo modo en que la tecnología avanza a cada momento, este foro también hará lo mismo.

Moderador: HJ

Diferencia entre TRISx |= 0x02; y TRISx = 0x02;

Notapor Jzebadua » Jue Ago 08, 2013 1:40 pm

Un saludo a todos,

En estos días que ando elaborando un proyecto con un modulo de radio frecuencia encontré un código de ejemplo con el fabricante, sin embargo en la declaración de los puertos usan operadores, como ejemplo;

TRISD |= 0x02;

No veo mas allá de que podía afectar o beneficiar el usar ese operador para declarar que pines serán entradas y cuales salidas, tratando de buscar información encontré otros ejemplos donde usa & = y otros operadores. Yo solo e usado estos operadores para realizar operaciones o verificar datos y las declaraciones tan solo poniendo el TRISx seguido del igual y valor, no se que puedo estar omitiendo o que pase en oscuras de mi clase de programación pero hoy me a nacido esta duda.

Muchas gracias por su tiempo...

Julio Zebadua
Jzebadua
 
Mensajes: 9
Registrado: Mar May 21, 2013 12:01 pm
Ubicación: Tuxtla Gutiérrez, Chiapas México

Re: Diferencia entre TRISx |= 0x02; y TRISx = 0x02;

Notapor jcristhian_1 » Jue Ago 08, 2013 2:50 pm

Hola Jzebadua, creo que en este caso usan el operador OR, para no afectar el valor anterior que pueda tener el registro TRISX,
TRISX=B7_B6_B5_B4_B3_B2_B1_B0

Quizá lo único que desea es poner como entrada el pin X1, y los demás que permanezcan igual
si hiciera TRISX=0X02,
TRISX=0b00000010

pues se perdería el valor anterior que había en el registro tris, con el consiguiente cambio de salidas y entradas, pero si haces TRISX=TRISX | 0X02, solo afectas al bit 1 del registro , y los demás permanecen como antes.
TRISX=B7_B6_B5_B4_B3_B2_1_B0

Saludos.
Electrónica - Programación - Software Libre.
http://voltiosybytes.blogspot.com/
Avatar de Usuario
jcristhian_1
 
Mensajes: 103
Registrado: Mié Mar 27, 2013 12:54 am
Ubicación: Piura


Volver a Variedades Tecnológicas

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron