Cómo aprender C incrustado sin ir a ningún instituto de capacitación

Diría que no hay mucha diferencia entre Embedded C y el C utilizado para codificar aplicaciones informáticas. Si eres bueno con C, entonces Embedded C será muy fácil. La mejor manera de comenzar con C incrustado es trabajar en varios proyectos. Es mejor elegir una buena plataforma que se adapte a usted. Si no tiene experiencia previa con sistemas integrados, es bueno comenzar con las series de microcontroladores Atmel ATmega y ATtiny. PIC también es bueno, pero personalmente he sentido que hay un mejor apoyo comunitario para las MCU de Atmel. Arduino es una buena plataforma para aprender sobre las diferentes cosas que puede hacer un microcontrolador. Pero oculta los detalles técnicos subyacentes y mantenerlo no es bueno a largo plazo si buscas ser un profesional de los sistemas integrados. Te contaré sobre el enfoque que tomé:

Empecé con Arduino. Vimos esta increíble serie de tutoriales de Jeremy Blum: Serie de tutoriales para Arduino

Hizo la mayoría de las cosas cubiertas en el tutorial. Eso me permitió comprender lo que pueden hacer los MCU. Luego me sumergí en más detalles técnicos y comencé a trabajar con los registros directamente usando Atmel Studio. Esto me dio más control y opciones que no puedes obtener con las bibliotecas Arduino. Una vez que domine eso, puede trabajar fácilmente con la mayoría de MCU e incluso MCU ARM.

Para trabajar en un dominio incrustado, debe tener conceptos sólidos en C. En la mayoría de las aplicaciones incrustadas se requiere un lenguaje C que le brinde una base de C. incrustada. Estos generalmente incluyen la comprensión de los registros centrales y periféricos del controlador.

Esto se debe a que C incorporado es un lenguaje que se utiliza para programar microcontroladores. Entonces para eso necesita tener el conocimiento de los registros utilizados en el controlador; que estarás programando. Puede hacerlo leyendo la hoja de datos del controlador. Puede comenzar con el microcontrolador simple como 8051.

Puedes echar un vistazo al libro – Introducción a 8051 por Mazidi. En eso puedes encontrar códigos simples que pueden programar el controlador 8051 para tareas simples. Cuando lea ese libro, encontrará que no hay mucha diferencia en C y Embedded C. Se llama Embedded C porque se usa en el dominio incrustado y en los controladores.


El C incrustado es solo diez veces más pequeño que el C. normal. Por lo tanto, si desea aprender C incrustado por su cuenta, le sugiero que comience a escribir códigos 🙂
Ok, siguiente pregunta, ¿por dónde empezar?
Hoy en día tenemos hermosos IDE para trabajar. Me gusta especialmente el IDE de MPLab de Microchip. No sé por qué, pero incluso hay otros IDE que son tan hermosos como el microchip.
Pero se reduce principalmente a qué microcontrolador desea trabajar. Según usted, elija un IDE.
Hay muchos foros en línea donde puede buscar ejemplos o cualquier cosa que desee.
¡Espero que esto ayude!

More Interesting

¿Cuál es la diferencia entre los ingenieros de software integrados y los ingenieros de hardware integrados?

Entre i3indya y cetpa, ¿cuál es mejor para el entrenamiento de verano en sistemas integrados? ¿Hay algún instituto mejor que los dos?

¿Cuál tiene mejor alcance sistemas integrados o ciberseguridad?

¿Cuáles son los lenguajes de programación esenciales, además de C incrustado, para aprender para una buena carrera en un dominio de sistema embebido?

¿Alguien tiene un código C (para el microcontrolador 8051 incorporado) para calcular el valor RMS de la onda sinusoidal leída por un ADC de 8 bits?

¿Qué debo prepararme para descifrar el trabajo del firmware incorporado?

¿Es necesaria la OOP para la ingeniería integrada?

¿Cuáles son las calificaciones necesarias para un aspirante a ingeniero de diseño de sistemas integrados de nivel básico para descifrar las entrevistas?

Quiero sumergirme en el campo de la robótica y necesito un concepto claro de cómo avanzar. ¿Cómo puedo hacerlo?

¿Cuál es la diferencia entre un dispositivo que ejecuta Embedded Linux con arranque seguro y un dispositivo sin arranque seguro?

¿Qué microcontroladores se pueden usar o se usan en entornos industriales?

¿Cuáles son los mejores recursos (libros, cursos de video, etc.) para aprender la programación del Sistema Embebido? Ya conozco el desarrollo de escritorio (usando C ++ y C #).

¿Se puede usar Adroid OS para sistemas embebidos, como si tuviera una pequeña pieza de hardware, después de algún evento controlado por hardware necesito enviar sms, también necesita una conectividad web? ¿Cómo se puede hacer?

¿Cómo controla un microcontrolador un sistema embebido? ¿Por qué se llama el corazón de un sistema embebido?

¿Cuál es el puerto ADC en los microcontroladores atmega32 y AVR y qué está haciendo?