Consola portátil (brazo equipo de MCU) (2 / 6 paso)

Paso 2: Software de conversión de mapa de bits

Desde el comienzo del proyecto, sabíamos que era imposible utilizar todo tipo de formatos de color en las imágenes que queremos mostrar. Con el fin de cumplir con las especificaciones y se respeten las restricciones técnicas, necesitábamos eligió un fijo y el formato de quedarte con él. El formato del color requerido es RGBA con píxeles de 16 bits y componente de transparencia de color y 4 bits 12 bits. Sabiendo que este formato no es una norma, tenemos que desarrollar un software de conversión para crear imágenes de este formato. Otra ventaja de este tipo de software es la posibilidad de modificar cualquier algunas características de la imagen, como la transparencia.

Elegimos el C++ como lenguaje de programación y utilizamos el QT creator para la biblioteca de gráficos. El C++ es un lenguaje de desarrollo de software que estamos acostumbrados y sabíamos que ese archivo streamss sería fácil de manejar. Hemos conseguido leer las imágenes que queríamos modificar sin ningún problema. Gracias a la librería Qt y el software de QT Creator, hemos creado una interfaz gráfica muy simple, por lo tanto, haciendo el uso del software es muy intuitivo.

El software que hemos diseñado es muy útil para cambiar el formato de las imágenes si queremos utilizarlas con éxito en la tarjeta FPGA. Las imágenes a convertir deben estar en el formato de mapa de bits 24 bits debido a tres razones:

  • Este tipo de formato no comprime las imágenes. Ya que será la imagen que queremos guardar en la FPGA no serán comprimidos, será necesaria una imagen descomprimida.
  • FPGA procesamiento de imagen para compresión/descompresión (JPEG/MPEG) ya existe como núcleo abierto IPs pero es muy difícil de implementar. Por esta razón es más fácil de proceso de imágenes que ya se descomprimen. Debemos señalar que el tamaño excesivo de este tipo de imágenes no es un problema debido a la zona de memoria disponible y la velocidad de transferencia de datos a través de la DMA.
  • Su calidad es superior a 16 bits.
  • Está disponible en todas partes (mucho software disponible como "Pintura" puede convertir a cualquier tipo de imágenes en formato de mapa de bits 24 bits).
  • Transparencia no está disponible. Que nos da más flexibilidad en el trato con la transparencia en nuestro propio camino.

Mencionamos anteriormente la gestión de la transparencia. En una cuestión de hecho, nuestro software también fue creado con el fin de establecer los niveles de transparencia de los colores de una imagen. Puesto que nuestra tarjeta gráfica puede manejar hasta 4 capas de pantalla independiente, es crucial para poder cambiar la transparencia de una imagen o establecer un transpareny color en pantalla lo contrario multicapa itn no traerá ningún beneficio.

Tenemos dos opciones para esta transparencia:

  1. El primero consiste en hacer opaco una serie de color (5 máximo). Ej.: Transparentar el fondo de un sprite
  2. El segundo consiste en elegir la transparencia de todos los colores sin tomar en cuenta en la opción número una. Ej.: Hacer transparente la imagen del fuego 50% con el fin de refinar su animación.

Procedimiento

Primer paso: Carga de la imagen y elegir los parámetros correctos de la configuración.

Comenzamos por elegir la imagen a convertir y la ruta donde queremos guardarlo. A continuación, ponemos los parámetros de transparencia que explicamos en la sección anterior. Cuando la imagen ha terminado de cargarse, el software comenzará por leer los primeros bytes de la imagen. Estos bytes contiene las dimensiones de la imagen y no se copiarán en el archivo de salida porque la tarjeta FPGA no tome en cuenta estos datos pero utiliza sólo los datos correspondientes a un píxel. Después de la adquisición de los primeros bytes de la imagen, el software puede iniciar la conversión.

Segundo paso: Conversión de la imagen.

En esta segunda fase el software sólo leerá cada byte definir los colores de un píxel para ponerlo en un formato de 16 bits. Es un proceso simple utilizando un desplazamiento derecha binario de 4 bits para poder tener 4 bits por color en lugar de 8 bits. Que agregar a estos colores de og 12 bit 4 bit de transparencia utilizando los parámetros definido al principio del procedimiento.

Tercer paso: Ajuste el formato de derecho de la imagen.

Este paso final consiste en ajustar los datos. La matriz de mapa de bits almacena los píxeles en orden teniendo en cuenta el nivel de líneas decreciente. Desde las especificaciones del formato de imagen que queremos imponer un orden creciente de los píxeles, tenemos que reorganizar los píxeles en el orden correcto. Nos encontramos con el mismo problema para el orden de bits. Hemos corregido cambiando 0xRGBA por 0xGRAB.

Una vez que la imagen está en el formato deseado, la izquierda lo único que es transferir la imagen a la RAM de la FPGA mediante el microcontrolador STM32.

Artículos Relacionados

Consola portátil de RetroGame (frambuesa Pi)

Consola portátil de RetroGame (frambuesa Pi)

Este instructable es escrito para el curso FabLab haciendo de las Rotterdam University of Applied Sciences.Para este curso voy a hacer una consola de juego portátil en combinación con una Raspberry Pi y una carcasa personalizada.Para una asignación d
Consola portátil frambuesa Pi $20

Consola portátil frambuesa Pi $20

Hay toneladas de emuladores retros juego frambuesa Pi alrededor en el internet, pero la mayoría son bastante cara. Con el nuevo $5 frambuesa Pi cero, en este Instructable te voy a mostrar cómo construir una batería totalmente portátil alimentado por
Cómo construir un sistema de computadora de mano consola portátil de Nintendo N64

Cómo construir un sistema de computadora de mano consola portátil de Nintendo N64

Emuladores de N64 no funciona muy bien, que el tartamudeo con video, problemas de framerate, problemas de compatibilidad. Es la única manera de jugar correctamente los juegos de N64 en el hardware original; hecho.Hacer un portable de mano básicamente
Consola portátil (equipo de GPU)

Consola portátil (equipo de GPU)

ContextoPara nuestro proyecto de ingeniería, nuestros tutores quiso enfrentar los desafíos del diseño de un sistema en tiempo real con un relativamente alto rendimiento sobre los limitados recursos (memoria, ancho de banda).Las especificaciones requi
PlayCase v1.5: consola portátil modular caso, completo HD 19 pulgadas, que lleva añadido altavoces!

PlayCase v1.5: consola portátil modular caso, completo HD 19 pulgadas, que lleva añadido altavoces!

Haz un completo monitor de HD en el formato más pequeño posible: 19,5 pulgadasEl bisel de la tira y poner el marco en un caso de vueloAñadir un sistema de fijación modular para adaptarse a la mayoría de consolas; PlayStation 3 o Playstation 4, decodi
¿Cómo hacer una ordenador de mano portátil Nintendo 64 N64 consola de juegos - iNto64

¿Cómo hacer una ordenador de mano portátil Nintendo 64 N64 consola de juegos - iNto64

siempre quería hacer su consola de juegos Nintendo 64 (N64) en una unidad portátil de mano para "sobre la marcha" jugando?Este sistema escurr las baterías del Li-ion que son lo suficientemente potente como para ejecutar el sistema y son también
Caja de consola de juego portátil todo-en-uno

Caja de consola de juego portátil todo-en-uno

construcción de caja de esta consola portátil todo-en-uno fue una gran decisión! No sólo lo hace fácil de transportar, también protege a mi sistema de juego y mantenerlo organizado.Esto es sólo una descripción, Ve el Instructable completa aquí!¿Por q
Hacer una NES portátil. (sistema de entretenimiento portátil de nintendo)

Hacer una NES portátil. (sistema de entretenimiento portátil de nintendo)

me ha encantado la idea de mano portátil de juegos de azar ya que mi primera Game Boy y yo hemos amado la idea de hacer consolas portátiles aún más! VI unos walkies NES e hicieron todo muy bien. Decidí hacer mi propio y publicar un vídeo de cómo hace
Hacer un sistema de juegos portátil-en Photoshop!

Hacer un sistema de juegos portátil-en Photoshop!

Este es mi primer instructivo que visitas el potente y extraordinario mundo de photoshop, les espero guste!Me sorprendió que había nada como esto en instructables hasta ahora, así que pensé que mostraría todo mi proyecto que hice con photoshop CS4. P
Carga Solar de 5W de Tim, 12V 4.5AH fuente de alimentación portátil.

Carga Solar de 5W de Tim, 12V 4.5AH fuente de alimentación portátil.

Este proyecto es principalmente diseño para cargar gadgets como ordenadores portátiles y equipos de comunicación, mano teléfonos, GPS, luces al hacer la misión de trabajan en áreas remotas sin suministro de electricidad de la red.La capacidad de la f
Cómo jugar en una consola en un ordenador portátil (NTSC solamente)

Cómo jugar en una consola en un ordenador portátil (NTSC solamente)

en este instructable te ser mostrando cómo jugar un juego de consola en cualquier portátil decente con puerto usb libre 1. Im sorry pero fácil cap no funciona con NTSC solo PALUsted puede hacer esto con una torre, pero hay una manera más eficaz de ha
Consola de juegos portátil RetroPie del pobre

Consola de juegos portátil RetroPie del pobre

Me encanta los juegos de video. Me gustaría poder llevarlos dondequiera que vaya a jugar. Pero tengo un problema. No tengo demasiado dinero para gastar en juegos de video. Que tomé una de las cosas que me encantan (video juegos), hecho portable y lo
Vesa brazo portátil soporte ajustable

Vesa brazo portátil soporte ajustable

se trata de la edición del martes de las 5 ibles en 5 días combate de jaula (como cailtinsdad).Hoy tenemos un proyecto que he estado trabajando durante un tiempo (algunos de ustedes podrían haber vistolo que acechan en el fondo)Encima de hasta hace p
Consola de juegos portátil frambuesa Pi

Consola de juegos portátil frambuesa Pi

Esta consola de juegos portátil es posiblemente lo más divertido que he tenido usando un Raspberry Pi. Y no es sólo la acumulación que es divertido; Ahora tengo una consola de juegos pleno funcionamiento, por lo que puedo jugar todos mi favorito arca