Cómo crear una animación de arranque integrada
Para varios sistemas integrados que se utilizan cada vez más, además de potentes funciones de aplicación, la belleza de la interfaz hombre-máquina también es un aspecto importante para atraer usuarios. Por lo tanto, cada vez más desarrolladores de sistemas integrados esperan que, además de mostrar menús con patrones fijos en la pantalla LCD, también puedan agregar animaciones apropiadas para hacer que toda la pantalla de la interfaz sea más animada y agradable. Existen muchos lenguajes de programación para el diseño de animaciones y existen muchos métodos. Estos métodos se pueden dividir en dos categorías según si necesitan la ayuda de otras aplicaciones y programas: La primera categoría es utilizar solo varios programas. lenguajes y desarrollo Los archivos incluidos en el entorno y el método de diseño de implementación del marco son para instalar software relacionado (como Flash, DirectDraw, etc.) e incluir los archivos de funciones de estos software en el desarrollo; entorno de lenguajes relacionados con *** El mismo método para realizar el diseño de animación. Debido a su gran especificidad y requisitos en tiempo real, los sistemas integrados tradicionalmente no han utilizado muchos lenguajes de desarrollo. Aunque las interfaces animadas no son un programa de alta prioridad en las aplicaciones de sistemas integrados, los desarrolladores deben elegir sus métodos de diseño. pros y contras y úselo de manera flexible, para que pueda ver una interfaz más agradable en lugar de preocuparse por el contenido desordenado de la pantalla LCD.
1 Análisis de métodos de diseño de animación que no requieren la instalación de software de terceros
(1) El logotipo es adecuado para el diseño de animación de dispositivos integrados simples
Lenguaje del logotipo El método de diseño es el más sencillo. Tiene un sistema Turtle Graphics incorporado, que en sí mismo es un lenguaje de pintura que, en teoría, se puede cargar en un sistema integrado para el desarrollo de animaciones. Sin embargo, debido a que un sistema integrado tendrá muchas otras partes de diseño de software, otras funciones no pueden ser obviamente inapropiadas; usar un logotipo, y es aún más irreal instalar dos entornos de desarrollo en un sistema integrado. Por lo tanto, si este método se utiliza para crear animaciones en el desarrollo de sistemas integrados, sólo debería ser adecuado para dispositivos integrados simples de la misma complejidad que utilizan los niños.
(2) El método de borrado más adecuado para sistemas integrados
El lenguaje C es el lenguaje más utilizado para el desarrollo de sistemas integrados y se puede utilizar en niveles de alto, medio y bajo nivel. sistemas finales, por lo que se utiliza Todos los métodos de diseño de animación en lenguaje C son teóricamente adecuados para el desarrollo de animación de pantalla de sistemas integrados. Sin embargo, programas como abrir dinámicamente la ventana gráfica de la imagen, alternar la página de visualización y la página de edición, usar el método de almacenamiento y reproducción de la pantalla y operar directamente la memoria dinámica de la imagen son relativamente complejos y requieren un procesamiento continuo de la imagen. cantidad de recursos de memoria; el diseño de animación de borrado puede resolver los problemas anteriores. Su principio de diseño es: utilizando el mismo principio de color, cuando el color del gráfico y el color de fondo son iguales, el ojo humano no puede percibirlo. En el diseño de animación, cuando se dibuja una imagen en una posición y el color de la imagen es diferente del color de fondo, y luego se dibuja una imagen en otra posición y el color de la imagen también es diferente del color de fondo, entonces se dibujará la imagen. Primero dibuje otra imagen en la posición original y haga que el color de la imagen sea el mismo que el color de fondo, de modo que el ojo humano solo pueda ver la imagen recién dibujada pero no la imagen dibujada anteriormente, de modo que la imagen dibujada anteriormente se sienta borrada.
De esta forma, se dibujan múltiples imágenes de forma continua y la imagen original se borra cada vez que se dibuja una nueva imagen, logrando así un efecto de animación a los ojos del observador. En resumen, desde la perspectiva de un menor consumo de recursos y una velocidad de ejecución más rápida, el autor cree que entre los métodos comunes para diseñar animaciones utilizando lenguaje C, el método más adecuado para sistemas integrados es el método de borrado preferido.
(3) El lenguaje CBuilder en sí no es adecuado para el desarrollo integrado.
El uso del lenguaje CBuilder para diseñar animaciones puede usar fácilmente componentes listos para usar para generar imágenes y controlar el tiempo, resolviendo así el problema. del diseño de animación dos cuestiones muy importantes. Sin embargo, el lenguaje CBuilder en sí no es adecuado para el desarrollo integrado, porque el desarrollo integrado requiere mucho espacio y eficiencia, y CB es una herramienta para el desarrollo de aplicaciones de alto nivel.
Sin embargo, hay dos puntos que vale la pena señalar: primero, muchas empresas ahora desarrollan sus propios sistemas para el desarrollo integrado, que pueden adaptarse para usar CB. Además, Borland está desarrollando C integrado, por lo que puede esperarlo con ansias.
(4) El lenguaje Java es muy adecuado para el diseño de animación de pantalla de sistemas integrados. El lenguaje Java es un lenguaje que se usa a menudo en el desarrollo de sistemas integrados y se usa ampliamente en teléfonos móviles. El método de diseño de animación del lenguaje Java controla el tiempo de animación definiendo subprocesos; el método de doble almacenamiento en búfer para que la imagen se mueva suavemente requiere mucha memoria, por lo que el método más comúnmente utilizado para eliminar el parpadeo de la pantalla es sobrecargar upGlate().
(5) Los métodos del lenguaje C se pueden utilizar para el diseño de animación de sistemas integrados
En el lenguaje C orientado a objetos, hay muchos métodos de diseño de animación para elegir: imágenes dinámicas simples ( como (estrellas que parpadean continuamente) puede utilizar el método de superposición de color de fondo cuando se muestran imágenes dinámicas en una posición fija en la pantalla, puede elegir el método de cambio de imágenes múltiples utilizando el método XOR para dibujar, no provocará un parpadeo de pantalla completa; , y generalmente el efecto es mejor, pero si el uso repetido provocará un parpadeo en la imagen borrada, que aún no es perfecta; las operaciones de píxeles generalmente se usan en combinación con otros métodos de implementación dinámica de imágenes (como la superposición de color de fondo); La tecnología dibuja gráficos en diferentes fotogramas y utiliza cambiar la pantalla entre estos diferentes fotogramas para lograr el efecto de animación. El número específico de fotogramas se puede determinar de acuerdo con las necesidades de la animación real. Esto es similar al principio de la tecnología de doble búfer en lenguaje C, excepto que el doble búfer solo dibuja una imagen de respaldo como una imagen fuera de la pantalla, mientras que el almacenamiento en búfer múltiple dibuja gráficos en múltiples cuadros diferentes y cambia la pantalla entre estos cuadros.
Debido a que la mayoría de las industrias utilizan C/C como lenguaje de desarrollo para sistemas integrados, estos métodos se pueden utilizar para el diseño de animación de sistemas integrados. En el protector de pantalla Nord-Tec Snow Flakes desarrollado por Nord-Tec SoftWare, se logra una animación realista de copos de nieve utilizando tecnología de almacenamiento en búfer múltiple.
(6) Métodos para dibujar líneas de estilo complejas
En el diseño de software SIG (sistema de información geográfica), a menudo es necesario utilizar algunos métodos relativamente fijos pero de uso frecuente al dibujar. Se utiliza para representar estados geográficos, como ríos, ferrocarriles, costas, etc. Obviamente, estos gráficos de símbolos básicos son generalmente líneas relativamente complejas, y la biblioteca de clases básica proporcionada por MFC no proporciona funciones relacionadas que puedan usarse directamente incluso en CDC, que tiene una función de dibujo relativamente poderosa, solo se proporciona LineTo (); Set-Pixel() y otras funciones de dibujo básicas y comunes. El uso de estas funciones para dibujar símbolos SIG básicos es un método relativamente ineficiente y será obvio en una gran cantidad de operaciones de dibujo, por lo que no se recomienda. Sin embargo, es posible a través de Win32, que apareció por primera vez en Windows NT 3.1. La función API LineDDA se utiliza para resolver el problema de dibujar líneas de estilo complejas.
(7) Cómo utilizar VC para lograr una animación sencilla y fluida de alta velocidad
En el desarrollo de muchos software (especialmente software de juegos), lograr una animación fluida y de alta velocidad requiere tecnología relativamente profunda, como OpenGL, DirectX, y puede requerir que los desarrolladores tengan habilidades matemáticas profundas. Sin embargo, si solo desea lograr algunos efectos de animación para la interfaz de la aplicación durante el desarrollo de sistemas integrados, es posible que no necesite las técnicas anteriores. En su lugar, puede utilizar las funciones de dibujo GDI proporcionadas por la API de Windows o encapsuladas por MFC. Aunque la complejidad de la animación requerida no es alta, como desarrollador, no puede reducir sus requisitos de efectos de animación por este motivo. Por lo tanto, es necesario comprender cómo utilizar las funciones GDI para desarrollar animaciones fluidas, sin parpadeos y de alta velocidad.
La clave de esta tecnología es crear un mapa de bits en la memoria tan grande como el área de la ventana donde se muestra la animación, primero usar funciones GDI para dibujar el mapa de bits y luego mostrarlo desde la memoria en el lugar apropiado. tiempo.
Debido a que el mapa de bits se ha dibujado y no se muestra mientras se dibuja como en la programación habitual, el parpadeo se reduce al mostrar un cuadro de gráficos, logrando así una animación suave al mismo tiempo, porque los gráficos se muestran directamente desde la memoria al actual; form, por lo que es muy rápido y permite animaciones de alta velocidad. Si crea otro hilo para dibujar gráficos en segundo plano, se implementarán muchas animaciones de efectos especiales, lo que le dará a la interfaz de usuario del sistema integrado efectos inesperados.
Sobre esta base, también puede optimizar la visualización al mostrar mapas de bits. Por ejemplo: en lugar de mostrar todos los mapas de bits, se muestra una parte de la animación, porque la función BitBlt es muy lenta para transferir bits. Esto está más en línea con las características de los sistemas integrados que valoran la eficiencia.
2 Análisis de métodos de diseño de animación que requieren la instalación de software de terceros
(1) Los dispositivos integrados desarrollados para la enseñanza y la investigación pueden utilizar Ubigraph
Ambos Graphviz y Ubigraph Es un software de generación de teoría de grafos, pero Ubig-raph tiene funciones más potentes. Se puede utilizar para generar rápidamente gráficos e imágenes dinámicas de modelos de teoría de grafos, mostrar intuitivamente las estructuras tridimensionales de varios modelos de teoría de grafos y demostrar. los procesos de varios algoritmos de teoría de grafos. Debido a que puede integrarse en Java, C, C y otros lenguajes, ciertamente es adecuado para el diseño de animación de sistemas integrados, especialmente algunos dispositivos integrados especialmente desarrollados para la enseñanza y la investigación.
(2) Flash es demasiado hermoso para sistemas integrados
Flash es un potente software de animación vectorial, pero utiliza muchas tecnologías avanzadas, pero para poder crear animaciones que crean películas exquisitas. Los efectos especiales todavía merecen un estudio en profundidad. Sin embargo, para el desarrollo de sistemas integrados, es demasiado magnífico; si no hay una necesidad especial de resaltar los exquisitos efectos de los juegos o animaciones, el desarrollador promedio no sacrificará la velocidad y la capacidad del sistema descuidando lo básico.
(3) La aplicabilidad del método DirectDraw a sistemas integrados
DirectDraw utiliza el método de cambio de página para lograr dinámica de imagen. No sólo puede acceder a la memoria del sistema, sino también a la memoria de la pantalla, realizando la dinámica de la imagen sin hacer que la pantalla parpadee. Es una tecnología de "conmutación perfecta", por lo que la tecnología DirectDraw es muy popular entre los programadores, especialmente en la tecnología de realidad virtual. . Sin embargo, es obvio que este método requiere una gran cantidad de memoria y la instalación de los archivos de desarrollo necesarios también requiere una gran cantidad de espacio en el disco duro. Cuando se aplica a sistemas integrados generales, las limitaciones en la velocidad de respuesta serán obvias.
De hecho, el punto central de la programación con DirectDraw es "copiar entre varias superficies". En sistemas integrados que no tienen altos requisitos para la complejidad de la animación de la interfaz, se pueden usar programas C como lenguaje de desarrollo y, en términos de métodos de implementación de animación, se puede usar el método antes mencionado de alternar páginas de visualización y edición de páginas en la programación C. para reemplazar varios métodos DirectDraw de copias alternas de superficies. Sin embargo, si se trata de un sistema integrado a gran escala y el efecto de animación de la interfaz es importante, utilizar el método DirectDraw y el lenguaje de desarrollo orientado a objetos sigue siendo una mejor opción.
Por supuesto, si tiene requisitos especiales para el arte y la artesanía, puede intentar introducir tecnologías más profesionales (como bloqueo de color, clasificación Z y paralaje para efectos 3D) en el diseño del software del sistema integrado. Este tipo de sistema en sí también debe ser profesional y con funciones específicas; de lo contrario, solo quedará en teoría y será difícil de realizar.
3 lenguajes de scripting que se pueden utilizar para el desarrollo de sistemas integrados
Cuando cuando se aplica animación a Internet, puede optar por utilizar el diseño de lenguaje de secuencias de comandos directamente, como JSP, PHP, etc. Muchos de los sistemas integrados actuales necesitan conectarse a la red y las funciones correspondientes. Aunque las animaciones de pantalla de la mayoría de los sistemas no implican la liberación externa, no es más que usar directamente el lenguaje de secuencias de comandos para escribir animaciones en el desarrollo de redes. Sistemas integrados. Una nueva idea.
Python se puede utilizar como lenguaje de desarrollo para sistemas integrados (probado en el sistema operativo Symbian utilizado en los teléfonos inteligentes Nokia).
Su mayor ventaja es que puede conectar fácilmente varios módulos creados en otros lenguajes (especialmente C/C). Como resultado, puede usar Python directamente para escribir animaciones de interfaz simples, o puede usar el lenguaje C para escribir animaciones complejas que requieren mayor velocidad e incrustarlas en programas Python.