Red de conocimiento informático - Material del sitio web - Cómo entender la plataforma de desarrollo de sistemas integrados

Cómo entender la plataforma de desarrollo de sistemas integrados

Plataforma de diseño de hardware

La plataforma de hardware consta de un sistema básico (que incluye CPU y memoria) y módulos de circuito de interfaz periféricos. El sistema básico proporciona el entorno de ejecución y depuración más básico para el núcleo del sistema operativo. Los módulos de interfaz periféricos incluyen varios circuitos de interfaz de hardware que se utilizan ampliamente en la actualidad, como módulos LCD, módulos de pantalla táctil, módulos de tarjeta CF, módulos USB y módulos Ethernet. , módulos de tarjeta IC, etc., se pueden seleccionar y utilizar fácilmente según las necesidades de los desarrolladores.

Actualmente, la plataforma de hardware está basada en el microprocesador DragonBall EZ328 (16MHz) de Motorola. Su configuración principal incluye 8MB EDO DRAM, 4MB FLASH, LCD monocromático de 320 x 240 píxeles, 6 botones de entrada y RS232 unidireccional. Interfaz Ethernet unidireccional de 10M, etc. El EZ328 es un dispositivo integrado de 32 bits ampliamente utilizado. EZ328 es un microprocesador integrado de 32 bits ampliamente utilizado que integra una gran cantidad de módulos funcionales y tiene fuertes capacidades de expansión. EZ328 cancela la unidad de administración de memoria (MMU), lo que reduce el costo del hardware y el consumo de energía, y EZ328 admite el modo de inicio y facilita enormemente la depuración del sistema. . En nuestra placa de desarrollo, siempre que el pin EMUBRK del EZ328 esté en nivel bajo y se realice un reinicio del sistema, el EZ328 se puede poner en modo de inicio y su cargador de inicio incorporado comenzará a ejecutarse, inicializando el controlador UART integrado en el chip y prepárese para recibir datos. Esto permite a los desarrolladores inicializar la placa escribiendo en registros a través del controlador UART y luego descargar el programa en la RAM y FLASH de la placa para depurarlo. Al mismo tiempo, la CPU de la plataforma de hardware se puede actualizar fácilmente a VZ328 (con frecuencia de 33MHz, un sucesor del EZ328). Además, el software desarrollado en la plataforma de hardware EZ328 se puede utilizar en los microprocesadores de las series VZ328 y ColdFire con pocas modificaciones, lo que proporciona una amplia aplicabilidad. Los microprocesadores ColdFire se utilizan principalmente en equipos de Internet, tecnología de telefonía LAN, control de redes de gama baja, control industrial, imágenes y almacenamiento, entre otros campos.

Los microprocesadores ColdFire se pueden utilizar ampliamente en Internet, teléfonos móviles y teléfonos móviles.

Plataforma de desarrollo de software

La plataforma de software consta de un sistema operativo Linux integrado, una interfaz gráfica de usuario (GUI) integrada y herramientas de depuración y compilación cruzada GNU. El sistema operativo Linux integrado incluye el kernel de Linux integrado y el sistema de archivos ROM/RAM. Se eligió Linux porque es altamente modular, fácilmente personalizable y altamente portátil.

El kernel del sistema Linux integrado implementado por la plataforma de software se trasplanta en función del sistema mCLinux. Como Linux integrado altamente optimizado, mCLinux tiene un código compacto y un tamaño muy pequeño, pero aún conserva la mayoría de las ventajas de Linux: estabilidad, portabilidad y facilidad de uso. mCLinux es un Linux integrado altamente optimizado y optimizado. Aunque es de tamaño pequeño, aún conserva la mayoría de las ventajas de Linux: estabilidad, buena portabilidad, excelentes funciones de red, soporte completo para varios sistemas de archivos y API rica en estándares.

GUI es un sistema de código abierto, multiprocesador, multidisciplinar y multidimensional.

La GUI utiliza MicroWindows que admite la localización en chino, incluida la compatibilidad con conjuntos de caracteres como GB2312 y métodos de entrada en chino. Sobre esta base, desarrollamos un paquete de gráficos GUI integrado basado en FLTK, que proporciona capacidades gráficas más completas, como soporte para menús, botones, barras de desplazamiento y muchos otros controles GUI.

Utilizando este paquete de gráficos, desarrollamos un navegador web chino integrado que tiene solo 1 MB de tamaño e integra el software de entrada de escritura a mano en chino de Tsinghua Wentong.

Las herramientas de compilación cruzada y depuración utilizan el kit de desarrollo GNU, un kit de desarrollo de Linux de uso general, que incluye una gama de herramientas de desarrollo y depuración.

Los componentes principales son:

● Compilador Gcc, que se puede producir en forma de compilación cruzada, es decir, desarrollar y compilar archivos binarios que se pueden ejecutar en la placa de destino de la computadora host.

● Herramientas auxiliares binarias, incluido objdump (archivos binarios descompilables), as (compilador ensamblador), ld (enlazador), etc.

● Gdb-debugger, que puede utilizar una variedad de métodos de depuración cruzada, incluida la depuración mediante puertos serie y Ethernet.

Entorno de desarrollo

El kit de desarrollo GNU para esta plataforma de desarrollo de sistemas integrados se ejecuta en el sistema operativo Linux de escritorio. El desarrollador primero usa Gcc y Gdb para compilar y depurar el cargador de arranque; luego conecta el host y la placa de destino a través del puerto serie, pone el EZ328 en modo de arranque y descarga el cargador de arranque depurado a la placa de destino a través de un programa Perl simple. un monitor en la RAM, inicie minicom en el host al mismo tiempo y comuníquese con él a través del puerto serie para descargar y depurar el kernel y el controlador de Linux; después de ejecutar el kernel de Linux en la placa de destino e inicializar la interfaz Ethernet, conecte el; host a través de un cable de red y una placa de destino (como se muestra en la Figura 2). A través de Ethernet, los desarrolladores pueden usar el sistema de archivos NFS para instalar el disco duro del host, de modo que la placa de destino pueda operar directamente el disco duro del host a través de Ethernet y depurar el programa sin descargarlo. Si el kernel de Linux inicia el servicio de inicio de sesión remoto, los desarrolladores pueden hacerlo; También inicie sesión en el depurador del tablero de destino.