¿Qué conocimientos debe tener y cómo prepararse para el autoestudio del brazo integrado en ingeniería de información electrónica? Escuché que necesito aprender sistemas operativos, algoritmos de estructura de datos y Linux.
1. Aprovecha 51 para desarrollar ARM
Mi punto de vista personal: 51 es una base, pero también es muy importante. Esto es lo que sentí después de ver ARM. ¡Acelera el aprendizaje de tus brazos, de verdad! No te creo. Probar.
Quien requiera rapidez y eficiencia, no haga cosas inútiles y aproveche cada minuto a su alrededor. La gente está viva, pero las cosas (el conocimiento, los libros) están muertas.
2. ¿Cómo empezar con ARM?
Primero, hablemos del desarrollo de ARM.
Es un gran trabajo. Abra los sitios web de varias empresas y los puestos integrados en contratación representan más de la mitad de los puestos de ingeniería. Solo hay unos pocos tipos de sistemas integrados en un sentido amplio: los tradicionales 51, AVR y PIC se denominan microcontroladores integrados; ARM es un microprocesador integrado, objetivamente hablando, la demanda de DSP es mayor que la de ARM; ARM y FPGA son casi iguales. Debido al desarrollo sin precedentes en el campo del procesamiento y las comunicaciones digitales, DSP tiene una amplia gama de aplicaciones, desde cámaras MP3 hasta controladores en nuestros productos militares.
Vale la pena señalar que cuando solicitan empleo, las empresas (conocidas, no demasiado pequeñas) no prestan más atención a los ingenieros de desarrollo de hardware ARM simples que a los microcontroladores, y pocas empresas grandes escriben "Aquellos que se dedican a Se prefiere el desarrollo ARM." ¿Sobre qué escribes más? Creo que puedes ver "LINUX integrado" aquí. Lo que se necesita es software dentro del hardware.
En segundo lugar, ¿ARM es hardware o software?
Es difícil decir que ARM es hardware y LINUX es software. La mayor parte del hardware de ARM ya es modular. Si cambio el tablero así, será más móvil. Esta es también la estrategia de ARM. Lo admiré de nuevo. De hecho, el desarrollo de LINUX requiere cada vez más tiempo. En este sentido, ARM debería considerarse software.
Esto es especialmente cierto cuando se busca trabajo. Por ejemplo, en Lenovo, lo más parecido a ARM es "ingeniero de BIOS" es software, mientras que en MOTO, lo más parecido a ingeniero de LINUX integrado es software. Muchas otras empresas clasifican el desarrollo de productos integrados como hardware. Por lo tanto, no hablaré más de esto. Jugar bien tu propio juego es la clave. Te llamas a ti mismo "ingeniero de desarrollo integrado" cuando estás realmente molesto.
4. ¿Necesita una base de microcontrolador como el 51 AVR?
Es mejor tenerlo, pero no importa si no lo tienes.
5. ¿Qué software necesitas aprender para el desarrollo?
En resumen, existen principalmente las siguientes categorías:
1. Depuración de ADS
Para ser precisos, se trata de publicidad AXD. El anuncio contiene AXD. Resulta que se utiliza SDT. Más tarde, ARM ya no admitía SDT y cambió a ADS. Utilicemos la publicidad.
Los programas de algunas personas todavía se lanzan en la versión SDT, pero básicamente puedes encontrar los anuncios correspondientes. Los recién llegados no deberían confundirse aquí. ADS es el compilador y AXD es el depurador. Depurar en la RAM de ARM, es igual de barato que el de AXF.
2. PLASHPGM
Software de grabación FLASH. AXD se depura en la RAM y desaparece cuando se apaga la alimentación, lo cual es conveniente para la modificación del programa. El programa depurado se descarga en FLASH y se ejecuta directamente después del encendido.
Hay muchos software similares, como FLUTED y FLSHP, pero FLASHPGM es el mejor. Si alguien todavía pregunta si FLASH no admite archivos en formato BIN, mire mi PLASHPGM.
3.Agente depurador BANYANT (No sé si el nombre es correcto. Normalmente lo llamo “media oveja” porque sé que en aquel entonces solo comía oveja asada).
El agente de depuración se utiliza para ayudarle a utilizar JTAG más simple (más barato) para realizar la mayoría de las funciones del emulador JTAG con un precio original de 1K. Consulte mi otra explicación sobre los principios de depuración de JTAG. Simplemente comprenda el controlador JTAG que creó usted mismo.
Hay muchos tipos de agentes de depuración, como H-JTAG, ARM7 (no sé el nombre específico, solo recuerdo que el archivo ejecutable se llama ARM7.EXE) y BANYANT es mejor. Cabe señalar que ninguno de los métodos de instalación del agente de depuración es sencillo, pero todos son diferentes y necesitan explicación. y AXD debe ejecutarse antes de la depuración. Ahorre dinero, así que no tenga miedo de los problemas.
4. Cadena de herramientas ARM-ELF-TOOLS
UCLINUX desarrolla herramientas, como ARM-ELF-GCC. Una cadena de herramientas es algo que empaqueta muchas herramientas y las distribuye para su desarrollo. Consulte mi otra nota para conocer el método de instalación específico. Además, si estás desarrollando LINUX, debes utilizar ARM-LINUX-TOOLS, que es diferente y no universal.
5. Botas en forma de U
La conocida herramienta de generación BOOTLOADER parece ser Li Meihui (el nombre es ambiguo ~ ~). El BOOTLOADER generado se graba en FLASH y luego puede usar BOOTLOADER para descargar y grabar otros. Se requiere BOOTLOADER para descargar UCLINUX. BOOTLOADER es como el BIOS de su computadora. Por supuesto, UCOS no necesita esto y no sé qué usar :) La última versión es 1.1.4. Consulte mi nota separada para conocer el uso específico.
6.Paquete de software UCLINUX
Paquete de código fuente UCLINUX, no hace falta decirlo, ¿verdad? Se recomienda que primero utilice la experiencia ya preparada y luego la compile y adapte usted mismo. Porque la tecnología de edición de UCLINUX por sí sola es relativamente simple, pero cubre una amplia gama de áreas.
7. VMWARE
Software de máquina virtual antiguo. En una máquina virtual, una máquina instala Linux (usado en PC), lo que le ahorra la molestia de cambiar de máquina de un lado a otro. . Recuerde instalar VMWARE-TOOLS. El método de instalación está en otra nota mía.
6. ¿Qué libros recomiendas?
Recomiendo principalmente tres libros de ZLG. Con estos tres libros e Internet, no necesito otro libro. Entre ellos, recomiendo principalmente los dos primeros libros, y el tercero presenta la arquitectura, que es bastante buena:
1. Construcción del sistema LINUX integrado y desarrollo de controladores, edición Beihang, el controlador está escrito en. Detalles, y el desarrollo inicial también es muy bueno.
2. Tutorial experimental del sistema integrado ARM (2), versión Beihang, con diagrama esquemático ZLG2200, programa experimental y notas, para comprender cómo se desarrolló.
3. Un curso básico sobre sistemas integrados ARM. Lo más importante es la arquitectura. Se introducirá la parte de montaje y echarás un vistazo para aumentar tu alfabetización teórica.
La hoja de datos 4.44B0 está escrita aquí para enfatizar su importancia.
No recomiendo la arquitectura ARM de piel roja inicial de ZLG ~ Solo tomé la clase, había demasiada escritura, me cansé de leerla. No he leído los otros libros. Nunca he visto uno bueno. Has visto algunos testimonios.
7. ¿Elegir UCOS? ¿UCLINUX? ¿LINUX? ¿VXTRABAJOS? O utilícelo como microcontrolador
1. Participe en el desarrollo y el diseño de ingeniería, utilizando UCOS, pequeño, multiproceso, simple, que incorpora la esencia de ARM7.
2. Los sistemas integrados LINUX se utilizan ampliamente en los campos de consumo y comunicación de LINUX, pero la desventaja es que deben ser ARM9 para ejecutarse y las placas ARM9 no pueden fabricarse por sí mismas. Los tableros de 6 capas son demasiado caros. La compra de placas de desarrollo tocó fondo en 1K. Pero aún así se recomienda elegir ARM9 LINUX.
3. UCLINUX es un sistema integrado especulativo :) Puede ejecutarse en ARM7, porque tienes un pariente cercano de LINUX, puedes cambiar fácilmente a LINUX y usarlo como un pobre como yo, jaja.
4. VXWORKS, puedes encontrar un trabajo bien remunerado después de aprenderlo, pero las oportunidades laborales en sí no son mejores que LINUX.
5. No se recomienda utilizarlo como microcontrolador, aunque ZLG, al que admiro, lo ha estado pidiendo. Debido a que para aprender, el diseño de sistemas multiproceso es el comienzo de ARM7, al menos necesitas el UCOS completo :)
Un amigo me preguntó si podía aprender esto primero como base.
Por supuesto ~~ pero me tomó 1 semana hacerlo. Estas son mis notas sobre la depuración de anuncios en RAM primero. Más tarde, el pequeño programa que usé para borrar el flash fue el programa de parpadeo LED que escribí en ese momento. Además, una semana después, me gustaba demasiado comer y no configuré el OM correctamente, lo que provocó que la matriz fallara. Había que hacerlo, pero pasó. Apunta más lejos.
8. ¿Cuánto tiempo lleva estudiar?
Soy novato desde hace más de dos meses y me han interrumpido varias veces. También he realizado diseño de PCB y creación de patrones, depuración de RAM, descarga de FLASH, trasplante de UBOOT y descarga de controlador LCD UCLINUX (sin editar, listo para usar). Seamos honestos: soy muy malo en eso. No digo esto para envidiarte, solo te digo "deberías ser mejor que esto". Creo que una buena actitud, métodos apropiados y resumen oportuno = ¡resultados!
9.¿Qué hace ARM?
Justo cuando:
1. Diseño de hardware
2. Trasplante del sistema
3. 4. Desarrollo de aplicaciones
Se acabó. Entre ellos, se recomienda centrarse en los dos siguientes, 3 difíciles, 4 flexibles y lo más importante es encontrar trabajo.
XI. Método de desarrollo del color
El siguiente es mi proceso de desarrollo:
1. Diagrama de diseño (aletiómetro JTAG con balancín)
2 Diseño de PCB (con aletiómetro JTAG de el balancín)
3. Fabricación de placas
4. Voltaje de soldadura, asegúrese de que el voltaje esté bien.
5. Suelde el circuito periférico del aletiómetro JTAG de WIGGLER 44B0 JTAG y conéctelo al emulador BANYANT. BANYANT genera un error, pero puede mostrar el número 44B0, que parece ser 0x 0 f 0f 0f 0f 0f, lo que indica que 44B0 está bien.
6. Suelde el circuito periférico RAM ROM del oscilador de cristal y conéctelo al emulador BANYANT para mostrar el 44B0 correcto.
7. Conéctese con el emulador BANYANT, abra AXD y opere la RAM en la ventana de línea de comando para ver si se puede modificar. Si puede (vea la dirección de RAM en la ventana de memoria), la RAM está bien. Puede utilizar este comando "setmem 0XC000000, 0xffffffff, 32". Mi RAM está montada en BANK6, por lo que la dirección es 0xc000000. Si lo cambias, debes cambiarlo.
8. Utilice el método que escribí "Escribí una plantilla de proyecto en C y una instrucción" para depurar el programa. Escribe uno sencillo. Estaba escribiendo un flash LED. Vea si funciona.
9. De acuerdo con el resumen de grabación FLASH, grabe el programa en FLASH y pruébelo.
10. Transplante UBOOT según la operación de trasplante UBOOT.
11. Siga las sencillas instrucciones para descargar UCLINUX para descargar UCLINUX.
12. Mire los métodos de desarrollo de controladores y escriba un controlador usted mismo.
13. Hay muchas cosas para que juegues.
Doce. Acerca del aletiómetro JTAG
El aletiómetro JTAG es principalmente una placa simple, del tipo 244, y no tiene nada de malo. Hay varias definiciones de puertos paralelos. Se recomienda elegir la definición WIFFLER porque hay muchos software compatibles. Hay muchos de ellos en línea, por lo que no entraré en detalles. Cabe mencionar que algunos aletiómetros JTAG tienen jumpers en el diagrama esquemático para habilitar la señal de reset, los cuales generalmente no saltan. Simplemente no utilice la señal de reinicio, porque el protocolo JTAG en sí también puede controlar el reinicio de 44B0. Por supuesto, no es necesario colocar un puente de señal de reinicio en el trampolín.