El MAX7313AEG+T funciona como un expansor de E/S de 16 puertos direccionable por I2C con control de corriente LED PWM integrado, combinando la expansión GPIO y la conducción LED en un único dispositivo.
Interfaz I2C y direccionamiento: El dispositivo se comunica a través de una interfaz I2C/SMBus estándar de hasta 400 kbps. La dirección esclava de 7 bits viene determinada por los pines AD0, AD1 y AD2, cada uno de los cuales puede conectarse a uno de los cuatro estados (GND, V+, SCL, SDA), dando lugar a 64 direcciones únicas. Esto permite hasta 64 dispositivos MAX7313 en un bus I2C. El host escribe en los registros de configuración, salida, PWM y parpadeo, y lee en los registros de entrada, interrupción y estado utilizando protocolos de lectura/escritura I2C estándar.
Configuración de puertos de E/S: Cada uno de los 16 puertos (P0-P15) es configurable individualmente a través de un par de registros de configuración de 8 bits (uno para P0-P7, uno para P8-P15). Cuando se configura como salida, el puerto actúa como un sumidero de corriente de drenaje abierto capaz de absorber hasta 50 mA a un máximo de 5,5V. Cuando se configura como entrada, el puerto tiene un circuito de detección de transición que monitoriza los cambios de nivel lógico. El umbral de entrada está referenciado a V+, y las entradas están protegidas contra sobretensiones de hasta 5,5 V, lo que permite la conexión directa a sistemas lógicos de 5 V incluso cuando V+ es tan bajo como 2 V.
Arquitectura de control de corriente PWM: El control de intensidad PWM de 8 bits utiliza un esquema jerárquico. El registro de intensidad global de 4 bits (O0-O3) establece un nivel de intensidad grueso aplicado a todas las salidas simultáneamente. Esto proporciona 14 pasos efectivos de intensidad (totalmente apagado es el paso 0, luego 14 pasos desde el mínimo hasta totalmente encendido). A continuación, el registro de intensidad individual de 4 bits para cada salida (I0-I3) divide la intensidad establecida globalmente en 16 pasos más finos. El ciclo de trabajo efectivo para cada salida es proporcional a (Global + 1) x (Individual + 1) / (16 x 16), dando hasta 224 niveles de intensidad únicos. La frecuencia PWM se deriva de un oscilador interno y suele ser de 1,5 kHz, lo suficientemente rápida para evitar parpadeos visibles en aplicaciones LED.
Alternativamente, el control PWM puede conmutarse a un modo unificado de 8 bits en el que un único registro de 8 bits ajusta todas las salidas a la misma intensidad, útil para aplicaciones como la atenuación uniforme de la retroiluminación.
Motor de parpadeo bifásico: Cada salida tiene dos bits de fase de parpadeo (Fase 0 y Fase 1). Durante la Fase 0, la salida puede activarse, desactivarse o parpadear; durante la Fase 1, independientemente. Todas las salidas comparten la misma temporización de parpadeo (controlada por el registro de periodo de parpadeo), pero cada salida selecciona independientemente su comportamiento en cada fase. La arquitectura bifásica permite agrupar los LEDs en patrones de parpadeo sincronizados: por ejemplo, la Fase 0 podría tener los LEDs rojos encendidos y los verdes apagados, mientras que la Fase 1 tiene lo contrario, creando un patrón alterno sin ninguna sobrecarga de la CPU del host.
Detección de Transición e Interrupción: Cuando cualquier puerto configurado como entrada detecta una transición de nivel lógico (flanco ascendente o descendente), la transición se bloquea en el registro de detección de transición. La salida INT (activa-baja, drenaje abierto) se activa cuando se detecta cualquier transición, proporcionando una interrupción al procesador host. El host lee el registro de detección de transición para identificar qué puerto(s) ha(n) cambiado, y luego borra la interrupción leyendo el registro. Esto elimina la necesidad de sondeo y reduce la sobrecarga de la CPU del host.
Protección contra inserción en caliente: Durante el apagado (V+ = 0V), un circuito interno monitorea V+ y mantiene todos los pines de E/S, SDA, SCL, INT y AD0-AD2 en un estado de alta impedancia. Esto evita vías de conducción parásitas que podrían dañar el dispositivo o corromper el bus I2C cuando se inserta una tarjeta que contiene el MAX7313 en un sistema alimentado. Las entradas pueden soportar hasta 6V en este estado, excediendo el rango de operación de 5.5V.
Modo de espera: Cuando todas las salidas están apagadas y no hay comunicación I2C, el dispositivo entra en un estado de espera de bajo consumo que consume sólo 1,2 µA (típico). La interfaz I2C permanece activa y puede activar el dispositivo al coincidir la dirección. El circuito de detección de transiciones también permanece activo en modo de espera, lo que permite la monitorización de entradas mediante interrupciones con un consumo casi nulo.