Programa

PROGRAMA ANALITICO 

TEMA 1: INTRODUCCIÓN a los MICROPROCESADORES y MICROCONTROLADORES.

TEMA 1-1: Historia de los automatismos y las computadoras. Máquina Elemental. Conceptos Generales: Sistemas de numeración, compuertas lógicas, sistemas combinacionales. Repaso de sistemas con memoria, flip flops, registros. Clasificación de las Memorias. Memorias de acceso aleatorio(RAM). Memoria de solo lectura(ROM). Máquina de estado y Máquina de Turing.

TEMA 1-2:  Sistemas Embebidos. Arquitectura de computadoras: Harvard y Von Neumann. Elementos de una CPU: ALU, Bus de instrucciones, Bus de datos, Bus de Control, Ciclo de búsqueda y ejecución de una instrucción. Estructura de una instrucción. Set de instrucción: RISC, CISC.

 

TEMA 2: MICROCONTROLADORES ARM: (STM32)

TEMA 2-1: Características generales periféricas y especiales. Descripción General. Variedad de dispositivos de Flia STM32F. Dispositivos Programables on Board.

TEMA 2-2: Arquitectura interna. Registros principales. Registros principales. Organización de la Memoria, Mapa de memoria RAM, STACK, FLASH de programa, Registros de Módulos Periféricos. Tabla de Vectores de Interrupción.

TEMA 2-3: Contador de Programa (PC), Puntero de Pila, Registro de estado. Set de Instrucciones, Modos de direccionamiento: Registros, Indexado, Indirecto a Registros, Indirecto Autoincrementado. Programación en assembler, ciclos de instrucción.

TEMA 2-4: Configuración y uso de Puertos de Entrada/Salida. Interrupciones con el módulo EXTI.

TEMA 2-5: Modulo Básico de Reloj. Timer del sistema (Systick) y perro guardián (WatchDog).

 

TEMA 3: Programación C

TEMA 3-1: El lenguaje de programación C. Lenguajes de alto nivel compilados e interpretados. El proceso de compilación y vinculación. Librerías. Unidades de traducción. El preprocesador de C. Encabezados.

TEMA 3-2: Estructura de un programa en C. Funciones. Estructuras secuenciales. Estructuras de decisión. Bucles. Expresiones. Variables. Tipos de datos básicos. Constantes. Operadores. 

TEMA 3-3: Manejo de memoria y tipos estructurados. Clase de almacenamiento. Arreglos y cadenas. Punteros. Estructuras y uniones. Definición de tipos. Enumeraciones.

TEMA 3-4: Estilo orientado a objetos. Separación de intereses. Principios SOLID.

 

TEMA 4: MÓDULOS PERIFÉRICOS del (STM32F103)

TEMA 4-1: Modulo del Timer. Generación de interrupciones periódicas. Modos compare/capture. Módulo PWM avanzado.

TEMA 4-2: Conversor Analógico Digital. Configuración de captura en modo simple o en scan. Configuración de la cantidad de bits usados y alineación. Determinación de la velocidad de máxima de muestreo.

TEMA 4-3: Modos de Comunicaciones. Transmisión asincrónica. Uso de la UART. Configuración modo multiprocesador. Cálculo del overget. Transmisión sincrónica. Módulos SPI y I2C.

 

TEMA 5: Metodologías de desarrollo

TEMA 5-1: Desarrollo ágil de software. Programas como medio de comunicación.

TEMA 5-2: Especificación de comportamiento. El lenguaje del problema.

TEMA 5-3: Desarrollo basado en pruebas (Test Driven Development, TDD). El ciclo de desarrollo basado en pruebas.

TEMA 5-4: Metodologías ágiles. Ciclos cortos y realimentación rápida. Automatización de pruebas.

 

TEMA 6: SISTEMA OPERATIVO DE TIEMPO REAL

TEMA 6-1: Introducción y definición de un Sistema Operativo en Tiempo Real (RTOS). En que caso usar un RTOS. Beneficios y desventajas de usar un sistema operativo.

TEMA 6-2: Definición de tareas, multitarea y Scheduler (llamadas al sistema). Estados de las tareas y diagrama de ejecución. Multitarea con bloqueo. Retardos de tiempo y retardos repetitivos en RTOS.

TEMA 6-3: Sincronización entre tareas. Semáforos y su uso típico. Casos especiales de semáforos, exclusión entre tareas, mutex. Caso de inversión de prioridades en un mutex. Intercambio de datos entre tareas, pilas. Consideraciones del uso pilas con respecto al uso de recursos.

Última modificación: miércoles, 20 de marzo de 2024, 23:37