embedded - una - tiempos verbales
Recomendaciones para la formaciĆ³n de desarrollo en tiempo real+incrustado (5)
Este es un tema realmente complicado, hay tantas opciones y compensaciones.
Con respecto al hardware, optaría por un microcontrolador de gama baja, porque las cosas tienden a ser más fáciles cuando se vuelven más pequeñas, y cuanto más lejos del escritorio, más aprende la mentalidad de la programación integrada.
Ya que se encuentra en Japón, probablemente sea mejor verificar localmente qué controlador es popular, para que obtenga un buen apoyo de la comunidad y pueda comprar fácilmente piezas.
Aquí en Alemania es AVR ATMEGA, y creo que es una buena opción. Tiene la mejor compatibilidad con las herramientas de GNU, está disponible en paquetes DIP y puede ejecutar su oscilador interno para que pueda ejecutarse fácilmente en una placa de prueba. El mayor obstáculo fue que necesitaba un programador de ISP. Hay un buen tutorial en alemán.
También tengo un R8C de Renesas, que podría ser más popular en Japón. Es más difícil ejecutar las herramientas GNU, tuve que construirlas yo mismo desde la fuente. Para MS-Windows existe la suite IAR Kickstart gratuita con un tamaño de código limitado a 4 KB. Se puede programar con una interfaz en serie (pero con niveles TTL). Obtuve un módulo FTDI USB-Serial para eso.
En cuanto a RTOS, eche un vistazo a OSEK, hay varias implementaciones gratuitas. Se puede usar en controladores muy pequeños.
También puede escribir un RTOS básico usted mismo, no es tan difícil y usted aprende más.
Actualmente estoy estudiando para una carrera en ingeniería incrustada en tiempo real. Pero resulta un tanto difícil encontrar un buen material de capacitación. Especialmente porque no puede experimentar el desarrollo integrado como lo haría con el desarrollo de aplicaciones de escritorio.
¿Hay libros y / o kits que serían útiles para la capacitación básica? ¿Alguna recomendación para un RTOS para el estudio?
¿Hay alguna recomendación al usar un RTOS?
No es necesario que aprenda un RTOS específico, hay montones de RTOS incrustados que segmentaron en nichos de mercado e incluso si conoce el segmento exacto en el que va a trabajar, todavía hay muchos SO operando en el mismo segmento.
Lo importante es comprender los conceptos básicos de los sistemas operativos y tener un fuerte fondo de C. Cuando estamos reclutando (somos una casa de desarrollo integrada), no requerimos ningún conocimiento específico en programación integrada o sistema operativo específico. Estamos buscando gente inteligente que escriba el código C perfecto y sea capaz de aprender.
No hay alternativa para jugar con el hardware y el software con sus propias manos. Afortunadamente, esto es fácil de lograr. Las placas de desarrollo simples para el chip AVR se pueden comprar por unas pocas docenas de $$ en línea (como STK500 o Arduino ) y toda su cadena de herramientas de software está abierta y se puede descargar.
En cuanto al sistema operativo: ¡comience sin un sistema operativo! Muchos códigos incrustados se ejecutan sin un sistema operativo, y también es la mejor manera de comenzar a programar. Experimentando con varias técnicas de escritura de código que no pertenece al sistema operativo aprenderá a apreciar cuándo y por qué necesita un sistema operativo, y cómo usarlo mejor.
Primero necesita averiguar qué desea aprender sobre los sistemas integrados.
*) especificaciones del hardware *) sistema operativo *) programación de la aplicación *) placa trae *) microcontrolador pequeño *) Linux
... Y muchas más opciones ...
Decidiría completar un determinado proyecto integrado y comprar / aprender las tecnologías asociadas.
Recomendaría Quantum Leaps Platform y Quantum Framework. Es un entorno de máquina de estado sofisticado que requiere una huella extremadamente baja. También se puede ejecutar en Windows (para aprenderlo).