Primero tiene que ser bueno en la programación en C y luego en C incrustado, es decir, escribir programas para microcontroladores. En Embedded C, debe dominar la programación de interrupciones (ISR), ya que la mayoría de los dispositivos / periféricos en microcontroladores son controlados por interrupciones en tiempo real.
Lo que he escrito anteriormente es válido para los controladores de dispositivo de firmware. En caso de que esté buscando aprender controladores de dispositivos Linux, debe tener un conocimiento profundo del núcleo de Linux y el árbol de dispositivos Linux.
Otra opción podría ser escribir controladores de dispositivo para Embedded RTOS. Para esto, se debe aplicar el mismo enfoque que los controladores de dispositivos Linux. Aquí necesitaría aprender sobre la arquitectura RTOS, el núcleo y los dispositivos.
- ¿Qué es el UART en el sistema integrado?
- Cómo interactuar con una ROM externa 8051
- ¿Cuál es la mejor manera de aprender AVR?
- ¿Qué sistema operativo Linux es mejor para un sistema integrado?
- Cómo aprender C incrustado sin ir a ningún instituto de capacitación
Conocimiento esperado:
C y C incrustado, estructuras de datos (incluidos punteros, punteros a estructuras y matriz de estructuras, punteros de función), sistemas operativos (programación, procesos, subprocesos, gestión de memoria), arquitectura informática. Conocimientos de programación de dispositivos específicos como SPI, I2C, CAN, Ethernet, USB. El conocimiento de TCP / IP es una ventaja.
Si puede aprender y escribir controladores de dispositivo por su cuenta, también podrá responder preguntas en una entrevista. Sin aprender a desarrollar controladores de dispositivos, ni siquiera sueñe con pasar una entrevista para controladores de dispositivos simplemente leyendo / conociendo las preguntas estándar.