¿Cómo se programa un microcontrolador?

La forma más directa de comenzar a programar microcontroladores sería

  1. Compre un tablero de evaluación uC barato, mejor, pero no necesariamente basado en ARM (pero, por favor, no compre Arduino o sus competidores, ya que necesitará aprender a programar C, no algunos lenguajes para aficionados y para comenzar es mejor si profundiza en los detalles hasta un registro único escrito).
  2. Luego descargue el proyecto de ejemplo más simple del sitio web del proveedor, generalmente será un programa que enciende y apaga un LED periódicamente.
  3. Lea el código, intente comprender qué hace cada línea, consulte los manuales de hardware y las guías de usuario para obtener detalles sobre los registros. Está bien si toma mucho tiempo por primera vez (un día entero, o dos, o una semana, dependiendo de sus antecedentes).
  4. Luego cierre el proyecto de ejemplo y haga el suyo con una funcionalidad similar. Puedes jugar con frecuencia o patrones parpadeantes. Una vez que hayas terminado, eres un programador incrustado =)
  5. Sin embargo, todavía hay mucho potencial de crecimiento. Usted puede:

    a) Explore otros dispositivos, como UART, DAC / ADC, dispositivos externos conectados a través de I2C o SPI, etc.

    b) Aprenda a usar las interrupciones, modifique el código de inicio para agregar nuevos controladores.

    c) Aprenda la arquitectura del procesador, escriba algunos ensamblajes.

    d) Pruebe otras arquitecturas, como AVR, MSP430, procesadores DSP, FPGA.

    e) Deje de usar IDE por un tiempo, escriba su propio archivo MAKE para comprender cómo funcionan el compilador y el enlazador.

    f) Intente portar algunos RTOS a su placa o use un RTOS portado previamente.

    g) Aprenda electrónica, implemente un dispositivo de comparación para su placa de evaluación (muchas placas proporcionan interfaces para eso) o incluso su propia placa principal. Para esto último, es posible que necesite usar microcontroladores en el paquete DIP, si no va a fabricar su propia PCB.

    h) No “h” para el comienzo =)

Para los procesadores básicos, especialmente los que tienen Dual In-line Packaging (DIP), obtienes programadores específicos del dispositivo en los que pegas los cables del IC en ranuras para descargar el archivo hexadecimal. Si bien estos programadores son económicos, la desventaja es que cada vez que desee cambiar el programa, debe eliminar el IC de la placa de circuito para descargar el código.

Alternativamente, puede usar un conector JTAG / SWD en su PCB para programar su procesador in situ (es decir, sin tener que quitarlo de la PCB); utilizando sondas de depuración JTAG (por ejemplo, Segger: SEGGER – Los expertos integrados – Sondas de depuración J-Link – Descripción del modelo – BASE J-Link). Aunque son más costosos, estos dispositivos ofrecen una amplia gama de características, como depuración por pasos, puntos de interrupción ilimitados en la memoria flash del procesador, capacidad de establecer puntos de interrupción en las memorias flash externas utilizadas en su PCB, reutilización; ya que estos dispositivos admiten una amplia variedad de procesadores … etc.

puedes comenzar a programar el microcontrolador usando arduino, u este enlace,

y también puede usar avr, pic, procesador de brazo, debe aprender sobre electrónica básica y sensores, y luego usar youtube y google como su motor de búsqueda