¿Qué es la arquitectura integrada?
Si desea desarrollarse en la dirección del software integrado, la dirección más común en la actualidad es Linux integrado. Centrándonos en esta dirección, creo que se puede dividir en tres etapas:
>1. Incorporación de aplicaciones de capa superior de Linux, incluido el desarrollo de GUI QT
2 Desarrollo de sistemas Linux integrados
3. Desarrollo de controladores de Linux integrados
Embedded está actualmente principalmente para Varios sistemas operativos son LINUX, WINCE, VxWorks, etc.
Linux es de código abierto y gratuito, y su código fuente es abierto, lo que es más adecuado para que aprendamos integrado.
Entonces puedes probar la siguiente ruta:
(1) El lenguaje C es el más potente entre todos los lenguajes de programación. Los microcontroladores, DSP y varios chips similares a ARM se pueden programar con C. idioma), por lo que debe dominarse con mucha soltura.
Libros recomendados: "TheC Programming Language" es un libro de texto clásico escrito por un extranjero y también tiene traducción al chino.
(2) Los principios del sistema operativo son necesarios. Si eres un experto en informática, no importa. Si no eres un experto en informática, debes encontrar un libro de principios informáticos relativamente sencillo para leer. Comprender cuestiones básicas como "proceso", "hilo" y "programación del sistema".
(3)(3) El sistema operativo Linux está escrito en lenguaje C, por lo que también debes aprender a programar Linux primero. Solo si puedes aplicarlo podrás comprender mejor la esencia de su núcleo.
Libro recomendado: "Programación avanzada en entorno UNIX" (2.ª edición)
(4) Comprender la arquitectura, los principios y las instrucciones de ensamblaje de ARM en el desarrollo integrado, en términos generales. Rara vez escribo ensamblaje, pero el requisito mínimo es poder comprender el ensamblaje del brazo.
(5) Al trasplantar el sistema, debe comenzar desde el gestor de arranque inferior y luego trasplantar el kernel, el sistema de archivos, etc. La parte del trasplante depende mucho del hardware, los pasos de configuración son relativamente complicados y no hay mucha información detallada.
(6) Desarrollo de controladores
El diseño de controladores de Linux no solo es un campo muy desafiante, sino también un contenido amplio y profundo.
El diseño del controlador de Linux pertenece esencialmente a la categoría de programación del kernel de Linux, por lo que existen requisitos para el kernel de Linux y la programación del kernel. Es necesario comprender la composición del kernel de Linux antes de estudiarlo, porque si es necesario estudiar cada parte en detalle, se puede ampliar en un libro grueso.
Lo anterior es solo un marco aproximado. En el desarrollo real, estarán involucradas muchas cosas, como compilación cruzada, archivos MAKE, scripts de shell, etc. Por lo tanto, el ciclo de aprendizaje integrado es más largo y el umbral. es relativamente alto, el autoestudio requiere una gran capacidad de aprendizaje y habilidades profesionales. ¡Mientras persistas, definitivamente tendrás éxito!