¿Qué sucede cuando los datos se escriben en LATCH?

9

Esto es lo que encontré en la hoja de datos de PIC16F1947:

  

Leyendo el registro PORTB lee el estado de los pines,   mientras que escribirle escribirá a   el pestillo del puerto. Todas las operaciones de escritura   Son operaciones de lectura-modificación-escritura.   Por lo tanto, una escritura a un puerto implica   que se leen los pines del puerto, este   el valor se modifica y luego se escribe en   el cierre de datos PORT (LATB).

Soy un desarrollador de firmware y mi formación es informática. Todavía me cuesta entender la electrónica y la lógica en el nivel de hardware. Solo tengo los conocimientos básicos.

Por lo tanto, quiero entender qué sucede cuando los datos se escriben para engancharse en el nivel de hardware.

Gracias.

    
pregunta Donotalo

2 respuestas

19

Latch es un tipo de memoria de un bit.

Usemos la imagen en el manual:

CuandoescribesunbitenunpindeE/S,estásalmacenandoestebitdelBusdedatosenelregistrodedatos( D-FlipFlop ). Si TRISx de este bit es 0, los datos de Q del registro de datos estarán en el pin de E / S. Escribir en LATx o PORTx es lo mismo. Vea abajo en rojo:

Porotraparte,leerdesdeLATxesdiferentedeleerdesdePORTx.

CuandoestásleyendodeLATx,estásleyendoloqueestáenelRegistrodedatos( D- FlipFlop ). Vea la imagen de abajo en verde:

YcuandoleesdesdePORTx,estásleyendoelvalorrealdelpindeE/S.Veaabajoenazul:

PIC utiliza operaciones de lectura-modificación-escritura en escritura y puede ser un problema , por lo que utilizan este registro sombra para evitarlo.

    
respondido por el Daniel Grillo
6

Para evitar problemas de lectura-modificación-escritura, debe escribir en el puerto como un todo, en lugar de configurar o restablecer bits individuales en el puerto. Un problema R-M-W puede ocasionar que no se establezca un bit, o que la salida salga alta, especialmente si los pines de salida están generando o hundiendo mucha corriente.

Normalmente se utiliza un "registro de sombra". Establezca o restablezca los bits en eso, y envíelo al puerto, para evitar problemas de R-M-W.

El problema se evita con los PIC de 18 F mediante el uso de un pestillo separado, los bits individuales se pueden configurar y restablecer con impunidad.

    
respondido por el Leon Heller

Lea otras preguntas en las etiquetas