Resumen: Esta nota de aplicación muestra cómo desarrollar rápidamente el código para el MAX11800-MAX11803 MAX11811 y controladores de pantalla táctil resistiva, y operar con ellos en modo directo o autónomo. Software se ofrece para ayudar a calcular la conversión de datos basado en la configuración del registro.
Información general
Los MAX11800-MAX11803 y MAX11811 controladores de pantalla táctil puede ser rápidamente puesta en funcionamiento en modo directo o autónomo. Esta nota de aplicación se descompone el procedimiento de comunicación en dos pasos. En primer lugar, los usuarios deben configurar todos los registros de configuración. El segundo paso requiere el envío de un conjunto de comandos que produce los datos deseados (X, Y, Z1, Z2). Esta nota de aplicación también proporciona el software que, basándose en la configuración de registro, calcula el tiempo para la MAX11800-MAX11803 y MAX11811 para completar la conversión de datos.
El registro por defecto la configuración de los MAX118xx pantalla táctil resistiva controladores son tales que la pantalla táctil del controlador conectado a la mayoría de los sistemas de panel táctil será funcional, con sólo algunos cambios menores.
Se espera que el usuario está familiarizado con SPI y I ² C comunicación y también tiene acceso a la hoja del controlador de pantalla táctil de datos. Consulte la hoja de datos del dispositivo para ver cómo el I ² C y SPI se manejan.
Registrarse Modificación de direcciones para lectura y escritura
El registro de dirección ha sido modificada para una operación de escritura y lectura, como es requerido por el controlador de pantalla táctil. Esto se muestra en la hoja del dispositivo correspondiente de datos. Las direcciones de registro traducidas se explica en las Tablas 1 y 2 , y 3 para una fácil referencia.
Tabla 1. Registro de Configuración Resumen | |||||||
Dirección Traducido para lectura / escritura | Dirección | Acceso | Pairable (grabación) * | Auto-Incr (Leer) ** | Los datos de longitud (bytes) | Función | |
Escribir | Leer | ||||||
- | 0x01 | 0x00 | R | N | Y | 8 | Estado general |
0x02 | 0x03 | 0x01 | R / W | Y | Y | 8 | Configuración general |
0x04 | 0x05 | 0x02 | R / W | Y | Y | 8 | Resolución de la medida |
0x06 | 0x07 | 0x03 | R / W | Y | Y | 8 | La medición promedio |
0x08 | 0x09 | 0x04 | R / W | Y | Y | 8 | ADC tiempo de la muestra |
0x0A | 0x0B | 0x05 | R / W | Y | Y | 8 | Tiempos de configuración del panel |
0x0C | 0x0D | 0x06 | R / W | Y | Y | 8 | Retraso ADC init. conversión |
0x0E | 0x0F | 0x07 | R / W | Y | Y | 8 | Toque detectar veces pullup |
0x10 | 0x11 | 0x08 | R / W | Y | Y | 8 | Tiempo modo autónomo |
0x12 | 0x13 | 0x09 | R / W | Y | Y | 8 | Ajustes de la abertura (automático) |
0x14 | 0x15 | 0x0A | R / W | Y | Y | 8 | Medición auxiliares.configuración |
0x16 | 0x17 | 0x0B | R / W | Y | Y | 8 | Modo de funcionamiento de configuración |
Un solo comando se puede utilizar para escribir en un número indefinido de la dirección par de datos, es decir, Addr1 + Data1 + + addr2 Data2, etc
** Auto-incr (lectura): Esta dirección se incrementa para que apunte a la siguiente dirección en una lectura.
Los valores predeterminados de estos registros suelen trabajar con casi cualquier configuración de hardware (consulte la hoja de datos para más información). Sin embargo, para optimizar el rendimiento, el usuario deberá ajustar los valores de registro de forma individual para satisfacer sus necesidades específicas de diseño.
Tabla 2. Resumen de los comandos de conversión | ||||||
Comando Traducido | Comandos de medición | Acceso | Pairable (grabación) * | Longitud CMND (bytes) | Función | |
Escribir | Leer | |||||
0xE0 | - | 0x70 | W | N | 8 | X, Y combinado de comandos |
0xE4 | - | 0x72 | W | N | 8 | X, Y, Z1 mando combinado |
0xE8 | - | 0x74 | W | N | 8 | X, Y, Z1, Z2 comando combinado |
0xEC | - | 0x76 | W | N | 8 | AUX de conversión |
0xF0 | - | 0x78 | W | N | 8 | Medida X |
0xF4 | - | 0x7A | W | N | 8 | Y la medición |
0xF8 | - | 0x7C | W | N | 8 | Z1 de medición |
0xFC | - | 0x7E | W | N | 8 | Z2 de medición |
* Un solo comando se puede utilizar para escribir en un número indefinido de la dirección par de datos, es decir, Addr1 + Data1 + + addr2 Data2, etc
Los comandos de la Tabla 2 iniciar una conversión para la medición a tener lugar.
Para usuarios avanzados: Si varias mediciones del mismo tipo se necesitan (por ejemplo, las mediciones múltiples X), donde la configuración del panel actual se mantiene, entonces el bit CONT se puede configurar como 1. Consulte la hoja de datos del dispositivo para más detalles.
Tabla 3. Resumen de datos leídos | ||||||
Dirección Traducido para lectura / escritura | Dirección | Acceso | Auto-Incr (Leer) * | Los datos de longitud (bytes) | Función | |
Escribir | Leer | |||||
- | 0xA1 | 0x50 | R | N | INF | Leer siguiente disponible FIFO bloque de datos |
- | 0xA5 | 0x52 | R | Y | 8 | X MSB (resultado de la conversión directa) |
- | 0xA7 | 0x53 | R | Y | 8 | X LSB (resultado de la conversión directa) |
- | 0xa9 | 0x54 | R | Y | 8 | Y MSB (resultado de la conversión directa) |
- | 0xab | 0x55 | R | Y | 8 | Y LSB (resultado de la conversión directa) |
- | 0xAD | 0x56 | R | Y | 8 | Z1 MSB (resultado de la conversión directa) |
- | 0xAF | 0x57 | R | Y | 8 | Z1 LSB (resultado de la conversión directa) |
- | 0xB1 | 0x58 | R | Y | 8 | Z2 MSB (resultado de la conversión directa) |
- | 0xB3 | 0x59 | R | Y | 8 | Z2 LSB (resultado de la conversión directa) |
- | 0xB5 | 0x5A | R | Y | 8 | AUX MSB (resultado de la conversión directa) |
- | 0xB7 | 0x5B | R | N | 8 | AUX LSB (resultado de la conversión directa) |
Paso 1: Configuración de Registro de Configuración
Establecer los registros de configuración a los valores que se muestran a continuación. (Estos valores son sugerencias para que el sistema funcione. El usuario debe ajustar estos valores en función de su configuración de hardware.)
Dirección de registro | Valor por escrito |
0x01 | Véase más abajo |
0x02 | 0x00 |
0x03 | 0x00 |
0x04 | 0x00 |
0x05 | 0x00 |
0x06 | 0x00 |
0x07 | 0x10 |
0x08 | 0x00 |
0x09 | 0x00 |
0x0A | 0x00 |
0x0B | Véase más abajo |
Registro 0x01
Los bits 4, 5 y 6 pueden afectar el arranque rápido. Los otros bits se debe establecer para un rendimiento óptimo después de que el dispositivo se ha iniciado la comunicación con el huésped.
Bit 4 : 0 = salida TIRQB es un CMOS de buffer de salida, 1 = salida TIRQB es un abierto de desagüe de salida NMOS.
Bit 5 : Si el bit 4 es 1, entonces este bit se selecciona para permitir un pull-up interna de la resistencia (es decir, 0 = desactivar IRQ resistencia interna de pull-up, 1 = activar IRQ resistencia interna de pull-up).
Bit 6 : Esto sólo afecta a la MAX11800 y MAX11802, que tiene la comunicación SPI. 1 soporte para el bus interno = activado, 0 = titular de bus interno desactivado.
Registrarse 0x0B
Modo directo : 0x0B se debe establecer en 0x00.
Autónoma modo de X, Y : 0x0B se debe establecer en 0x20 (bits 6 y 5).
Autónoma modo X, Y, Z1 : 0x0B se debe establecer en 0x40 (bits 6 y 5).
Autónoma modo X, Y, Z1, Z2 : 0x0B se debe establecer en 0x80 (bits 6 y 5).
Nota Importante: El valor predeterminado de 7 bits en el registro 0x0B después de la puesta en marcha es de 1, lo que significa que la parte está en el modo de apagado. El usuario debe escribir 0 al bit 7 del registro 0x0B al poder de la pieza.
Sin embargo, el registro de direcciones que figuran más arriba no utiliza directamente, sino que cambian según el leer y escribir instrucciones que se muestran en la Tabla 1. Los valores utilizados para leer y escribir en estos registros se muestran a continuación.
Dirección de registro | Escribir | Leer |
0x01 | 0x02 | 0x03 |
0x02 | 0x04 | 0x05 |
0x03 | 0x06 | 0x07 |
0x04 | 0x08 | 0x09 |
etc |
or lo tanto, para escribir a la 0xF0 0x01 registro, el usuario va a escribir a 0xF0 0x02. Y para leer de 0x01 registro, el usuario leerá de 0x03.
Paso 2: Medición / Conversión y leer-
El modo directo
Cada lectura de parámetros X, Y, Z1 y Z2 individual
La lectura X en modo directo
- Medida X / conversión : Enviar 0xF0 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- X vuelve a leer los datos : Enviar 0xA5 seguido por una solicitud de 2 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte seguido por la LSByte.
Y en modo de lectura directa
- Y la medición / conversión : Enviar 0xF4 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Y vuelve a leer los datos : Enviar 0xa9 seguido por una solicitud de 2 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte seguido por la LSByte.
Lectura Z1 en modo directo
- Z1 de medición / conversión : Enviar 0xF8 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Z1 datos leídos : Enviar 0xAD seguido por una solicitud de 2 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte seguido por la LSByte.
Lectura de Z2 en modo directo
- Z2 de medición / conversión : Enviar 0xFC . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Z2 datos leídos : Enviar 0xB1 seguido por una solicitud de 2 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte seguido por la LSByte.
Lectura AUX en modo directo
- AUX / medición de conversión : Enviar 0xEC . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Vuelve a leer los datos AUX : Enviar 0xB5 seguido por una solicitud de 2 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte seguido por la LSByte.
Combinado X, Y, en modo directo
- Combinado X, la medición de S / conversión : Enviar 0xE0 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Combinado X, Y vuelve a leer los datos : Enviar 0xA5 seguido por una solicitud de 4 bytes . Ver Tabla 3 para la traducción. El byte de primera lectura será el MSByte para X, el segundo byte será el LSByte para X, el tercer byte será el MSByte de Y, y el cuarto byte será el LSByte de Y.
Combinado X, Y, Z1 en modo directo
- Combinado X, Y, Z1 de medición / conversión : Enviar 0xE4 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Combinado X, Y, Z1 datos leídos : Enviar 0xA5 seguido por una solicitud de 6 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte para X; el segundo byte será el LSByte para X; el tercer byte será el MSByte para Y; el cuarto byte será el LSByte para Y; el quinto byte será el MSByte para Z1 , y el sexto byte será el LSByte para Z1.
Combinado X, Y, Z1, Z2 en modo directo
- Combinado X, Y, Z1, Z2 de medición / conversión : Enviar 0xE8 . Ver Tabla 2 para la traducción.
- Ponga un retraso para la conversión de arriba para completar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
- Combinado X, Y, Z1, Z2 datos leídos : Enviar 0xA5 seguido de una petición de 8 bytes . Ver Tabla 3 para la traducción. El byte de lectura primero será el MSByte para X; el segundo byte será el LSByte para X; el tercer byte será el MSByte para Y; el cuarto byte será el LSByte para Y; el quinto byte será el MSByte para Z1 ; el sexto byte será el LSByte para Z1; el séptimo byte será el MSByte para Z2, y el byte de ocho será Z2LSB.
Modo autónomo
El modo autónomo se puede realizar de dos maneras:
Técnica # 1 : Lea el FIFO de inmediato cuando el TIRQB pasa a nivel bajo. De este modo, nunca la FIFO llena más allá del primer conjunto de datos.
Técnica # 2 : Esperar hasta después de la TIRQB baja para el FIFO para obtener una pequeña cantidad de datos antes de leer el buffer completo. Este método funciona bien cuando el anfitrión no puede responder lo suficientemente rápido para la interrupción. Sin embargo, es importante cuando se utiliza esta técnica que el FIFO no se desborde. Si esto sucede, los datos se está perdido. Para Técnica n º 2 para que funcione correctamente, es obligatorio que los servicios de acogida del procesador MAX11800-MAX11803 antes de que los desbordamientos de FIFO. Se puede monitorear el bit 3 de 0x00 Register (Registro de Estado General) para supervisar de desbordamiento.
Técnica # 1
El TIRQB pasa a nivel bajo cuando el FIFO recibe los datos. Se vuelve a subir inmediatamente después de la FIFO está completamente leer. Primero asegúrese de que el modo autónomo correcta se encuentra en el registro 0x0B (por ejemplo, X, Y o X, Y, Z1 o X, Y, Z1, Z2).
Leer X, Y en modo autónomo
X, Y vuelve a leer desde el FIFO: Enviar 0xA1 seguido por una solicitud de 4 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y 1 MSB, Y 1 LSB.
Leer X, Y, Z1 en modo autónomo
X, Y, Z1 leído desde el FIFO : Enviar 0xA1 seguido por una solicitud de 6 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 una MSB, Z1 1 LSB.
Leer X, Y, Z1, Z2 en modo autónomo
X, Y, Z1, Z2 leído desde el FIFO: Enviar 0xA1 seguido de una petición de 8 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 una MSB, Z1 1 LSB, Z2 unaMSB, Z2 1 LSB.
Técnica # 2
El MAX11800-MAX11803 MAX11811 y tienen diferentes tamaños FIFO. El MAX11800-MAX11803 tiene 128 bytes dememoria RAM , dando 16 conjuntos de datos como el máximo. En contraste, el MAX11811 tiene 64 bytes de memoria RAM, dando a 8 series de datos como el máximo. El modo autónomo el manejo de datos se ha dividido en dos secciones, una para el MAX11800-MAX11803 y el otro para MAX11811, para una fácil lectura.
MAX11800-MAX11803
Leer X, Y en modo autónomo
- X, Y vuelve a leer desde el FIFO : Enviar 0xA1 seguido por una petición de 64 bytes . Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, X 2 MSB, X 2 LSB, Y 2 MSB, Y 2 LSB, ..., X 16 MSB, X 16 LSB, Y 16 MSB, Y 16 LSB.
- Ponga un retraso para el FIFO para llenar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
Leer X, Y, Z1 en modo autónomo
- X, Y, Z1 leído desde el FIFO : Enviar 0xA1 seguido por una petición de 96 bytes . Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 unaMSB, Z1 1 LSB, X 2 MSB, X 2 LSB, Y 2 MSB, Y 2 LSB, Z1 2 MSB, Z1 2 MSB, ..., X 16 MSB, X 16 LSB, Y 16MSB, Y 16 LSB, Z1 16 MSB, Z1 16 LSB.
- Ponga un retraso para el FIFO para llenar : Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
Leer X, Y, Z1, Z2 en modo autónomo
- X, Y, Z1, Z2 leído desde el FIFO: Enviar 0xA1 seguido por una solicitud de 128 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 unaMSB, Z1 1 LSB, Z2 una MSB, Z2 1 LSB, X 2 MSB, X 2 LSB, Y dos MSB, Y 2 LSB, Z1 2 MSB, Z1 2 MSB, Z2 2MSB, Z2 2 LSB, ..., X 16 MSB, X 16 LSB, Y 16 MSB, Y 16 LSB, Z1 16 MSB, Z1 16 MSB, Z2 16 MSB, Z2 16 LSB.
- Ponga un retraso para el FIFO para llenar: Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
MAX11811
Leer X, Y en modo autónomo
- X, Y vuelve a leer desde el FIFO: Enviar 0xA1 seguido por una petición de 32 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, X 2 MSB, X 2 LSB, Y 2 MSB, Y 2 LSB, ..., X 8 MSB, X 8 LSB, Y 8 MSB, Y 8 LSB.
- Ponga un retraso para el FIFO para llenar: Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
Leer X, Y, Z1 en modo autónomo
- X, Y, Z1 leído desde el FIFO: Enviar 0xA1 seguido por una petición de 48 bytes. Ver Tabla 3 para la traducción.Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 una MSB, Z1 1LSB, X 2 MSB, X 2 LSB, Y 2 MSB, Y 2 LSB, Z1 2 MSB, Z1 2 MSB, ..., X 8 MSB, X 8 LSB, Y 8 MSB, Y 8 LSB, Z18 MSB, Z1 8 LSB.
- Ponga un retraso para el FIFO para llenar: Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
Leer X, Y, Z1, Z2 en modo autónomo
- X, Y, Z1, Z2 leído desde el FIFO: Enviar 0xA1 seguido de una petición de 64 bytes. Ver Tabla 3 para la traducción. Los datos recibidos estarán en el orden siguiente: X 1 MSB, X 1 LSB, Y una MSB, Y 1 LSB, Z1 unaMSB, Z1 1 LSB, Z2 una MSB, Z2 1 LSB, X 2 MSB, X 2 LSB, Y dos MSB, Y 2 LSB, Z1 2 MSB, Z1 2 MSB, Z2 2MSB, Z2 2 LSB, ..., X 8 MSB, X 8 LSB, Y 8 MSB, Y 8 LSB, Z1 8 MSB, Z1 8 LSB, Z2 8 MSB, Z2 8 LSB.
- Ponga un retraso para el FIFO para llenar: Utilice el software de conversión MAX118xx tiempo para calcular el tiempo de espera basado en la configuración de Registro de Configuración.
Partes Relacionadas
MAX11800
De baja potencia, compacta pantalla táctil resistiva-controladores con I ² C / interfaz SPI
Muestras gratuitas
MAX11801
De baja potencia, compacta pantalla táctil resistiva-controladores con I ² C / interfaz SPI
Muestras gratuitas
MAX11802
De baja potencia, compacta pantalla táctil resistiva-controladores con I ² C / interfaz SPI
Muestras gratuitas
MAX11803
De baja potencia, compacta pantalla táctil resistiva-controladores con I ² C / interfaz SPI
Muestras gratuitas
MAX11811
TacTouch ™, baja potencia, ultra-pequeño, pantalla táctil resistiva de caudal con controlador háptico
Muestras gratuitas
No hay comentarios:
Publicar un comentario