PREVIEW
Pixel Screen (16x16)

Pixel Screen (16x16)

Visualization signal_cellular_alt Advanced schedule 30 min

Pantalla de pixeles (16x16)

Descripcion general

  • Proposito: La pantalla de pixeles (16x16) es un componente de visualizacion que muestra una cuadricula de 16x16 pixeles, con el estado de cada pixel determinado por valores de memoria. Este componente es util para crear graficos simples, mostrar patrones o visualizar contenidos de memoria en sus circuitos digitales.
  • Simbolo: La pantalla de pixeles esta representada por una cuadricula de visualizacion rectangular. No tiene pines de conexion externos: lee los datos de visualizacion directamente de la memoria interna de un componente RAM conectado.
  • Rol en DigiSim.io: Proporciona capacidad de salida visual para circuitos digitales, permitiendo la visualizacion de graficos, visualizacion de patrones y monitoreo del contenido de memoria.

Pixel Screen 16x16 component

Descripcion funcional

El componente de pantalla de pixeles lee sus datos de visualizacion de un componente RAM conectado, interpretando cada bit en memoria como un pixel que puede estar encendido o apagado. El componente ofrece una resolucion de 16x16 pixeles (256 pixeles en total), lo que requiere 32 bytes de memoria para representar (1 bit por pixel).

Pines

La pantalla de pixeles tiene 0 entradas y 0 salidas. No tiene ningun pin de conexion externo. En su lugar, lee los datos de visualizacion directamente de la memoria interna de un componente RAM conectado, utilizando la direccion de inicio configurada para localizar los datos de pixeles.

Configuracion

La pantalla de pixeles tiene varias propiedades configurables:

  1. Direccion de inicio: La direccion de memoria inicial donde comienzan los datos de visualizacion (predeterminada: 0xE0)
  2. Color de primer plano: El color de los pixeles activos (ON)
  3. Color de fondo: El color de los pixeles inactivos (OFF)
  4. Escala de pixel: El tamano de cada pixel en la pantalla

Mapeo de memoria

La cuadricula de pixeles de 16x16 se mapea a la memoria de la siguiente manera:

  • Cada byte en memoria representa 8 pixeles horizontales
  • Se utilizan 32 bytes consecutivos (256 bits) para toda la pantalla
  • Los bits se mapean de MSB a LSB dentro de cada byte

Por ejemplo, con una direccion de inicio de 0xE0:

Direccion Byte Descripcion
0xE0 [76543210] Primeros 8 pixeles de la fila 0
0xE1 [76543210] Ultimos 8 pixeles de la fila 0
0xE2 [76543210] Primeros 8 pixeles de la fila 1
0xE3 [76543210] Ultimos 8 pixeles de la fila 1
... ... ...
0xFE [76543210] Primeros 8 pixeles de la fila 15
0xFF [76543210] Ultimos 8 pixeles de la fila 15

Nota: Los bits 7-0 dentro de cada byte representan 8 pixeles horizontales, mapeados de MSB a LSB

Uso

Para usar el componente de pantalla de pixeles:

  1. Agregue el componente a su circuito junto con un componente RAM

  2. La pantalla de pixeles lee automaticamente de la memoria del componente RAM conectado: no se requiere cableado de pines

  3. Establezca la direccion de inicio en las propiedades del componente para especificar donde comienzan los datos de visualizacion en la RAM

  4. Escriba patrones de bits en las direcciones de memoria para crear su visualizacion:

    • Escriba un 1 para encender un pixel
    • Escriba un 0 para apagar un pixel
  5. La pantalla se actualiza automaticamente cuando cambian los contenidos de la RAM

Ejemplos de aplicacion

Visualizacion de patron simple

// Almacenar un patron de tablero de ajedrez
// Primera fila (pixeles alternados)
RAM[0xE0] = 0b10101010;
RAM[0xE1] = 0b10101010;
// Segunda fila (patron invertido)
RAM[0xE2] = 0b01010101;
RAM[0xE3] = 0b01010101;
// Repetir patron para las filas restantes...

Visualizacion de sprite 16x16

// Mostrar una cara simple
// Ojos (filas 4-5)
RAM[0xE8] = 0b00100100;
RAM[0xE9] = 0b00000000;
RAM[0xEA] = 0b00100100;
RAM[0xEB] = 0b00000000;
// Boca (fila 10)
RAM[0xF4] = 0b00011000;
RAM[0xF5] = 0b00100100;

Creacion de animaciones

Para crear animaciones:

  1. Actualice los contenidos de la RAM para cada cuadro
  2. Use un divisor de reloj para controlar la tasa de refresco
  3. Sincronice las escrituras de RAM con el ciclo de refresco de la pantalla para evitar parpadeo

Consejos y trucos

  • Use un area separada de RAM como "buffer trasero" para preparar el siguiente cuadro, luego copielo al area de visualizacion para evitar parpadeo
  • Cree rutinas de dibujo para establecer pixeles individuales calculando el bit y byte apropiados
  • Para efectos de color, puede modificar los colores de primer plano y fondo a traves de las propiedades del componente
  • Combine con otros componentes como contadores o unidades de control para crear pantallas autonomas
  • Para animaciones suaves, asegurese de que su circuito actualice la pantalla a un ritmo constante

school Ruta de Aprendizaje

arrow_back Requisitos Previos

arrow_forward Siguientes Pasos

help_outline Preguntas Frecuentes

¿Cómo funciona la pantalla de píxeles?

La pantalla 16x16 tiene 256 píxeles, cada uno controlado por señales binarias. Direcciona las coordenadas X e Y y establece el valor del píxel.

¿Cómo se organizan los datos de píxeles?

Típicamente usa entradas de dirección X e Y para seleccionar un píxel, con entrada de datos para establecer su estado (encendido/apagado o valor de color).

play_arrow Ejecutar Circuito en Vivo

Ver Otros Componentes