¿Cuáles son las categorías de desarrollo integrado?
La tecnología integrada está en todas partes, desde reproductores MP3 portátiles, repetidores de idiomas, teléfonos móviles y PDA hasta televisores inteligentes, refrigeradores inteligentes y decodificadores en el hogar, hasta robots en la producción industrial y el entretenimiento, todo adoptar tecnología integrada. Las principales empresas multinacionales y gigantes de electrodomésticos como INTEL, TI, SONY, Samsung, TCL, Lenovo y Konka se enfrentan al desafío de una grave escasez de talentos integrados. Los campos de aplicación más amplios generan inmediatamente una mayor demanda de talento. La siguiente es una introducción detallada de Fuzhou Zhuoyue Education.
El desarrollo integrado se divide de abajo hacia arriba: desarrollo de hardware integrado, desarrollo de controladores integrados, desarrollo de sistemas integrados y desarrollo de software integrado.
1. Desarrollo de hardware integrado: esté familiarizado con los circuitos y otros conocimientos, esté muy familiarizado con varios componentes comunes y domine las capacidades de desarrollo del diseño de circuitos analógicos y digitales. Competente en conocimientos de hardware integrado, familiarizado con los modelos de desarrollo de hardware y modelos de diseño, familiarizado con el desarrollo de plataformas de hardware integradas con procesadores ARM de 32 bits y con experiencia en desarrollo de productos. Competente en herramientas de diseño de hardware de uso común: Protel/PADS (PowerPCB)/Cadence/OrCad. Generalmente, se requiere experiencia en diseño de PCB de alta velocidad de 4 a 8 capas.
2. Desarrollo de controladores integrados: dominio del sistema operativo Linux, estructura del sistema, principios de composición de computadoras y conocimientos relacionados con la estructura de datos. Familiarizado con el desarrollo ARM integrado, al menos dominar el desarrollo de controladores de caracteres de Linux. Tener la capacidad de trasplantar y desarrollar microcontroladores y procesadores integrados ARM, comprender esquemas de hardware y completar de forma independiente la depuración de controladores de hardware relacionados. Tener conocimientos sólidos de hardware y poder escribir controladores de software de acuerdo con los manuales de chips.
3. Desarrollo de sistemas integrados: dominio de la configuración del sistema Linux, dominio de la arquitectura del procesador, entorno de programación, conjunto de instrucciones, modo de direccionamiento, depuración, ensamblaje y programación híbrida. Producción del sistema de archivos Linux, familiarizado con varios sistemas de archivos; formatos (YAFFS2, JAFFS2, RAMDISK, etc.); familiarizado con el proceso de inicio integrado de Linux, familiarizado con la modificación de los archivos de configuración del kernel maestro, trasplante de kernel, compilación cruzada, depuración del kernel, escritura del cargador de arranque del programa de inicio, root; proceso completo de producción de sistemas de archivos e implementación integrada de sistemas Linux; familiarizado con la construcción del entorno de desarrollo de software Linux (compilación cruzada de archivos de biblioteca y configuración del entorno, etc.);
4. Desarrollo de software integrado: competente en Sistema operativo Linux Conocimiento de conceptos y métodos de instalación, comandos básicos en Linux, configuración de administración y editores, incluido el editor VI, el compilador GCC, el depurador GDB y la herramienta de gestión de proyectos Make. Conocimiento avanzado de programación en lenguaje C, incluidas funciones y estructuras de programas. punteros, matrices, algoritmos comunes, uso de funciones de biblioteca y otros conocimientos, contenido básico de estructuras de datos, incluidas listas enlazadas, colas, etc., dominar las ideas básicas de la programación orientada a objetos, así como el contenido básico del lenguaje C; ser competente en programación bajo Linux integrado, competente en el entorno de desarrollo de Linux integrado, incluida la programación de sistemas, E/S de archivos, multiprocesos y subprocesos múltiples, programación de redes, programación de interfaces gráficas GUI y estar familiarizado con la programación de uso común; Bibliotecas de gráficos, como QT, GTK, miniGUI, fltk, nano-x, etc.