Gracias por enviar su consulta! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Gracias por enviar su reserva! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Duración 21 horas
Temario del curso
Introducción a los sistemas embebidos y C++
- Resumen de la arquitectura de los sistemas embebidos
- Desafíos del desarrollo de software embebido
- Adecuación de C++ para microcontroladores y plataformas embebidas
- Equilibrio entre abstracción, rendimiento y limitaciones de recursos
Entorno de desarrollo C++ para sistemas embebidos
- Configuración de la cadena de herramientas de desarrollo embebido
- Compiladores, depuradores y sistemas de construcción
- Trabajo con dispositivos de destino
- Desarrollo e implementación de aplicaciones embebidas
Programación orientada a objetos para sistemas embebidos
- Principios del diseño orientado a objetos
- Clases y objetos en entornos con recursos limitados
- Encapsulación y diseño modular
- Aplicación efectiva de técnicas orientadas a objetos en aplicaciones embebidas
Características avanzadas de C++ para el desarrollo embebido
- Herencia y polimorfismo
- Funciones virtuales y consideraciones sobre la sobrecarga en tiempo de ejecución
- Plantillas (templates) y evitación de la expansión innecesaria de código
- Funciones inline y optimización del rendimiento
Gestión de memoria y optimización de recursos
- Limitaciones de memoria en los sistemas embebidos
- Consideraciones sobre el uso de la pila y el montón (heap)
- Estrategias de gestión de memoria dinámica
- Evitar la fragmentación de memoria y la inflación de código
Manejo de errores y consideraciones de seguridad
- Manejo de excepciones en entornos embebidos
- Diseño de software confiable y predecible
- Técnicas de programación defensiva
- Consideraciones de C++ para sistemas críticos en seguridad
Bibliotecas estándar de C++ y su uso en sistemas embebidos
- Selección de características adecuadas de la biblioteca estándar
- Minimización del uso de recursos
- Bibliotecas personalizadas y alternativas compatibles con sistemas embebidos
- Escritura de código eficiente y mantenible
Inicialización, interacción con hardware y depuración
- Secuencia de inicio de aplicaciones embebidas
- Rutinas de inicialización
- Depuración de aplicaciones en C++ en hardware de destino
- Diagnóstico de problemas de rendimiento y en tiempo de ejecución
Programación en tiempo real y sistemas operativos
- Fundamentos de los sistemas en tiempo real
- Trabajo con sistemas operativos en tiempo real (RTOS)
- Programación de tareas y restricciones de tiempo
- Desarrollo de aplicaciones responsivas y deterministas
Interoperabilidad entre C y C++
- Integración de bases de código de C y C++
- Llamada a bibliotecas de C desde C++
- Gestión de proyectos embebidos con lenguajes mixtos
- Estrategias de migración de C a C++
Modelización orientada a objetos y UML
- Aplicación de UML para el diseño de software embebido
- Modelización de clases y componentes del sistema
- Traducción de diseños a código embebido eficiente
- Mejora de la mantenibilidad mediante un diseño estructurado
Taller práctico de aplicación C++ para sistemas embebidos
- Desarrollo de una aplicación embebida utilizando C++
- Aplicación de técnicas de optimización y seguridad
- Pruebas y depuración en un dispositivo de destino
- Revisión de mejores prácticas y próximos pasos
Requerimientos
- Un conocimiento general de C++
Reseñas (2)
El formador se adaptó realmente al nivel de nuestro grupo y dedicó mucho tiempo y esfuerzo para asegurarse de que la presentación estuviera bien adaptada.
Nicolas Guerette-Berthiaume - Trilliant
Curso - C++ for Embedded Systems
Traducción Automática
Interactividad, tiempo para la programación autónoma. Aprendo mejor si tengo la oportunidad de descubrir la respuesta por mí mismo y no solo que me la digan. También fue muy positivo que el entrenamiento estuviera bien planeado, manteniendo los descansos para café y sin perder mi atención. El formador tenía un conocimiento muy profundo de C++, nos sentíamos cómodos preguntando cualquier cosa.
Barna Szecsi - GIS Europe SE
Curso - C++ for Embedded Systems
Traducción Automática