Temario del curso
Introducción a la Programación de Sistemas Embebidos
- ¿Qué son los sistemas embebidos?
- Desafíos y consideraciones en el desarrollo de sistemas embebidos
- Introducción a Rust para sistemas embebidos
Configuración del Entorno de Desarrollo
- Instalación de Rust para el desarrollo de sistemas embebidos
- Configuración de las herramientas y el entorno de desarrollo
- Exploración de plataformas de desarrollo embebido y microcontroladores
Conceptos Esenciales del Lenguaje Rust para Sistemas Embebidos
- Visión general de la sintaxis y conceptos de Rust relevantes para sistemas embebidos
- Gestión de memoria y propiedad en la programación de sistemas embebidos
- Manejo de interrupciones y programación de bajo nivel con Rust
Trabajo con Periféricos y Controladores de Dispositivos
- Interfaz con pines GPIO (Entrada/Salida General)
- Temporizadores, contadores y PWM (Modulación de Ancho de Pulso)
- Comunicación UART (Transmisor-Recibidor Asincrónico Universal)
- Protocolos SPI (Interfaz Periférica Serial) e I2C (Circuito Integrado Interconectado)
Concurrencia y Programación de Tiempo Real
- Multitarea y concurrencia en sistemas embebidos
- Mecanismos de sincronización para requisitos de tiempo real
- Programación de tiempo real y priorización de tareas en Rust
Abstracciones de Bajo Nivel y Acceso al Hardware
- Trabajo con registros mapeados a memoria y acceso directo al hardware
- Uso de bibliotecas HAL (Capa de Abstracción de Hardware) en Rust
- Implementación de abstracciones de bajo nivel para un control eficiente del hardware
Depuración y Pruebas de Aplicaciones Embebidas
- Técnicas y herramientas de depuración para sistemas embebidos
- Pruebas unitarias y de integración para aplicaciones embebidas
- Perfilado y optimización del código embebido
Gestión de Energía y Optimización de Bajo Consumo
- Técnicas para gestionar el consumo de energía en sistemas embebidos
- Optimización del código para operación de bajo consumo
Consideraciones de Seguridad y Fiabilidad
- Seguridad de memoria y buenas prácticas de codificación segura en sistemas embebidos
- Manejo de errores y tolerancia a fallos en Rust para sistemas embebidos
- Protocolos de comunicación seguros y criptografía en aplicaciones embebidas
Resumen y Pasos Siguientes
Requerimientos
- Conocimiento básico de conceptos de programación
- Familiaridad con un lenguaje de programación (como C o C++)
- Conocimiento de microcontroladores y sus periféricos
- Comprensión general del desarrollo de sistemas embebidos
Audiencia
- Desarrolladores
- Ingenieros de sistemas embebidos
Testimonios (2)
La forma de explicar del formador
Deepak Tiwari - Beamtrail
Curso - Circuits and Electronics Fundamentals
Traducción Automática
El formador fue muy interactivo y mantuvo un ritmo constante.
Carolyn Yaacoby - Yeshiva University
Curso - Raspberry Pi for Beginners
Traducción Automática