¿Qué todos los temas básicos debería saber si estoy entrevistando a un desarrollador C incorporado (4+ experiencia)?

Para el puesto de desarrollador integrado, considere los siguientes temas:

Lenguaje C: operadores en C, matrices, punteros en profundidad completa, asignación dinámica de memoria, estructuras y uniones, manejo de archivos, recursión, utilizando estructuras de datos como pila, cola, listas enlazadas, árbol, gráficos. Algoritmos Básicos: fusión y ordenación
Lenguaje C ++: objetos y clases, conceptos OOPS como herencia, polimorfismo, encapsulación, abstracción y ocultación de datos, plantillas OOPS, sobrecarga, alineamiento, C ++ STL (bibliotecas de plantillas estándar)
Embedded C: uso de operadores Bitwise, concepto de super loop, interrupciones, temporizadores de vigilancia, arquitecturas de software como Round Robin, Round Robin con interrupciones, función de programación de colas y RTOS (sistema operativo en tiempo real), escribir subrutinas, comunicarse a través de UART, trabajar con protocolos seriales como I2C, SPI y CAN, codificación e interfaz de dispositivos de entrada / salida como un teclado / LCD, programación básica en lenguaje ensamblador.
Sistema operativo: cualquier sistema operativo en tiempo real como Free RTOS, Rtx51 tiny o Rtx51, microcontrolador OS-2 (uC OS-2), manos en el sistema operativo Linux cualquier distribución, idea básica de trabajar con RTOS patentados como Vxworks, idea básica de Kernel, semáforos, buzones y mutex, conceptos de redes.
Microprocesador / Microcontrolador: RISC vs CISC, Harvard Vs Von Neumann Vs Modified Harvard Architecture, procesadores de 32 bit vs 64 bit, registros, unidad aritmética y lógica, temporizadores y contadores, ADC / DAC, conceptos básicos de arquitecturas de 8 bit / 16 bit, cualquier instrucción conjunto, conceptos básicos de ARM Architecture.

La lista de temas cubre todo el dominio de los sistemas integrados. Se pueden cubrir otros temas como DSP y procesamiento multimedia (procesamiento de video, imagen y audio) según los requisitos y la especialización. Trabajar en estos temas definitivamente le dará a cualquiera un gran trabajo en el campo de los Sistemas Embebidos.

Lo primero que debes saber es dejar de escribir C / C ++. Son 2 idiomas diferentes construidos en diferentes mentalidades y propósitos.

More Interesting

¿Por qué RS-232 no usa voltajes TTL en lugar de + ve V y -ve V para representar niveles lógicos?

¿Cuáles son las aplicaciones de los microcontroladores especialmente con la placa Arduino Uno?

Soy un estudiante de segundo año de B.Tech en ingeniería física. Estoy interesado en sistemas embebidos, y he realizado proyectos básicos usando la placa Arduino. ¿Cuáles son las opciones de MS para alguien como yo y cómo debo hacerlo?

¿Cómo se suministra el agua automáticamente para el sistema de automatización de invernadero integrado?

Lua y C, ¿cuál es el mejor lenguaje de programación para sistemas embebidos?

¿Arduino es realmente útil para entrar en sistemas embebidos, ya que tiene sus propias bibliotecas? ¿O deberíamos comenzar con un MCU 8051?

¿Cuáles son algunas competencias para sistemas integrados y robótica para individuos?

¿Qué tipo de procesadores especializados se utilizan en los teléfonos inteligentes para un mejor rendimiento óptimo?

¿Cómo es hacer maestrías en sistemas embebidos en Alemania?

¿Por qué es tan difícil diseñar sistemas embebidos en tiempo real en multiprocesadores? ¿Cuáles son los principales desafíos y cómo se puede mejorar?

¿Cuál es el tamaño de las variables integrales en un controlador de 8 bits, un controlador de 16 bits y un controlador de 32 bits, y depende totalmente de la arquitectura MCU o la arquitectura del compilador?

¿Qué es un dispositivo incrustado?

Mirando el SOC de los microprocesadores y microcontroladores, creo que no hay diferencia entre los dos, ya que ambos pueden reemplazarse entre sí. ¿Es correcto este entendimiento?

¿Cómo puede la tecnología mejorar la calidad de un restaurante?

¿Cómo funciona un sistema en chip (soc)?