¿Qué [herramientas de depuración de software] utilizan primero las grandes empresas?
El desarrollo ARM se está volviendo cada vez más popular y la mayoría de ellos están reemplazando gradualmente La tendencia de la serie 51 de microcontroladores, para ayudar mejor a todos a dominar el entorno de desarrollo integrado relevante para el desarrollo ARM, el equipo de desarrollo integrado de Xtron utilizará el equipo de desarrollo integrado de Xtron. Desarrollo de medalla de oro S3C44B0 Como plataforma de desarrollo específica, la placa presenta en detalle el proceso específico de desarrollo de aplicaciones bajo ARM SDT2. El proceso específico de desarrollo de aplicaciones en el entorno de desarrollo integrado 51, el entorno de desarrollo integrado IAR y el entorno de desarrollo integrado ADS proporciona una guía paso a paso para muchos entusiastas del aprendizaje integrado. Al mismo tiempo, también esperamos que más entusiastas del aprendizaje integrado se unan a nosotros, escriban más y mejores documentos y contribuyan al vigoroso desarrollo de la industria de diseño y desarrollo de sistemas integrados de mi país. En este artículo, utilizaremos el ejemplo LEDTEST proporcionado por la placa de desarrollo de medalla de oro InnoLight S3C44B0 para describir el proceso de instalación detallado de SDT2.51 y el proceso específico de compilación, depuración y ejecución del programa bajo SDT. Por ejemplo, esfuércese por lograr la función de atraer nuevas ideas, de modo que los entusiastas que son nuevos en el desarrollo integrado de ARM puedan dominar rápidamente SDT en un corto período de 1 a 2 horas. A través de la introducción detallada de un ejemplo de este tipo, nos esforzamos por servir como punto de partida, para que los entusiastas que son nuevos en el desarrollo integrado de ARM puedan dominar rápidamente las habilidades de aplicación básicas del software de desarrollo integrado SDT en solo 1 o 2 horas. llevar a cabo el desarrollo de proyectos relacionados y resolver continuamente los problemas encontrados durante el proceso de desarrollo del proyecto. Esto mejorará enormemente su eficiencia de aprendizaje. 1. Instale SDT2.51 SDT2.51 es un entorno de desarrollo integrado más potente proporcionado por ARM para depurar la CPU central de ARM. Aunque ARM ya no actualiza SDT, reenvía el entorno de desarrollo integrado ADS, pero debido a que el entorno de desarrollo integrado ADS es caro. El depurador de emulación de hardware MULTI-ICE coopera con él, por lo que es adecuado para diseños integrados de usuarios individuales. Sin embargo, debido a que el entorno de desarrollo integrado ADS requiere que el costoso depurador de emulación de hardware MULTI-ICE coopere con él, todavía no es un método de desarrollo realista para usuarios individuales de diseños integrados. El entorno de desarrollo integrado SDT solo requiere la producción de cables JTAG simples y de bajo costo. Este es sin duda un modelo de desarrollo ideal para usuarios individuales. De hecho, en las primeras etapas de desarrollo de Siltronic Electronic Materials, todo el conjunto de software se implementó utilizando cable pseudo-JTAG SDT. A continuación, hablaremos sobre el proceso de instalación de SDT2.51. Haga clic en el programa setup.ext en el directorio de instalación de SDT y aparecerá la siguiente interfaz de instalación: Shichuang Embedded Development Network (EMBED.8800.ORG) 1 Shichuang Embedded Development Network (EMBED.8800.ORG) Siga haciendo clic en SIGUIENTE para usar el valor predeterminado configuración, no se requieren otros cambios para completar la instalación final. De esta manera, SDT2.51 se instala en C:\ARM251. 2. Inicie SDT2.51 Una vez completada la instalación, haga clic en ¿Iniciar? ¿Programas?ARM SDT 2.51?ARM PROJECT MANAGER, inicie el administrador de proyectos SDT: Siltronic Electronic Materials Embedded Development Network (EMBED.8800.ORG) 2 Siltronic Electronic Materials Embedded Development Network (EMBED.8800.ORG) aparecerá en En la siguiente ventana : De esta forma se puede iniciar el proceso de desarrollo del programa específico. 3. Cree un proyecto y agregue archivos fuente. SDT adopta el popular mecanismo de archivos fuente de gestión de proyectos. Este estilo es familiar para la mayoría de los desarrolladores de programas.
¿El proceso básico es "Crear un PROYECTO"? "z Cree un PROYECTO "LedTest" En el entorno de desarrollo integrado SDT2.51, seleccione el menú "¿ARCHIVO? ¿NUEVO? PROYECTO", aparecerá la siguiente imagen: Los siguientes son varios parámetros que deben completarse: TIPO: TIPO: arm nombre del proyecto de imagen ejecutable: LedTestLedTest DIRECTORIO DEL PROYECTO: D:\TEST\LED_Test Luego siga seleccionando Aceptar y aparecerá un proyecto sin ningún archivo fuente. El proyecto tiene tres códigos fuente publicados por Xtron Embedded Development Network (EMBED.8800.ORG). 3 Método de la Red de desarrollo integrada Xtron (EMBED.8800.ORG).ORG) 3 Método de la Red de desarrollo integrada Xichuang (EMBED.8800.ORG): z Escriba el archivo fuente y agréguelo al proyecto Dado que el editor de programas de SDT2.51 es. no Muy bien, generalmente se recomienda escribir el código fuente en UltraEdit y luego agregar los archivos fuente al proyecto. Este es uno de los aspectos más criticados de SDT2.51 por nuestra pobre adaptación a SDT ^_^. Tomemos como ejemplo el directorio LED_EXAMPLE del programa de luces de fila LED proporcionado en el CD de Sichuang para hablar sobre el proceso de agregar archivos y compilar. Primero, combine los archivos *.C/*.h en el directorio LED_EXMAPLE con Copie el *. .C/*.h en el directorio INC (que almacena algunos archivos de encabezado) en el directorio D:\TEST\LED_TEST y luego abra el proyecto D:\TEST\LED_TEST.APJ en el administrador de proyectos SDT. Haga clic en Arm. Árbol de directorios de imágenes ejecutables en la columna Depurar del árbol de directorios de imágenes ejecutables de Arm y aparecerá la siguiente imagen: Luego haga clic para seleccionar FUENTE, seleccione el menú "PROYECTO? AGREGAR ARCHIVOS A FUENTES" y seleccione los archivos C y S en el directorio actual, de modo que todos los archivos fuente se agregarán al proyecto. 4. Compile y vincule el programa. Antes de compilar en el siguiente paso, debe concentrarse en configurar varios parámetros en el proceso de vinculación. ?Configuración de herramientas para "Debug"?armlink?Set". Aparecerá la siguiente imagen: Siltronic Embedded Development (EMBED.8800.ORG) 4 Siltronic Embedded Development (EMBED.8800.ORG) z Asegúrese de que la configuración general esté configurada en " Compilar y vincular programa" para que todos los archivos fuente se agreguen al proyecto. Asegúrese de que la ruta "Ruta de búsqueda de biblioteca" en la pestaña "General" sea C:\ARM251\LIB para garantizar que los archivos de biblioteca requeridos se puedan encontrar en el ruta correcta durante el proceso de vinculación del programa. z Asegúrese de que la ruta "Ruta de búsqueda de biblioteca" en la pestaña "ENTERPRISE" sea C:\ARM251\LIB: Sólo lectura: 0XC1000000 Lectura-escritura: 0XC5000000 El motivo de esta configuración es que la SDRAM en la placa Siltronic Gold ocupa el espacio de direcciones de 0XC5000000, Siltronic La SDRAM en la placa Gold ocupa el espacio de direcciones 0XC1000000 y la SDRAM ocupa el espacio de direcciones 0XC5000000. El motivo de esta configuración es que la SDRAM en la placa SYSTEM Gold ocupa el espacio de direcciones 0x0C000000-0x0C7FFFFF, que se puede encontrar en el artículo "Lista de recursos de la placa Gold SYSTEM S3C44B0".
De esta manera, durante el proceso de depuración, los datos de depuración y los comandos de SDT se descargarán a la SDRAM del SISTEMA en la placa de desarrollo a través del cable JTAG para la ejecución del programa y el uso del proceso DEBUG. Por supuesto, también puede configurar la dirección de SÓLO LECTURA en FLASH, es decir, 0X00000000. Generalmente, recomendamos ejecutar el programa directamente en SDRAM. Red de desarrollo integrado Xtron (EMBEDED.8800.ORG) 5 Red de desarrollo integrado Xtron (EMBEDED.8800.ORG) Después de completar estos preparativos, puede iniciar oficialmente el proceso de compilación y vinculación del programa. Primero seleccione DEBUG en la ventana ROM, luego seleccione el menú "PROJECT?FORCE BUILD LEDTEST.APJ DEBUG", SDT inicia el proceso de compilación y vinculación, como se muestra en la siguiente figura: Puede ver que no hay errores en la compilación y proceso de vinculación y puede ignorar la ADVERTENCIA. 5. Programa de depuración A través de la introducción anterior, creo que todos tienen una cierta comprensión de cómo crear y compilar SDT y vincular sus propios proyectos. En el siguiente paso, la atención se centrará en cómo utilizar el cable WIGGLER JTAG proporcionado por Siltronic Electronic. Materiales para depurar SDT en el proceso de seguimiento del procedimiento. Primero, seleccione el menú "Project?Debug LEDTEST.APJ DEBUG", y aparecerá la siguiente ventana ARM DEBUGGER: Siltronic Electronic Materials Embedded Development Network (EMBED.8800.ORG) 6 Siltronic Electronic Materials Embedded Development Network (EMBED.8800.ORG) ) SDT proporciona dos modos de ubicación: el último es un proceso de depuración ARM real que utiliza hardware real, mientras que el primero es una simulación de software del proceso de depuración ARM. Para realizar una verdadera emulación de hardware ARM, se requiere cierta configuración. En la ventana ARM DEBUGGER, seleccione el menú "¿OPCIONES? CONFIGURAR DEPURADOR", como se muestra en la siguiente figura: Seleccione REMOTO A en la opción ENTORNO DE OBJETIVO (entorno de destino) y luego haga clic en el botón CONFIGURAR en la parte inferior, como se muestra en la figura a continuación Figura: Red de desarrollo integrada de Siltronic Electronic Materials (EMBED.8800.ORG) 7 Red de desarrollo integrada de Siltronic Electronic Materials (EMBED.8800.ORG) Marque la casilla frente a HEARBEAT e ingrese 127.0.0.1 después de ETHERNET para indicar la IP. de la máquina. La razón por la que necesitamos configurar la dirección de red aquí es porque ya la hemos configurado en la "Guía de desarrollo de software del sistema integrado". --La primera parte del artículo "Guía de desarrollo de software de sistemas integrados: migración de uClinux a la placa de desarrollo Gold S3C44B0 de Siltronic Electronic Materials" explicará en detalle el motivo para configurar la dirección de red aquí. Después de completar estas configuraciones, puede comenzar a reproducir el código de destino. La siguiente figura describe claramente el mecanismo de descarga del código de destino. De hecho, este también es el mecanismo general para depurar con varios depuradores. El programa JTAG.EXE que se ejecuta en segundo plano del host convierte varios datos de depuración y paquetes de datos de red de comandos de SDT2.51 en señales de puerto paralelo de computadora que cumplen con el estándar JTAG y los descarga a la placa de desarrollo Siltronic Gold a través de WIGGLER JTAG. cable.
Red de desarrollo integrado de materiales electrónicos Siltronic (EMBEDED.8800.ORG) 8 Red de desarrollo integrado de materiales electrónicos Siltronic (EMBEDED.8800.ORG) Los pasos de operación específicos son los siguientes: 1. En el JTAG de la computadora host (es decir, en el CD-ROM de Siltronic Copie el directorio JTAG al directorio especificado por el usuario), escriba el comando JTAG directamente en DOS SHELL y aparecerá el resultado que se muestra a continuación: indicando que ARM JTAG ya se está ejecutando, esperando que se envíe SDT2.51 varios datos de depuración. Cabe recordar que el archivo JTAG.BAT proporcionado por InnoLight es para el entorno de desarrollo del host WIN2000. Si es un entorno de desarrollo WIN98, debe modificar el archivo JTAB.BAT y eliminar ALLOWIO 0X378. Para conocer los principios específicos de este problema, consulte la primera parte del artículo "Guía de desarrollo de software de sistema integrado: migración de uClinux a la placa de desarrollo Gold Medal S3C44B0 de Siltronic Electronic Materials". 2. Seleccione el menú "¿ARCHIVO? CARGAR IMAGEN", como se muestra en la siguiente figura: Seleccione LEDTEST.AXF, SDT2.51 iniciará el proceso de descarga, como se muestra en la figura: Siltronic Embedded Development (EMBED.8800.ORG) 9 Siltronic Embedded Development (EMBED .8800.ORG) realizará este proceso. ORG) Dependiendo del tamaño del archivo AXF, este proceso tardará varios minutos. Finalmente, el programa se detendrá al ingresar el código ASM. Como se muestra, el programa finalmente se detendrá al ingresar el código ASM. Seleccione el menú "EJECUTAR" y podrá ver varios comandos DEBUG y teclas de acceso directo relacionadas. Por ejemplo, presione F8 para iniciar la simulación de un solo paso y presione F5 para iniciar la simulación de velocidad completa. Jaja, también podríamos presionar F5 en este momento y observar el LED en la placa de desarrollo. Podemos encontrar que el programa en ejecución del LED se está ejecutando. Mueva el cursor a la línea 369 del archivo ensamblador 44BINIT.S, como se muestra a continuación: Xtron Embedded Development Network (EMBED.8800.ORG) 10 Xtron Embedded Development Network (EMBED.8800.ORG) Este es el programa MAIN.C La entrada dirección, seleccione el menú "EJECUCIÓN? Programa C, seleccione el menú "EJECUCIÓN? EJECUTAR AL CURSOR", y luego presione F8 para la ejecución en un solo paso, el programa saltará al programa MAIN.C, como se muestra en la figura: InnoLight Desarrollo integrado (EMBED.8800.ORG) 11 Desarrollo integrado InnoLight (EMBED.8800.ORG) En este punto, puede comenzar a utilizar varias técnicas de depuración proporcionadas por SDT, como establecer puntos de interrupción, ejecutar a máxima velocidad, observar variables y observar registros. , observar registros, etc. Etc. Observar variables, observar registros, observar espacio de memoria, etc. Para obtener más detalles, puede ver algunos documentos proporcionados por SDT. Si algún usuario está interesado, es posible que desee trabajar un poco e introducir varias depuraciones específicas. Consejos uno por uno Finalmente, vale la pena recordarles a todos que también pueden observar los cambios en la ventana JTAG del host durante la operación de un solo paso, como se muestra en la figura: Podemos ver claramente que SDT envía continuamente varios datos operativos y. Comandos al cable JTAG. Conclusión El desarrollo de ARM está en pleno apogeo. Para Siltronic, para usar un dicho popular, es "llevar a cabo el desarrollo de ARM hasta el final". Desarrollar y vender excelentes placas de desarrollo integradas y diversas herramientas, mientras mejoramos constantemente varios documentos técnicos relacionados. Finalmente, nos gustaría reiterar que hemos desarrollado sobre la base de nuestros predecesores y queremos proporcionar varias herramientas y recursos de I + D. desarrollo integrado a todos los predecesores. Rinden homenaje.
La estructura del directorio de este artículo se refiere al "Tutorial de software de desarrollo ARM" del Sr. Gong Jun. ¡Me gustaría expresar mi gratitud! Red de desarrollo integrada Xtron (EMBED.8800.ORG)
1.1 Introducción al entorno de desarrollo ARM SDT 2.5
1. Propósito del experimento
Estar familiarizado con el entorno de desarrollo ARM SDT 2.5 y aprender el uso del emulador de puerto paralelo ARM. Utilice SDT para compilar, descargar, depurar y rastrear programas existentes y comprender las ideas y procesos básicos del desarrollo integrado.
2. Contenido del experimento
Este experimento utiliza el entorno de desarrollo integrado ARM SDT 2.5. Cree un nuevo archivo de proyecto simple y compile este archivo de proyecto. Aprenda a utilizar el emulador de puerto paralelo ARM y a configurar su entorno de desarrollo. Descargue el archivo compilado y ejecútelo en el controlador integrado. Aprenda a establecer puntos de interrupción en su programa y observe la memoria y las variables del sistema para sentar las bases para depurar su aplicación.
III.Conocimientos previos
Conocimientos básicos del lenguaje C, conocimientos básicos y métodos de depuración de programas.
4. Equipos y herramientas experimentales (incluidas herramientas de depuración de software)
Hardware: plataforma de desarrollo integrada ARM, emulador ARM7TDMI JTAG, PC Pentium100 o superior.
Software: Sistema operativo de PC Windows 98, Windows 2000 o Windows XP, entorno de desarrollo integrado ARM SDT 2.51 o ADS 1.2, controlador emulador, programa de comunicación HyperTerminal.
V. Pasos experimentales
1. Crear archivo de proyecto
(1) Ejecute el entorno de desarrollo integrado ARM SDT 2.5 (ARM Project Manager). Seleccione el comando Archivo|Nuevo, seleccione la pestaña Proyecto en el cuadro de diálogo, haga clic en el botón "Aceptar" para que aparezca el cuadro de diálogo Nuevo proyecto, como se muestra en la Figura 1-1. Tipo es el tipo de plantilla del proyecto, seleccione Imagen ejecutable ARM aquí y luego ingrese el nombre y la ruta del proyecto. Haga clic en el botón Aceptar para crear un nuevo archivo de proyecto.
(2) En el nuevo proyecto, como se muestra en la Figura 1-2, seleccione la "raíz" del árbol del proyecto. Utilice el comando Proyecto|Configuración de herramientas para work1.apj|lt;asmgt;=armasm|Establecer para configurar el ensamblaje para todo el proyecto.
Figura 1-1 Crear un nuevo archivo de proyecto Figura 1-2 Configurar el ensamblaje para todo el proyecto
(3) Dado que el procesador integrado ARM7TDMI en la placa de desarrollo no tiene procesador de punto flotante, configure el procesador de punto flotante en Ninguno en el cuadro de diálogo emergente, como se muestra en la Figura 1-3, y mantenga otras configuraciones sin cambios.
(4) Seleccione la "raíz" del árbol del proyecto y establezca el método de conexión de todo el proyecto mediante el comando Proyecto|Configuración de herramientas para work1.apj|asmlink|Establecer.
(5) En el cuadro de diálogo emergente, abra la pestaña "Entrada y cardinalidad" (como se muestra en la Figura 1-4) y configure la dirección de solo lectura y la dirección de lectura y escritura del conexión. La dirección 0x0c080000 es la dirección real de la SDRAM en la placa de desarrollo, que está determinada por el hardware del sistema; 0x0c200000 se refiere a la dirección de memoria que el sistema puede leer y escribir. En otras palabras, el área de solo lectura entre 0x0c080000 ~ 0x0c1fffff almacena el segmento de código del programa y, a partir de 0x0c200000, está el segmento de datos del programa.
Figura 1-3 Establezca el procesador de punto flotante en Ninguno Figura 1-4 Establezca la dirección de conexión
Consejo: El usuario puede modificar estos dos valores para determinar el tamaño del área de memoria del programa y el tamaño del área de memoria de datos.
Pero cabe señalar que la SDRAM es de 8 MB y el rango de direcciones es de 0x0c000000 a 0x0c7fffff. El espacio antes de 0x0c080000 está reservado para el búfer de la pantalla LCD.
(6) Abra la pestaña ImageLayout en el cuadro de diálogo Configuración del vinculador (como se muestra en la Figura 1-5) y configure el módulo de entrada del programa. Especifica que en el código generado, el programa comienza a ejecutarse en 44binit.s. Complete aquí el archivo de destino 44binit.o correspondiente a 44binit.s, e Init es el nombre del segmento de código en el archivo ensamblador.
(7) Seleccione el comando Proyecto|Editar plantilla de proyecto y el sistema abrirá el cuadro de diálogo Editor de plantillas de proyecto. En este cuadro de diálogo, puede ver una serie de nombres de pasos. sdt procesa los archivos del proyecto de acuerdo con estos pasos. Cada paso configura la operación correspondiente, así como la entrada, salida y línea de comando de la operación. Los lectores pueden seleccionar los pasos existentes, hacer clic en el botón "Editar" para abrir el cuadro de diálogo "Configuración de pasos" y observar las funciones implementadas por cada paso. Por ejemplo, el paso de compilación compila archivos .c y .h en archivos .o, y el paso de enlace concatena archivos .o y .alf para crear un archivo .axf. Se recomienda dejar la configuración en estos pasos en sus valores predeterminados. Sin embargo, falta un paso para generar el archivo .bin requerido a partir del archivo .axf, así que use el botón Nuevo para crear un nuevo paso para el compilador, como se muestra en la Figura 1-6, llamado RomImage.
Figura 1-5 Configure el módulo de entrada del programa Figura 1-6 Cree un nuevo paso para el compilador
(8) Configure el paso, como se muestra en la Figura 1-7 Contenido de RomImage. De esta manera, el compilador puede generar el archivo system.bin, que es el archivo ejecutable del sistema, durante la compilación. Se puede ver que la entrada de esta operación es el archivo .axf del proyecto actual, ubicado en Imagen, y la salida es system.bin, ubicado en Eprom. Esta operación la completa el componente fromelf. -nozeropad lt; $nombre del proyecto; .axf - sistema bin. Aquí puede ver la imagen configurada y la Eprom en la ventana del proyecto. El nombre del paso y el nombre de la ubicación de salida no tienen que ser iguales.
Consejo: Después de ingresar texto en el cuadro de texto, debe hacer clic en el botón Agregar para agregarlo al cuadro de lista de arriba; de lo contrario, la información de configuración se perderá cuando haga clic en el botón Aceptar.
(9) Seleccione el comando Proyecto|Editar variables para work1.apj y el sistema abrirá el cuadro de diálogo Editar variables para work1.apj. El cuadro de lista contiene algunas variables del proyecto. El lector también puede seleccionar un nombre de variable y su valor se puede ver en el cuadro de texto Valor. La variable $ProjectName se usa para establecer el nombre del proyecto, que puede ser diferente del nombre del archivo del proyecto, que se usará para nombrar el archivo .axf en Imagen. Tenga en cuenta que el valor de la variable config$armlink debe ser -info.total#total -ro-base#0xc080000 -rw-base#0xc200000 -first#44binit.o(init), que es el mismo que la configuración anterior del armlink. El valor de la variable config$asm es -fpu#none. Aquí debe establecer el valor de la variable build_target en system.bin. El compilador realizará los pasos anteriores después de generar este archivo, como se muestra en la Figura 1-8.
Consejo: Después de seleccionar una variable y cambiar su valor, debe hacer clic en el botón "Aplicar" para que surta efecto; si selecciona otra variable después de completar los cambios, la configuración no será válida.
Figura 1-7 Establecer el contenido de RomImage Figura 1-8 Establecer la variable build_target
(10) Seleccione el subárbol DebugRel en el árbol del proyecto y presione Eliminar para eliminarlo.
Consejo: El subárbol de depuración en el árbol de proyectos del sistema es la versión de depuración de la aplicación, que contiene información de depuración del sistema en el código de destino generado. El subárbol de lanzamiento es la versión de lanzamiento de la aplicación que genera código que no contiene información de depuración y que el compilador optimiza en cuanto a velocidad y tamaño de código.
(11) Regrese al cuadro de diálogo del editor de plantillas del proyecto, haga clic en el botón Editar detalles y podrá cambiar el nombre de la plantilla en el cuadro de diálogo emergente, como se muestra en la Figura 1-9. Después de cambiar el nombre de la plantilla, puede guardar el proyecto y copiar el proyecto vacío (no se han agregado archivos de proyecto) al directorio de la plantilla en la ruta de instalación de SDT. La próxima vez que cree un nuevo proyecto, podrá ver el cuadro de lista de tipos en. el cuadro de diálogo nuevo proyecto. Utilice esto. No es necesario restablecer los parámetros del proyecto cuando se utilizan plantillas.
(12) En este punto, el archivo del proyecto ha sido configurado. Esto incluye la configuración de parámetros para armlink y armasm, los pasos de compilación del archivo system.bin recién generado y las variables correspondientes. Se recomienda guardar el archivo del proyecto configurado como plantilla para uso futuro. Al mismo tiempo, preste atención a los consejos operativos anteriores. En el pasado, la mayoría de los usuarios no podían crear plantillas debido a errores operativos.
(13) Copie el directorio STARTUP en "1-Experimento del entorno de desarrollo" en el directorio del experimento SDT en el CD a la ruta del proyecto. Como se muestra en la Figura 1-10, seleccione la opción de origen en el subárbol de depuración del árbol del proyecto. Agregue los archivos *.S y *.c en el directorio INICIO al proyecto mediante el comando Proyecto|Agregar archivos a fuentes.
Figura 1-9 Cambiar nombre de plantilla Figura 1-10 Agregar código fuente al proyecto
(14) Seleccione la opción IncluídosFiles del subárbol Depurar en el árbol del proyecto. Agregue todos los archivos *.h en el directorio INICIO al proyecto mediante el comando Proyecto|Agregar archivos a archivos incluidos.
(15) En el proyecto que requiere un archivo de biblioteca, seleccione la opción de biblioteca del subárbol de depuración en el árbol del proyecto. Agregue archivos de biblioteca *.ALF al proyecto mediante el comando Proyecto|Agregar archivos a bibliotecas.
(16) Haga doble clic en main.c en la opción Fuentes del subárbol de depuración del árbol del proyecto para abrir el archivo main.c. El siguiente es el contenido de la función Main(), el programa enviará la cadena "¡Hola mundo!" a la pantalla LCD y al puerto serie.
int Main(int argc, char **argv)
{
ARMTargetInit();
LCD_Init(); p>
p>
LCD_ChangeMode(DspTxtMode); //Convierte el modo de visualización LCD al modo de visualización de texto
LCD_Cls() //Borrar comando de pantalla en modo de texto
LCD_printf("¡Hola mundo!\n"); //Salida a LCD
Uart_Printf("\n¡Hola mundo!\n"); //Salida a puerto serie
while (1);
}
Los lectores pueden abrir otros archivos fuente por separado para comprender los conocimientos básicos sobre el funcionamiento de este sistema. Este programa no utiliza el sistema operativo, simplemente explica el proceso de desarrollo del proyecto. El experimento que utiliza el sistema operativo aparecerá después del experimento "Transferencia y compilación de μC/OS-II en el procesador ARM".
2. Simulación y depuración en línea
(1) Regrese al cuadro de diálogo Administrador de proyectos ARM, seleccione el subárbol Depurar en el árbol del proyecto y luego use el comando "Depurar" ( o barra de herramientas) Crear un nuevo proyecto.
(2) Conecte el emulador ARM JTAG al puerto paralelo de la PC y la placa de desarrollo, encienda la placa de desarrollo y ejecute el controlador del emulador UarmJTAG.exe.
(3) Utilice el comando "Depurar" Proyecto | Depuración work1.apj (o el botón correspondiente en la barra de herramientas) para iniciar el depurador del software ARM Debugger.
(4) En el depurador ARM, configure el emulador mediante el comando Opciones | Configurar el depurador. Como se muestra en la Figura 1-11, configure el entorno de destino en Remote_A en el cuadro de diálogo emergente.
(5) Haga clic en el botón Configurar para configurar el emulador, como se muestra en la Figura 1-12.
Figura 1-11 Configurando el emulador Figura 1-12 Configurando el emulador
(6) Después de que aparezca el siguiente mensaje, haga clic en el botón "Sí" y se abrirá el depurador ARM. comienza a ejecutarse a través del emulador. Cargue el programa, como se muestra en la Figura 1-13.
Figura 1-13 Cargador
Nota: Después de configurar los pasos (4) y (5), depure directamente al paso (6), no se requiere ninguna configuración. Cuando no pueda continuar con el paso (6), repita los pasos (4) y (5).
(7) Después de cargar, ejecute el programa a través del comando Ejecutar|Ir (o el botón correspondiente en la barra de herramientas).
(8) Mientras el programa se está ejecutando, puede utilizar el comando Ejecutar|Detener (o el botón correspondiente en la barra de herramientas) para pausar el programa. Como se muestra en la Figura 1-14, la ventana Ejecutar mostrará la ubicación donde se pausó el programa.
La Figura 1-14 muestra la ubicación donde el programa está en pausa
(9) Utilice el comando Ejecutar|Paso (o el botón correspondiente en la barra de herramientas) para ejecutar el programa de uno en uno. paso. También puede utilizar los comandos Entrar y Salir para entrar o salir de llamadas de función.
(10) Cuando el programa deje de ejecutarse, seleccione el comando Ver|Archivos fuente para abrir la ventana de lista de programas fuente como se muestra en la Figura 1-15. Haga doble clic en el nombre del archivo en la lista para ver el. archivo fuente correspondiente.
Nota: Al visualizar archivos fuente, es posible que no pueda ver sus propios archivos fuente, por lo que deberá forzar la compilación del proyecto nuevamente.
(11) Abra el archivo main.c en la lista de archivos fuente. Seleccione una línea en el archivo fuente y haga clic con el botón derecho del mouse, como se muestra en la Figura 1-16. Utilice el comando Alternar punto de interrupción para establecer un punto de interrupción para que el programa deje de ejecutarse aquí.
(12) Utilice los registros, variables y comandos de memoria en el menú Ver para ver los registros de trabajo o las variables de memoria. Los lectores pueden probarlos uno por uno para sentar las bases de programas de depuración en el futuro.
Figura 1-15 Ver archivo fuente Figura 1-16 Establecer punto de interrupción 7025 ¡Espero que te sea útil!