Indica a qué pin del GPIO está conectado el led rojo de la placa. Puedes consultar el esquemático de la placa
¿Cómo configurarías el GPIO para que se puedan encender y apagar los leds rojo y verde mediante software?
Para conectarnos a la interfaz de ordenes de OpenOCD debemos...
La orden de OpenOCD load_image...
Asumiendo que los pines a los que están conectados los leds rojo y verde están configurados como de salida, ¿cómo apagarías el led verde?
Asumiendo que los pines a los que están conectados los leds rojo y verde están configurados como de salida, ¿cómo encenderías el led verde?
Indica a qué pin del GPIO está conectado el temporizador 2 (TMR2). Puedes consultar el esquemático de la placa
Asumiendo que los pines a los que están conectados los leds rojo y verde están configurados como de salida, ¿cómo encenderías el led rojo?
OpenOCD...
Asumiendo que los pines a los que están conectados a los leds rojos y verdes están configurados como de salida,¿Como apagarias los dos leds?
La orden de OpenOCD mww 0x80000054 0x00002000
Indica a que pin de GPIO está conectado el temporizador 2 (TMR2)
La orden de OpenOCD mww 0x80000054 0x00002000"
Asumiendo que los pines a los que están conectados los leds rojo y verde están configurados como de salida, ¿cómo apagarías los dos leds? Puedes consultar el esquemático de la placa (https://github.com/malvira/econotag) y el manual de referencia del procesador (http://www.freescale.com/files/rf_if/doc/ref_manual/MC1322xRM.pdf)
¿Cuál de las siguiente opciones transfiere el contenido de la variable masc al registro r1?
Indica en cual de las siguientes secciones se deben definir las variables globales inicializadas en un fichero ensamblador
¿Cuál de las siguiente binutils usarías para desensamblar un fichero elf?
¿Cuál de las siguientes binutils usarías obtener las tabla de símbolos de un ejecutable?
El el SoC MC1322x de Freescale dispone de 96 kBytes de memoria RAM. ¿En cuántos bloques está estructurada dicha memoria?
¿Cuál de las binutils se usa para extraer la imagen binaria de un archivo elf?
Indica qué opción declara correctamente una variable global de 32 bits en ensamblador:
Al almacenar las máscaras de los leds en variables en lugar de usar símbolos definidos mediante la directiva.set, la velocidad de ejecución del programa...
Asumiendo que se ha mapeado la sección de código del programa hello al comienzo de la memoria RAM de la Econotag, ¿a qué banco de memoria se debería mapear la sección de datos del programa hello.elf para maximizar el tamaño de la imagen binaria del ejecutable?
En un script de enlazado, ¿cómo obtendrías la dirección virtual en la que comienza la sección de código de un ejecutable?
¿Cual de las siguientes opciones transfiere el contenido de la variable masc al resgistro r1?
La directiva.global a del ensamblador de la GNU...
Para definir en el linker script un símbolo que permita acceder a los registros del GPIO, debemos definir el símbolo GPIO_BASE = 0x80000000...
Para consultar la tabla de símbolos de nuestra aplicación podemos usar la binutil nm sobre...
A la hora de inicializar las pilas de los diferentes modos de ejecución...
¿A qué dirección de memoria está mapeado el cargador de la Econotag?
El resultado final de la construcción del BSP es...
A la hora de diseñar una aplicación que haga uso del BSP, el linker script...
¿Para que utilizamos la herramienta bbmc?
Indica cuál de las siguientes partes del cargador del BSP desarrollado en las prácticas se podría realizar en C
Indica cuál de las siguientes opciones no es válida para cargar y ejecutar una imagen ejecutable en la RAM de la Econotag
Si se usa nuestro cargador para ejecutar una aplicación en la Econotag, ¿Qué ocurrirá si la función main de la aplicación retorna?
Indica cuál es el único símbolo que es necesario definir en el script de enlazado del BSP de la Econotag
Indica cuál de los siguientes componentes del BSP no es necesario para su construcción
El fichero que contiene el cargador del BSP es
¿A qué sección emite el compilador las constantes globales de un fichero con código C?
Indica cual de las siguientes tareas no está soportada por el cargador de la ROM de la Econotag y es necesario implementarla en el del BSP
A la hora de diseñar el script de enlazado del BSP para la Econotag, para aquellas secciones que se copiarán de la Flash a la RAM...
El cargador de la ROM de la Econotag...
De todas estas tareas, indica cual es la primera que debe ejecutar el cargador para que la aplicación se pueda ejecutar correctamente
Indica la dirección de memoria a la que estará mapeada la tabla de vectores de excepción que se define en el fichero crt0.s de nuestro BSP
Los manejadores de excepción...
Indica qué opción es la que debe usar el desarrollador de aplicaciones para instalar la función my_handler como un manejador personalizado para las excepciones de tipo Undefined Exception
La función excep_disable_ints ()...
¿En qué dirección de memoria RAM estará la tabla de manejadores una vez que se haya cargado la imagen ejecutable en la placa?
Indica el fichero del BSP en el que están definidos todos los tipos de excepción de la arquitectura ARM
¿Qué contiene cada una de las entradas de la tabla de manejadores de excepción?
Indica qué opción es la correcta para insertar una instrucción no definida en un programa escrito en C
Indica cual de las siguientes opciones declara correctamente en C un manejador para una excepción de tipo Undefined Instruction
Si insertamos una instrucción no definida en nuestro programa, pero se nos olvida instalar un manejador para que gestione la excepción cuando se trate de ejecutar dicha excepción...
La instrucción msr...
Indica el fichero del BSP en el que está definida la tabla de manejadores
En el registro UTxCON de las UART de la Econotag, el campo Tx_fifo_addr_diff...
La aplicación para probar el driver L0 que se propone en la práctica debe cambiar el estado de los leds de la Econotag (de encendido a apagado y viceversa) según los caracteres que se reciban por la UART. Si la placa recibe una 'r' (cambiar el estado del led rojo), ¿cómo sabe la aplicación si el led está encendido o apagado para poder cambiar su estado?
¿Qué registro se usa para fijar la frecuencia de las UART de la Econotag?
Para poder utilizar la UART es necesario fijar la función de sus pines a...
En la lección de teoría se explica el diseño de la estructura de datos uart_regs_t, que permitirá acceder de forma cómoda a los registros de las UART de la Econotag. Sin embargo, aunque se ofrecen los detalles de la mayoría de los registros, se omiten algunos, de forma que los estudiantes puedan demostrar en la práctica que saben completar la estructura de datos con los registros que faltan. De los siguientes registros, indique cual no se detalla en teoría y es necesario que el estudiante lo añada a la estructura.
En la función de inicialización de la UART de la Econotag...
Para mandar un carácter mediante la UART de la Econotag...
¿Cuántas UART tiene la Econotag?
Si se ha usado OpenOCD para subir una aplicación a la placa Econotag y dicha aplicación usa la UART1 para comunicarse con el PC, ¿qué puerto serie se debe indicar en el emulador de terminal para poder conectar con la UART de la placa?
Para poder configurar la función de los pines de E/S que se usarán por una UART de la Econotag es necesario que...
En el registro URxCON de las UART de la Econotag, el campo Rx_fifo_addr_diff...
¿Se puede enviar una cadena de caracteres usando sólo las funciones de la capa L0 del driver de la UART?
La función de inicialización de la uart debe configurar el controlador de interrupciones para asignar las peticiones de interrupción de las uart a las entradas de interrupción de la CPU. ¿A cuál de ellas mapea cada uart?
¿Cómo sabe la ISR si la petición de interrupción de la uart se debe a la recepción de datos?
En un driver L1, la función de envío bloqueante del driver de la uart...
En un driver L1, la función de recepción bloqueante del driver de la uart...
Dado que el driver L1 de la uart está basado en sendos búferes circulares de envío y recepción que son compartidos tanto por las funciones send y receive como por la ISR, es necesario que las funciones send y receive accedan a su búfer correspondiente dentro de una sección crítica para evitar condiciones de carrera con la ISR. Por lo tanto...
¿En qué nivel inhibe/restaura interrupciones la función uart_send para acceder de forma segura al búfer de envío del driver de la uart?
Una de las funcionalidades que añaden las funciones de nivel 1 de un driver es el chequeo de errores en los parámetros. En el caso de que algún parámetro sea erróneo, la función retornará...
¿Cómo sabe la ISR del driver de la uart si la aplicación ha instalado una función callback de recepción en la uart2?
En la aplicación de prueba del driver L1 de la uart que se propone en el ejercicio de la práctica 9, El estado de los leds que deben parpadear se modifica en...
La función callback de recepción del driver de la uart es invocada por...
2.Lo primero que debe hacer una ISR es reconocer que está sirviendo la interrupción para que el dispositivo deje de solicitar la atención de la CPU.¿Cómo reconoce la ISR de la uart de la Econotag que está atendiendo una peticion interrupcion causada por una recepcion de datos?
En un driver L1, la función de recepción bloqueante del driver de la uart..
¿Qué hace la ISR de la uart en el caso de que el dispositivo solicite más datos para enviar pero no haya más datos en el bufer circular de envio del driver?
¿Cuantas ISR hay definidas en el driver de la uart de la Econotag?
En caso de éxito, ¿qué valor retorna la funcion uart send?
¿Cuántas ISR hay definidas en el driver de la uart de la Econotag?
Indica qué código fijan las funciones del driver de la uart en la variable global errno en el caso de que reciban un identificador de uart no válido en el sistema
Lo primero que debe hacer una ISR es reconocer que está sirviendo la interrupción para que el dispositivo deje de solicitar la atención de la CPU. ¿Cómo reconoce la ISR de la uart de la Econotag que está atendiendo una petición interrupción causada por una recepción del datos?
El uso de funciones callback...
¿Qué hace la ISR de la uart en el caso de que el dispositivo solicite más datos para enviar pero no haya más datos en el búfer circular de envío del driver?
La E/S estándar en C consiste en...
Indica cual de las siguientes opciones representa una llamada a sistema en Newlib
¿Sobre qué dispositivo están abiertos los ficheros estándar stdin, stdout y stderr antes de que en el proceso de inicialización se registre la uart1 y se redirijan a este dispositivo?
Indica cual de las siguientes opciones no es un fichero de E/S estándar
Si un periférico no se ha registrado en el BSP como un dispositivo...
En caso de éxito, la llamada a sistema read retornará...
Indica en cual de las siguientes llamadas a sistema no se usa la implementación mínima por defecto para las uart de la Econotag
A la hora de registrar un dispositivo en el BSP...
Indica en cual de los siguientes ficheros de Newlib se encuentra la implementación de la función printf
Supongamos que se llama a la función estándar lseek, que posiciona el cursor dentro de un fichero, usando como argumento el fichero stdout, que está definido sobre una uart del sistema. Si las uart del sistema no tienen definida una implementación para la función lseek en la tabla de dispositivos del sistema, ¿qué debe hacer la implementación de la función stub de lseek?
¿Cuántos ficheros se pueden abrir sobre una uart?
Los descriptores de fichero son de tipo...
En caso de éxito, la llamada a sistema open retornará...
En caso de que una llamada a sistema de Newlib falle su valor de retorno será...
¿Dónde se debe hacer la llamada a la función bsp_register_dev del BSP?
En caso de éxito, la llamada a sistema read retornará
Indica en cual de las siguientes llamadas a sistema no se usa la implementacion minima por defecto para las uart de la Econotag.
En caso de éxito, la llamada a sistema open retornará
¿Sobre qué dispositivo están abiertos los ficheros estándar stdin,stdout y stderr antes de que en el proceso de inicialización se registre la uart1 y se redirijan a este dispositivo?
¿Donde se debe hacer la llamada a la funcion bsp_register_dev del BSP?
Indica en cual de los siguientes ficheros de Newlib se encuentra la implementacion de la funcion printf
En caso de que una llamada a sistema de Newlib falle su valor de retorno será
Supongamos que se llama a la función lseek, que posiciona el cursor dentro de un fichero, usando como argumento el fichero stdout, que está definido sobre una uart del sistema. Si las uart del sistema no tienen definida una implementacion para la funcion lseek en la tabla de dispositivos del sistema, ¿qué debe hacer la implementacion de la funcion slub de lseek?
A la hora de registrar un dispositivo en el BSP....