Microcontroladores - PPI 8255

 
Vista:

PPI 8255

Publicado por José Laverde (1 intervención) el 14/03/2005 01:50:17
Muchachos necesito toda la información habida y por haber de esta PPI (8255) el que me pueda enviar algo se lo agradecere...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PPI 8255

Publicado por jose (1 intervención) el 29/07/2007 01:23:32
12.2. - EL INTERFAZ DE PERIFÉRICOS 8255.
El PPI 8255 es un dispositivo de E/S general, programable, capaz de controlar 24 líneas con diferentes configuraciones (entrada/salida) y en hasta 3 modos de operación.

12.2.1 - DESCRIPCIÓN DEL INTEGRADO.

Conexiones del 8255 con el exterior:





D0..D7: Bus de datos bidireccional de 3 estados.
RESET: Esta señal borra el registro de control y todos los puertos (A, B y C) son colocados en modo entrada.
-RD: Utilizada por la CPU para leer información de estado o datos procedentes del 8255.
-WR: Utilizada por la CPU para enviar palabras de control o datos al 8255.
A0..A1: Líneas de dirección: permiten seleccionar uno de los tres puertos o el registro de control.
PA0..PA7: Puerto A: puerto de entrada/salida de 8 bits.
PB0..PB7: Puerto B: puerto de entrada/salida de 8 bits.
PC0..PC7: Puerto C: puerto de entrada/salida de 8 bits.


DESCRIPCIÓN FUNCIONAL

Las dos líneas de direcciones definen cuatro puertos de E/S en el ordenador: los tres primeros permiten acceder a los puertos A, B y C; el cuarto sirve para leer o escribir la palabra de control. El 8255 está dividido en dos grupos internos: el grupo A, formado por el puerto A y los 4 bits más significativos del puerto C; y el grupo B, constituido por el puerto B junto a los 4 bits menos significativos del puerto C. El puerto C está especialmente diseñado para ser dividido en dos mitades y servir de apoyo a los puertos A y B en algunos sistemas.

PROGRAMACIÓN DEL 8255

El 8255 soporta 3 modos de operación: el modo 0 (entrada y salida básica), el modo 1 (entrada y salida con señales de control) y el modo 2 (bus bidireccional de comunicaciones). Tras un Reset, los 3 puertos quedan configurados en modo entrada, con las 24 líneas puestas a "1" gracias a la circuitería interna. Esta configuración por defecto puede no obstante ser alterada con facilidad. El modo para el puerto A y B se puede seleccionar por separado; el puerto C está dividido en dos mitades relacionadas con el puerto A y el B. Todos los registros de salida son reseteados ante un cambio de modo, incluyendo los biestables de estado. Las configuraciones de modos son muy flexibles y se acomodan a casi todas las necesidades posibles. Los tres puertos pueden ser accedidos en cualquier momento a través de la dirección E/S que les corresponde, como se vio en el apartado anterior. La palabra de control a enviar a la 4ª dirección es:



Si el bit más significativo de la palabra de control está borrado, es tratada entonces como un comando especial que permite activar o inhibir selectivamente los bits del puerto C:


Esto es particularmente útil para los modos 1 y 2, donde las interrupciones generadas por las líneas del puerto C pueden ser activadas o inhibidas simplemente poniendo a 1 ó 0, respectivamente, el flip-flop interno INTE correspondiente a la interrupción que se trate. Todos son puestos a cero tras establecer el modo.
MODOS DE OPERACIÓN DEL 8255
MODO 0: Esta configuración implementa simples funciones de entrada/salida para cada bit de los 2 puertos de 8 bits y los 2 puertos de 4 bits; los datos son leídos y escritos sin más, sin ningún tipo de control adicional. Los puertos pueden ser configurados de entrada (sin latch) o salida (los datos permanecen memorizados en un latch).
MODO 1: Este modo es el strobed input/output (entrada/salida a través de un protocolo de señales). Existen dos grupos (A y B) formados por los puertos A y B más el puerto C, que es repartido a la mitad entre ambos grupos para gestionar las señales de control. Tanto si se configura de entrada como de salida, los datos permanecen en un latch. Con este modo es factible conectar dos 8255 entre sí para realizar transferencias de datos en paralelo a una velocidad considerable, con posibilidad de generar interrupciones a la CPU en el momento en que los datos son recibidos o hay que enviar uno nuevo (consúltese documentación técnica).
MODO 2: En este modo se constituye un bus bidireccional de 8 bits, por el que los datos pueden ir en un sentido o en otro, siendo el flujo regulado de nuevo por señales de control a través del puerto C. Este modo sólo puede operar en el Grupo A. Tanto las entradas como salidas son almacenadas en latch.
NOTA: Existen varias combinaciones posibles de estos modos, en las que las líneas del puerto C que no son empleadas como señales de control pueden actuar como entradas o salidas normales, quedando las líneas de control fuera del área de influencia de los comandos que afectan a las restantes.

12.2.2 - EL 8255 EN EL PC.
El 8255 es exclusivo de los PC/XT; ha sido eliminado de la placa base de los AT y PS/2, en los que ciertos registros realizan algunas funciones que en los PC/XT realiza el 8255; por ello, en estas máquinas NO se puede programar el 8255 (ha sido eliminado y no existe nada equivalente). El 8255 de los PC/XT está conectado a la dirección base E/S 60h; por ello, los puertos A, B y C se acceden, respectivamente, a través de los puertos de E/S 60h, 61h y 62h; la palabra de control se envía por el puerto 63h: la BIOS del PC y XT programa el 8255 con una palabra de control 10011001b, que configura todos los puertos en el modo 0, con el A y C de entrada y el B de salida. El 8255 es empleado, básicamente, para almacenar los datos que llegan del teclado (puerto A), para leer la configuración del ordenador en los conmutadores de la placa base (puerto C) y para controlar el altavoz y la velocidad en los XT-Turbo (puerto B).
12.2.3 - UN MÉTODO PARA AVERIGUAR LA CONFIGURACIÓN DEL PC/XT.
Aviso: los PC tienen un byte de identificación 0FFh; los XT 0FEh (este byte está en la posición de memoria 0FFFF:0Eh); por otro lado, parte de esta información es accesible también por medio de la variable BIOS ubicada en 40h:10h, método mucho más recomendable.

Puerto A (60h): tiene una doble función: cuando el bit 7 del puerto B está a 1, el puerto A recibe el código de rastreo de la tecla pulsada, que luego puede ser leído desde la interrupción del teclado. Si el bit 7 del puerto B está a 0, entonces el puerto A devuelve información sobre la configuración del sistema en los PC (no en los XT): en el bit 0 (a 1 si hay disqueteras), bits 2..3 (número de bloques de 16 kb de memoria ¡que obsoleto e inútil!), bits 4..5 (tipo de pantalla: 11 MDA, 10 Color 80x25, 01 Color 40x25) y bits 6..7 (número de unidades de disco, si el bit 0=1).

Puerto B (61h): bit 0 (PC/XT: conectado a la línea GATE del contador 2 del 8253), bit 1 (PC/XT: conectado al altavoz), bit 2 (sólo PC: selecciona el contenido del puerto C), bit 3 (en XT: selecciona contenido del puerto C; en PC: a 0 para activar el motor del casete), bit 4 (PC/XT: a 0 para activar la RAM), bit 5 (PC/XT: a 0 para activar señales de error en el slot de expansión), bit 6 (PC/XT: a 1 activa la señal de reloj del teclado), bit 7 (en PC: empleado para seleccionar la función del puerto A; tanto en PC como en XT sirve además para enviar una señal de reconocimiento al teclado).

Puerto C (62h):
Si el bit 2 del puerto B (PC) o el bit 3 del puerto B (XT) están a 1:
- En los PC: los bits 0..3: mitad inferior del 2º banco de conmutadores de la placa base (RAM en slots de expansión); bit 4 (entrada de casete).
- En los XT: bit 1 (activo si coprocesador instalado), bits 2..3 (bancos de RAM en placa base).
- En PC/XT: bit 5 (OUT del contador 2 del 8253), bit 6 (a 1 si comprobar errores en slots de expansión), bit 7 (1 si comprobar error de paridad).
Si el bit 2 del puerto B (PC) o el bit 3 del puerto B (XT) están a 1:
- En los PC: bits 0..3 parte alta del segundo banco de conmutadores de configuración (no usada).
- En los XT: bits 0..1 tipo de pantalla (11 MDA, 10 color 80x25, 01 color 40x25), bits 2..3 (nº de disqueteras menos 1).
- En PC/XT: los bits 4..7 están igual que en el caso anterior (no dependen del bit 2 ó 3 del puerto B).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PPI 8255

Publicado por Moise (2 intervenciones) el 12/02/2008 06:44:38
saludo mis hermanos mandame algunas codigo para configurar una PPI 8255
por vafor,te nesecito eso muiy pronto..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar