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 de desarrollo y el entorno
- Exploración de plataformas de desarrollo embebido y microcontroladores
Conceptos esenciales de Rust para sistemas embebidos
- Resumen de la sintaxis y los 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 de propósito general)
- Temporizadores, contadores y PWM (Modulación por ancho de pulso)
- Comunicación UART (Receptor/Transmisor Asíncrono Universal)
- Protocolos SPI (Interfaz Periférica Serial) e I2C (Circuito Integrado Intercomunicante)
Programación concurrente y de tiempo real
- Multitarea y concurrencia en sistemas embebidos
- Mecanismos de sincronización para requisitos de tiempo real
- Planificación en tiempo real y priorización de tareas en Rust
Abstracciones de bajo nivel y acceso al hardware
- Trabajo con registros mapeados en 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 prueba de aplicaciones embebidas
- Técnicas y herramientas de depuración para sistemas embebidos
- Pruebas unitarias e integración de 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 operar con bajo consumo
Consideraciones de seguridad
- Seguridad de la memoria y 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 segura y criptografía en aplicaciones embebidas
Resumen y próximos pasos
Requerimientos
- Conocimientos básicos 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
Público objetivo
- Desarrolladores
- Ingenieros de sistemas embebidos
Testimonios (2)
Ser capaz de solicitar temas avanzados incluso si no estaban planificados inicialmente.
Gabriel Chouinard - Spark Microsystems
Curso - FreeRTOS: Programming for Real Time Operating Systems
Traducción Automática
La presentación del formador y su forma de comunicarse.
Gianpiero Arico - Urmet Spa
Curso - Embedded Linux Systems Architecture
Traducción Automática