Definitivamente debe sentirse cómodo en C antes de intentar Embedded. Entonces, si ha aprendido C, debe aprender algunas operaciones y técnicas básicas que están disponibles en C pero que no son tan populares en el mundo de las aplicaciones normales. Aquí están algunos:
- Manipulación de bits. En los sistemas embebidos, a menudo necesita establecer o borrar bits en “registros” asignados en memoria específicos (variables de tamaño fijo). Esto se hace para configurar módulos operativos como ADC, SPI, UARTS o módulos USB, por nombrar algunos. Es importante alterar solo los bits que desea modificar, porque los bits restantes generalmente tienen su propio efecto. De todos modos, esto se hace enmascarando bits.
- Poco aislamiento. Al igual que en el punto anterior, en los sistemas embebidos, a menudo necesita reaccionar a uno o algunos bits en un “registro” mapeado en memoria, pero no a los bits restantes. Por lo tanto, este es generalmente el caso cuando está sondeando dispositivos de entrada y salida, y el microcontrolador proporciona indicadores para este propósito. Reaccionar a cualquier otra parte estaría mal. Por lo tanto, es necesario aislar los bits, y como puede haber adivinado, también se realiza mediante el enmascaramiento de bits.
- Lenguaje ensamblador. Debe aprender los conceptos básicos del lenguaje ensamblador del microcontrolador en su plataforma. Eso es necesario porque hay varias operaciones que deberá realizar para las cuales el nivel de abstracción en C simplemente no tiene acceso. Sin embargo, el fabricante o los creadores del IDE que usará a menudo proporcionan alguna interfaz (macros o bibliotecas) para que pueda realizar estas operaciones en C. pura De todos modos, siempre es una buena idea aprender cómo agregar líneas de ensamblaje a su Código C.
- Los calificadores volátiles y constantes. Estos informan al compilador que al menos una fuente distinta de su código puede modificar las variables. volatile hace exactamente eso, y const es una promesa de que su código no modificará la variable. Esto es útil con variables conectadas por hardware como dispositivos de E / S.
Hay muchas más cosas que aprender. Plug desvergonzado: Tengo un curso en udemy sobre este tema exactamente. Aquí está, si está interesado: más allá de Arduino, Parte 4: C para aplicaciones integradas
- ¿Alguien puede ayudarme a encontrar el mejor instituto de capacitación integrado en Hyderabad?
- ¿Qué debo hacer para convertirme en un gran ingeniero de sistemas integrados?
- ¿Se pueden colgar los microcontroladores durante la ejecución de un programa?
- ¿Cuál es la mejor opción electiva, Python, CCNA o sistemas integrados?
- ¿Cuáles son los pros y los contras de ESP8266 versus ESP32 como dispositivos IoT?