Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Fisica
Área: Area V: Electronica y Microprocesadores
(Programa del año 2016)
(Programa en trámite de aprobación)
(Programa presentado el 22/08/2016 14:05:02)
I - Oferta Académica
Materia Carrera Plan Año Periodo
SISTEMAS EMBEBIDOS TEC.UNIV.TELEC. 16/13 2016 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
KIESSLING DURAN, ROBERTO ANIBA Prof. Responsable P.Adj Exc 40 Hs
HERNANDEZ VELAZQUEZ, SERGIO FE Auxiliar de Laboratorio A.1ra Exc 40 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
90 Hs.  Hs.  Hs.  Hs. 6 Hs. 2º Cuatrimestre 08/08/2016 18/11/2016 15 90
IV - Fundamentación
Un sistema embebido es un sistema de computación diseñado para realizar una o algunas pocas funciones dedicadas.
Estos sistemas han manifestado un gran desarrollo sustentado en dos tendencias fundamentales: en primer término el aumento de las prestaciones del hardware en términos de capacidades de memoria y de proceso, y en segundo término la constante disminución de sus costos de producción. Debido a esto, los sistemas embebidos están presentes en casi todas las interacciones que realizan los seres humanos hoy en día; computación portable, electrónica de consumo o sistemas de control son solo tres ejemplos de la importancia actual de las tecnologías de sistemas embebidos.
Las telecomunicaciones no son ajenas a estas tendencias y hacen un uso intensivo de estas tecnologías. Es preciso entonces contar con conocimientos y habilidades específicos en sistemas embebidos.
V - Objetivos
En la presente actividad curricular se pretende introducir a los estudiantes en el desarrollo de aplicaciones en sistemas Embebidos. Para ello, se estudia la arquitectura y programación de microprocesadores y microcontroladores actuales, periféricos y componentes asociados, así como los estándares y protocolos de interconexión de los mismos.
Se presentan los conceptos generales que permitan obtener un criterio de selección para optimizar las prestaciones para una aplicación determinada.
Durante el transcurso del semestre se estudiará una familia de microcontroladores y utilizarán herramientas de desarrollo para realizar la programación de los mismos en lenguajes de alto nivel.
VI - Contenidos
Introducción a Sistemas Embebidos (SE)
CPUs vs. MCUs vs. SE. Ejemplos de Sistemas Embebidos. Opciones para construir un SE. Características de los SE
Introducción al Internet de las cosas (Internet of Things, IoT) Desafíos en IoT Construyendo sistemas Embebidos
Construyendo Sistemas Embebidos usando MCUs

Introducción a la plataforma mbed
Descripción general de la plataforma mbed. mbed Software Development Kit (SDK), mbed Hardware Development Kit (HDK)
Herramientas de desarrollo mbed. Comunidad mundial de desarrollo mbed. Ejemplos de plataformas de hardware mbed:
Freedom KL25Z, KL46Z y K64F, NXP LPC1768 y Nordic nRF51822. IoT con mbed

Arquitectura del procesador ARM Cortex-M0+
Arquitecturas y procesadores ARM. Serie ARM Cortex-M. Procesador Cortex-M0+: Descripción General, Diagrama de bloques, Registros, Mapa de memoria, Conjunto de instrucciones.

Introducción a la programación de Cortex-M0+
Código de programa. Lenguajes C vs. Assembler. Flujo de generación de programa. Almacenamiento en memoria. Tipos de datos. Acceso a datos en C y Assembler. Programación con código mixto C-Assembler.

Entradas y salidas digitales
Tensiones y valores lógicos. Controladore GPIO. Uso de punteros con GPIO. Estructura de datos para periféricos. Uso de LEDs, displays de 7 segemntos, Emisor y detector IR

Interrupciones y características de baja potencia
Interrupciones, que son y para que se usan. Interrupciones en el Cortex-M0+: el controlador de interrupciones anidadas NVIC (Nested Vectored Interrupt Controller). Módulo de puertos e interrupciones externas. Ejemplos

Bibliotecas de Software: CMSIS y mbed SDK
Descripción general de bibliotecas de software. Cortex Microcontroller Software Interface Standard (CMSIS): que es CMSIS, que esta estandarizado. Funciones. mbed SDK: que es, como se usa, caracteríticas, estructura. Ejemplos

Entradas y salidas analógicas
Descripción general. entrada analógica. Conversor Analógico a Digital. Salida Analógica, Conversor Digital a Analógico
Rango, resolución y cuantización. Frecuencia de muestreo. Uso de entradas y salidas analógicas con mbed.

Temporizadores y modulación de ancho de pulso
Descripción de temporizadores, componentes, modos de comparación y de captura. Modo de modulación por ancho de pulsos (PWM). Temporizador y PWM en nmbed. el ticker en mbed.

Comunicaciones embebidas
Comunicación Serial: UART, SPI e I2C. Protocolos e implementación mbed. Comandos AT, uso en modems, módulos Wifi y Bluetooth.

Sistema Operativo en Tiempo Real (RTOS)
Que es un Sistema Operativo (SO): tipos, funciones y servicios de un OS. SO de Tiempo Real: RTOS. Planificación de Tareas. mbed RTOS API: Hilos, Mutex y Semáforos.

VII - Plan de Trabajos Prácticos
Introducción a Sistemas Embebidos (SE)

Introducción a la plataforma mbed

Arquitectura del procesador ARM Cortex-M0+

Introducción a la programación de Cortex-M0+

Entradas y salidas digitales

Interrupciones y características de baja potencia

Bibliotecas de Software: CMSIS y mbed SDK

Temporizadores y modulación de ancho de pulso

Comunicaciones embebidas

Sistema Operativo en Tiempo Real (RTOS)
VIII - Regimen de Aprobación
Para regularizar la materia los alumnos deberán cumplir con los siguientes requisitos:

- Guías de laboratorio: aprobar la totalidad de las guías de laboratorio con su respectiva carpeta de informes, se pueden recuperar el 30% de los prácticos.

- Parciales: Durante el cuatrimestre se tomarán dos parciales. Los parciales incluirán temas teóricos y temas desarrollados en las guías de problemas. La aprobación de los parciales se obtiene con una nota igual o superior a 7 (siete).

- Proyecto Final: Desarrollo de un proyecto integrador de la asignatura, que incluya la interconección de 2 de las plataformas estudiadas, el informe técnico y su correspondiente defensa. Durante la defensa del mismo se evaluarán los conceptos teóricos aplicados.

IX - Bibliografía Básica
[1] Sergio R. Capriles, Cortex-M3 Desarrollo con microcontroladores
[2] Galeano Gustavo, Programación de Sistemas Embebidos en C, México, Alfaomega Grupo Editor, 2009, 544p.
[3] Joseph Yiu, The Definitive Guide to ARM Cortex-M0 and Cortex-M0+ Processors, Elsevier, 2015
[4] Fast and effective embedded systems design - Applying the ARM mbed Rob Toulson, Tim Wilmshurst, Newness, 2012
X - Bibliografia Complementaria
[1] Keith E. Curtis, Embedded multitasking with Small Microcontrollers, , ELSEVIER, 2006, 417p.
[2] Ken Arnold, Embedded Controller Hardware Design, , LLH Technology Publishing, 2000, 244p.
XI - Resumen de Objetivos
Tecnologías y Arquitecturas de sistemas Embebidos, herramientas de desarrollo y programación en lenguaje de alto nivel.
Interfaz de usuario, Manejo de Entradas/Salidas y Comunicaciones
Sistemas Operativos para sistemas embebidos
Uso de Sistemas Embebidos en Telecomunicaciones
XII - Resumen del Programa
Tecnologías y Arquitecturas de sistemas Embebidos, Arquitecturas Avanzadas ARM Cortex y herramientas de desarrollo, Programación en lenguaje de alto nivel, Interfaz de usuario, CMSIS y entorno de desarrollo integrado, Manejo de Entradas/Salidas y Comunicaciones
Sistemas Operativos para sistemas embebidos, Uso de Sistemas Embebidos en Telecomunicaciones
XIII - Imprevistos