Red de conocimiento informático - Espacio del host - Si desea aprender sobre el desarrollo de ARM integrado, ¡pida a los expertos que le recomienden un paso de aprendizaje!

Si desea aprender sobre el desarrollo de ARM integrado, ¡pida a los expertos que le recomienden un paso de aprendizaje!

1. Aproveche 51 para desarrollar ARM

En los últimos meses, he estado luchando con el problema de 51. Soy un poco autocrítico. Me tomó cuatro meses consolidar los principios y soluciones de 51. Sin embargo, afortunadamente, soy alguien que ha pasado por esto antes. Soy estúpido y los mejores estudiantes que me rodean no pueden entender los principios de 51. ¡Son aún más "geniales"! "Dicen que 51 está desactualizado, ¿preguntas por qué? ¡Estoy deprimido! ¿Desactualizado? ¿Tengo un poco de duda?

No están dispuestos a decir que tienen sus propias razones, nadie los obliga y puede hacerlo por sí solo.

Personalmente creo que 51 es la base y es muy importante. Este es mi sentimiento después de leer ARM. Si no me cree, puede acelerar su aprendizaje. , pruébalo.

1. Todo requiere velocidad y eficiencia. No aproveches cada minuto a tu alrededor y las cosas (conocimientos y libros) están muertas. lo que quieres hacer es simple

2. Vi un buen artículo sobre ARM en Internet y lo publiqué para ayudar a personas como yo que están aprendiendo ARM por sí mismos cuando hay muy pocas personas.

p> p>

"Cómo empezar con ARM". No soy un experto, todavía soy un novato

Pero recordando mi confusión en ese momento, escribí este artículo específicamente, con la esperanza. para ayudar a hermanos y hermanas como yo. Útil. La mayoría de las personas que hacen esta pregunta no son ingenieros en activo, sino estudiantes como yo, por lo que esta nota se basa en la opinión de que soy un novato.

En primer lugar, esta es una declaración: no estoy buscando trabajo, de hecho, acabo de graduarme de la escuela de posgrado y no he comenzado a buscar trabajo en mi tiempo libre. un pasatiempo para pasar el tiempo.

Todas las opiniones son mis propios sentimientos y no representan ninguna representación de nadie más. Corríjanme si tengo alguna opinión equivocada. Nuevamente: muchos amigos leyeron lo anterior y me preguntaron. por qué no encontré trabajo como estudiante de posgrado :) Dijeron que era para matar el tiempo, pero en realidad fue porque tenía un proyecto como estudiante de posgrado y solicité un proyecto de posgrado con anticipación. el rompecabezas, promete al instructor terminar el proyecto antes de irte :) Es así de simple Los hombres siempre tienen que ser un poco responsables, jaja

A menudo me hacen las siguientes preguntas, solo pienso en qué decir. Dónde ir.

A En primer lugar, ARM se está desarrollando muy bien. Abra los sitios web de varias empresas y hay muchos puestos para ingenieros integrados.

En términos generales, lo integrado no es nada. más que casi cualquier cosa: ¿Cuáles son los tradicionales 51, AVR y PIC llamados microcontroladores integrados? ARM es un microprocesador integrado

Hablando objetivamente, en términos de requisitos de trabajo, la demanda es alta. DSP es mayor que el de ARM. ARM es similar a FPGA.

El DSP se ha vuelto popular debido al desarrollo sin precedentes en el campo del procesamiento y la comunicación digitales. Se usa ampliamente en todo, desde cámaras MP3 hasta controladores. en nuestros productos militares

Los hermanos FPGA generalmente usan ANSIC (diseño de chip especializado, parece traducirse de esta manera). ARM no es mucho mejor que los microcontroladores, pero su singularidad es que el precio continúa disminuyendo. el rendimiento sigue mejorando. Esto depende completamente de la estrategia de la empresa ARM. ¡Impresionante! Admiro su visión estratégica.

Vale la pena señalar que a la hora de buscar trabajo, las empresas (sin contar las famosas). Las pequeñas) no prestan más atención a los ingenieros de desarrollo de hardware ARM simples. Los microcontroladores son altos y pocas empresas grandes escriben "Se prefiere el desarrollo ARM" en sus títulos de trabajo. ¿Sobre qué escribes más? "LINUX integrado", creo que todos pueden ver en este punto que el hardware requiere software.

2. Es difícil decir si ARM es hardware o software. ARM es hardware y LINUX es software. La mayor parte del hardware de ARM es modular. Si cambias la placa de esta manera, se moverá más. Esta es también la estrategia de ARM.

El desarrollo real de LINUX requiere más esfuerzo y tiempo. En este sentido, ARM debería considerarse software.

Esto es especialmente cierto en la búsqueda de empleo. Por ejemplo, el "ingeniero de BIOS" más cercano en Lenovo y ARM es el software, y el "ingeniero de LINUX integrado" más cercano en MOTO es el software. También hay muchas empresas que clasifican el desarrollo de productos integrados como hardware. Así que no hables de este tema, la clave es tomar tus propias decisiones.

Realmente no me gusta que te llames "ingeniero de desarrollo integrado"

3. ¿Qué placa de desarrollo debería comprar?

Mi respuesta es "basado en tu método de aprendizaje personal". pero si lo que estoy viendo es mío, lo que debes mirar es el nivel de esta nota de trucos, te recomiendo comprar las ya hechas. Se recomienda comprar confeccionado. 1. Compre una ya preparada

Si compra una placa, puede concentrarse en el desarrollo de software (especialmente controladores) y no tiene que preocuparse por problemas con su propio hardware. escriba controladores y programas durante la depuración. Cada vez que escriba el controlador, debe confirmar si hay un problema con el hardware. Además, comprar placas de circuito es más caro y requiere más tiempo. Yo mismo hice la placa de circuito y el esquema de la PCB tardó más de 2 semanas. ¡La PCB tardó más de 2 semanas! ¡Me tomó otros 15 días hacer la placa y cuando regresé tenía 160 pines soldados en el 44B0! Es realmente problemático ~~ ¿Cuánto costó, tablero de 2 capas, la tarifa del tablero es de 300 yuanes? Por supuesto, además de mostrar todas las interfaces, también hice un panel posterior LCD de 20X18, que es relativamente grande. En general, componentes + pantalla LCD + PCB = ¡11XX yuanes! Suficiente para comprar un 2410.

Es más, la información que compras es relativamente completa, ¡pero no esperes soporte técnico! Son todas mentiras y no me importarás después de vendértelas.

2. Puede comprender mejor el hardware subyacente si lo hace usted mismo y puede agregar cosas según sus propios requisitos. Por ejemplo, agregué un módulo GPS, un módulo GPRS, un módulo de tarjeta SD. y amplió un botón IIC de 35 teclas y una interfaz LCD. Según la modificación LCD comprada, puede utilizar el cable FPC para conectarse directamente. Esto es algo genial. ¿Tienes una obra de teatro?

Por supuesto, también puedes hacerlo estratégicamente. Por ejemplo, como yo, mantén la RAM, la ROM, la red y una placa preparada igual, para que puedas tomar tus propios datos y usarlos. directamente, dejando una nota para usted mismo. Simplemente haz el resto como SD y rellénate. Todo depende de ti ~~ solo que el costo es alto y lleva mucho tiempo.

Luego me gustaría dar algunas sugerencias a mis amigos que están haciendo esto: intente encontrar tableros ya preparados, intente recopilar un conjunto completo de información en otros tableros y asegúrese de encontrar tableros con No hay problemas con los esquemas.

La mayoría de los diagramas esquemáticos que circulan en Internet fueron dibujados por Gong Jun en 2003. ¡Me gustaría rendir homenaje a Gong Jun! ¡Muy amigo!

Pero hay un pequeño ERROR en esa imagen, quiero decir que no existe tal problema después de la versión 03. 8019 Hay algún problema con la línea de dirección y la dirección. Algunas personas copiaron su dibujo SCH en PDF, ¡que estaba lleno de lagunas! ¡condenar! Por cierto, me gustaría condenar a Gong Jun por robar y vender a otros.

3. ¿Cuál comprar?

Personalmente hay tres categorías.

1) La primera es ZLG La información me parece muy completa. que realmente quiere enseñarte cómo desarrollar. ARM no es como cierta empresa que fabrica una placa con tecnología que no le ha ido bien y la vende por dinero. ¡Pero la mayor desventaja es que es demasiado caro! Además, es principalmente PHILIP, y el suministro de bienes es más problemático ~~ Algunas personas pueden decir que la serie 21XX no es cara, pero el autobús no se expande y solo puede ejecutar UCOS, no UCLINUX. Pero si tiene razón, la serie 21XX es la combinación rentable de ARM7. ARM7 es el más adecuado para el control industrial. ¿Cómo serán las ventas después de que ARM se vuelva popular? Todos provienen de ARM7 y 44B0 es una pieza comercial típica. Sin embargo, si está concentrado en el trabajo de preparación aquí, debe optar por poder ejecutar UCLINUX.

¡Pero aún así se recomienda como primera recomendación, porque la información correcta es muy importante en la etapa de novato! ¡Aquí me conmueve el pragmatismo de ZLG! Mire el código escrito por otros.

2) Creo que 44B0 Litutex es bueno

El hardware es el mismo, pero la información es relativamente completa. A diferencia de algunas empresas, los esquemas están tomados directamente de otras, lo cual es incorrecto. ~~~

3) Encuentra el más barato

El más barato parece venderse por 350, ¿verdad? Nada más, solo para ahorrar dinero y tiempo para recopilar información. En cuanto a la información incompleta, no se preocupe ~~ El hardware debe ser bueno.

Cuatro no deberían tener la base del microcontrolador 51AVR

Los hay mejores, pero no importa si no los tienen.

Hace dos meses, estaba viendo a otros hacerlo y me influyó ~~~ Aprendí sobre microcontroladores cuando era estudiante, pero nunca lo había hecho antes. Nuestra columna vertebral técnica aquí es AVR y 51, así que los uso para ajustar programas en C.

¿Lo entiendes? Soy un completo novato, ¿verdad?

Pero antes de hacer esto, encontré específicamente dos libros de ZLG y leí los ejemplos y esquemas que contienen. Esto es muy importante. Hay rutinas en lenguaje ensamblador y C. Una vez que las comprenda, no necesitará escribirlas usted mismo ahora

5.

En resumen, los más importantes son los siguientes: 1.Depuración de ADS

Para ser precisos, es ADS+AXD. ADS contiene AXD. Originalmente se usaba SDT, pero luego ARM ya no admitía SDT y cambió para admitir ADS o ADS.

ADS es una nueva función de ARM, que integra SDT, ADS y AXD de ARM.

Los programas de algunas personas todavía se lanzan en la versión SDT, pero básicamente puedes encontrar los ADS correspondientes. Los principiantes no deben confundirse aquí. ADS es el compilador y AXD es el depurador. Será más económico que AXF más adelante en la depuración de ARM RAM.

2 PLASHPGM

Software de grabación FLASH. Al depurar AXD en RAM, desaparecerá cuando se apague la alimentación, lo cual es conveniente para modificar el programa. Luego descargue el programa depurado a FLASH y ejecútelo directamente después del encendido.

Hay muchos softwares similares, incluidos FLUTED y FLSHP, pero FLASHPGM es el mejor. Si alguien todavía pregunta si FLASH no admite archivos en formato BIN, debe leer el uso de PLASHPGM que escribí.

3. Agente depurador BANYANT (No sé cómo se llama, es difícil de recordar. Normalmente lo llamo "Ban Sheep" porque sé que acaba de comer cordero asado hace unos días)

El agente de depuración le ayudará a utilizar el JTAG más simple (barato) para realizar la mayoría de las funciones del emulador 1K JTAG original. Consulte mis otras notas para conocer los principios de depuración de JTAG. Simplemente entenderlo es como crear su propio controlador JTAG.

Hay muchos tipos de agentes de depuración, como H-JTAG y ARM7 (no sé cómo se llaman, recuerdo que el archivo ejecutable se llama ARM7.EXE, es mejor).

Cabe señalar que ninguno de los métodos de instalación del agente de depuración es sencillo, pero son diferentes y es necesario leer atentamente las instrucciones. Y AXD debe ejecutarse antes de la depuración. Ahorre dinero y evite problemas.

4. Cadena de herramientas ARM-ELF-TOOLS

En UCLINUX, solo existen herramientas de desarrollo como ARM-ELF-GCC. Una cadena de herramientas es algo que agrupa muchas herramientas para facilitar su desarrollo. Consulte mis otras instrucciones para conocer métodos de instalación específicos.

Además, si desarrolla LINUX, debe utilizar ARM-LINUX-TOOLS. Las dos herramientas son diferentes y no universales.

5 U-BOOT

La famosa herramienta de generación de BOOTLOADER, similar a VIVI (el nombre es muy ambiguo ~~)

Graba el BOOTLOADER generado en FLASH, y luego puedes usar BOOTLOADER para descargar y grabar otros

Ahora que tienes 6 paquetes UCLINUX

Paquete de código fuente UCLINUX, ¿necesitas hablar sobre ello? Se recomienda que primero utilice los ya preparados para familiarizarse con ellos y luego los compile y corte usted mismo. Porque editar UCLINUX por sí solo es técnicamente relativamente simple, pero los aspectos involucrados siguen siendo relativamente amplios.

7. VMWARE

El software de máquina virtual anterior puede virtualizar una máquina con LINUX en una máquina (se puede usar una PC), lo que le ahorra la necesidad de cambiar de máquina de un lado a otro. Recuerde instalar VMWARE-TOOLS, el método de instalación está en mis otras notas.

6. ¿Qué libros se recomiendan?

Recomiendo principalmente tres libros de ZLG. Con estos tres libros e Internet, no hay necesidad de otros libros. Recomiendo los dos primeros libros que presentan la arquitectura, y el primer buen libro es la construcción del sistema LINUX integrado y el desarrollo de controladores, versión Beihang.

El controlador está escrito en detalle y la introducción al desarrollo inicial es. también muy bueno 2 Tutorial de experimento del sistema integrado ARM (2), edición Beihang

Contiene el diagrama esquemático ZLG2200, pasos experimentales y comentarios para comprender cómo se desarrolló. 3 Tutorial Básico sobre Sistemas Embebidos ARM

Lo más importante es la introducción de la arquitectura y las piezas de montaje. Échale un vistazo y aumenta tu calidad teórica. 4 Hoja de datos 44B0

Escrito aquí para enfatizar su importancia.

No recomiendo la arquitectura ARM de piel roja lanzada por ZLG en los primeros días ~ solo clases

Estoy cansado de leer demasiado.

No hay muchos otros libros y no he visto ninguno bueno. Si los has leído, recomiéndalos.

Siete opciones: UCOS, UCLINUX, LINUX, VXWORKS o uso como microcontrolador

1 Quienes se dedican al diseño y desarrollo de ingeniería utilizan UCOS, que es compacto, multiprocesamiento y simple. , que encarna la esencia de ARM7.

2 LINUX es la base de los sistemas integrados. LINUX se usa ampliamente en los campos de consumo y comunicación. Sin embargo, la desventaja es que requiere ARM9 para ejecutarse. No puede fabricar placas ARM9 usted mismo y placas de 6 capas. son demasiado caros. Si compras una placa de desarrollo por 1K, estará en la parte inferior. Pero todavía se recomienda elegir ARM9 + LINUX

3 sistema integrado de calculadora UCLINUX :) ARM7 puede ejecutarse. Como tengo un pariente cercano de LINUX, puedo cambiar a LINUX más fácilmente después de aprenderlo. como yo puedo usarlo, jaja ​​

4 VXWORKS

¡Puedes encontrar un buen trabajo después de aprenderlo, pero no hay oportunidades laborales! No es mejor que el propio LINUX.

5 Utilízalo como microcontrolador

No recomendado, aunque ZLG, al que admiro, lo viene pidiendo. Debido a que el aprendizaje del diseño de sistemas multiproceso se basa en ARM7, al menos necesitas el UCOS completo :)

Un amigo me preguntó si no podía aprender esto primero como base. Por supuesto que es posible~~ Pero me tomó una semana completarlo. Era la primera vez que depuraba notas en la RAM de ADS. Más tarde, usé FLASH para borrar un programa corto, que todavía era el programa de parpadeo LED que escribí en ese momento. Pasó otra semana y la matriz de cristal no tenía matriz porque fui demasiado estúpido y no configuré el OM correctamente

Jaja. Había que hacerlo, pero olvídalo. El objetivo es llegar un poco más allá.

8. ¿Cuánto tiempo se tarda en aprender?

Solo me tomó más de dos meses desde que soy novato hasta ahora, con varias interrupciones en el medio. Todavía completé el diseño y diseño de PCB, la depuración de RAM, la descarga de FLASH, la portabilidad de UBOOT y la descarga de UCLINUX (sin éxito, usado en el mercado), el controlador LCD.

Te lo vuelvo a confesar: cocino platos comparativos, y no lo digo para darte envidia, sino para decirte “deberías ser mejor que esto”

Creo que una buena actitud + métodos apropiados + Resumen oportuno = resultados

Solo algunos de los nueve ARM

1 Diseño de hardware

2 Trasplante de sistema

3 Desarrollo de controladores

4 Desarrollo de aplicaciones

No. Entre ellos, se recomienda centrarse en los dos últimos, 3 es más difícil y 4 es más flexible. Lo más importante es que estos dos son pesos para encontrar trabajo.

10. ¿Qué tablero usé?

Mucha gente me hizo esta pregunta, así que escribí una especial. Dilo de nuevo.

Lo hice yo mismo. RAM, ROM, 8019 y otras cosas más problemáticas que no entendí en ese momento se basaron en las instrucciones de Gong Jun. Se han realizado las siguientes modificaciones para preservar otros inconvenientes.

1 Agregue un módulo GPS y un módulo GPRS para comunicación en serie

Un UART0 y un UART1 Utilice un interruptor de puente con el HyperTerminal cuando esté en uso.

2. Tarjeta SD y pantalla táctil 7843

Cuelguen en el bus SPI al mismo tiempo, porque SPI solo puede colgar un dispositivo y se deben realizar preparativos para la simulación de E/S. Estos dos dispositivos deben colgarse en 4 IO a través de puentes.

3 Amplió un teclado IIC de 35 teclas

Utilizando el 7290 de ZLG, que no ocupa CPU y soporta hasta 64 teclas, dejando solo 35 teclas en otras interfaces.

4. Modifique la interfaz LCD de acuerdo con la pantalla LCD comprada y luego podrá conectarla directamente con el cable FPC.

Entonces, aunque hay muchos cambios, son realmente portátiles. Las cosas relacionadas con la depuración inicial no han cambiado. Solo se están preparando para el momento en que no seamos tan buenos ahora :)

El proceso de desarrollo de XI

El siguiente es mi proceso de desarrollo

1 Diagrama esquemático de diseño (incluido el objeto de acceso JTAG de WIGGLER)

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER) )

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER)

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER)

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER)

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER)

2 Diseño de PCB (incluido el objeto de acceso JTAG de WIGGLER). Lector JTAG de WIGGLER)

3 Fabricación de la placa

4 Voltaje de soldadura para garantizar que el voltaje sea normal

5 Soldadura 44BCircuito JTAG+Dispositivo de lectura JTAG de WIGGLER + Circuito periférico, use el simulador BANYANT + para conectarse, BANYANT genera un error, pero puede mostrar el número 44B0, que parece ser 0X0F0F0, que es 0X0F0F0. Solo hay 0X0F0F0F0F, lo que indica que 44B0 está bien

6 Cristal de soldadura + RAM + ROM + circuito periférico, conecte BANYANT + emulador, se puede mostrar el 44B0 correcto

7 Conecte BANYANT + emulador, abra AXD, opere la RAM en la ventana de línea de comando para ver si se puede modificar y luego (vea la dirección de RAM en la ventana de memoria). Si puedes (usa la ventana de memoria para ver la dirección RAM), no hay problema con la RAM

Puedes usar este comando "setmem 0xc000000,0xffffffffffffff,32"

Mi La RAM está montada en BANK6, por lo que la dirección es 0XC000000 y si la cambia también es 0XC000000. Si lo cambias, debes cambiarlo también.

8 Utilice mi método "Escribí una plantilla de proyecto C y escribí una instrucción de uso" para depurar el programa. La escritura es muy simple. Escribí un LED parpadeante. Vea si funciona.

9 Grabe el programa en FLASH según el método del "Resumen de programación FLASH" y pruébelo.

10 Siga la "Operación de trasplante de UBOOT" para trasplantar UBOOT

11 Siga las "Instrucciones sencillas para descargar UCLINUX" para descargar UCLINUX

12 ¡Mire cómo desarrollar un controlador y escriba un controlador usted mismo!

13 Todavía hay muchas cosas para jugar con todos

Doce sobre el acceso JTAG a dispositivos reales

El acceso JTAG se usa más comúnmente ahora. Un tablero simple de. Dispositivos reales, con 244 usos, nada malo.

Según la definición de puerto paralelo, se divide en varios tipos diferentes. Se recomienda elegir la definición de WIFFLER porque admite más software. Hay muchos de ellos en línea, por lo que no entraré en detalles.

Cabe mencionar que los puentes en algunos diagramas esquemáticos reales de visitantes JTAG se utilizan para habilitar la señal de reinicio, que generalmente no se puede saltar. Es decir, no utilice la señal de reinicio porque el propio protocolo JTAG también puede controlar el reinicio del 44B0.

Por supuesto, no es necesario saltar el puente de señal de reinicio en la placa de circuito.

13. ¿Qué empresa es ARM?

Esta pregunta es relativamente simple. 1 ARM7 proviene principalmente de varias empresas

Samsung, PHILIP, ATMEL

ATMEL es relativamente barato, AT91SAM7S32 y AT91SAM7S64 están especialmente diseñados para aplicaciones de 8 bits y el precio es muy económico. como "barra de $3". Es similar al 21XX de PHILIP, con muy poca información y buena selección de proyectos.

No diré mucho sobre los otros dos mencionados anteriormente

2 ARM9

Probablemente hay más gente jugando con 2410 y 2440. Ahora 2440 es bastante popular Puedes considerar comprar uno

Pero el 2410 es más barato y bueno para aprender, así que recomiendo uno :)

De hecho, ARM9 se usa más comúnmente en el campo de la electrónica de consumo. , como teléfonos móviles y PDA. Debería ser más común utilizar INTEL y TI.

Pero TI de INTEL tiene poca información de presentación y precios elevados. Decidirán en función de la situación.