La evolución de la electrónica con microcontroladores está haciendo de ellos auténticas computadoras integradas en las que ya no es completamente necesario programar en lenguaje ensamblador para conseguir unos resultados óptimos.
Aunque podemos encontrar distintas soluciones para programar microcontroladores en lenguajes de alto nivel como Pascal, Basic, Prolog, Ada, etc., con el que se pueden programar la inmensa mayoría de microcontroladores es con el lenguaje C, que en algunas ocasiones se ha personalizado para añadir características de manejo de Objetos propios de C++. Un claro ejemplo es la implementación del lenguaje C de las placas Arduino con microcontroladores AVR.
Por lo tanto, hoy en día si deseas programar de manera efectiva y rápida cualquier microcontrolador independientemente de su fabricante o lenguaje ensamblador propio, se hace imprescindible conocer el lenguaje de programación C en general, y más tarde sus particularidades a la hora de programar un determinado microcontrolador, o las particularidades de la herramienta (compilador) con la que programas en lenguaje C ese microcontrolador.
Para iniciarse en la programación C de microcontroladores recomiendo los siguiente libros, completamente gratuitos y de difusión libre. El primero sienta las bases para conocer el lenguaje C estándar. El ANSI C aplicable a cualquier compilador de lenguaje C independiente del sistema en el que vaya a correr el programa. Desde un microcontrolador de 8 bit, hasta una supercomputadora de IBM, las reglas y normas de programación son las mismas y los programas escritos en ANSI C compatibles a nivel de software.
Y el segundo, también de aplicación general, pero un poco más específico para el uso de microcontroladores, ya que trata el manejo de variables a nivel de bits y el uso de macros.
El conocimiento y uso de los conceptos tratados en estos dos libros te abrirá las puertas a la programación básica de cualquier microcontrolador, con prácticamente independencia de su modelo y fabricante.
Aprenda ANSI C como si estuviera en Primero
En estos apuntes se describe de forma abreviada la sintaxis del lenguaje C. No se trata de aprender a programar en C, sino más bien de presentar los recursos o las posibilidades que el C pone a disposición de los programadores.
Conocer un vocabulario y una gramática no equivale a saber un idioma. Conocer un idioma implica además el hábito de combinar sus elementos de forma semiautomática para producir frases que expresen lo que uno quiere decir. Conocer las palabras, las sentencias y la sintaxis del C no equivalen a saber programar, pero son condición necesaria para estar en disposición de poder hacerlo, o de entender cómo funcionan programas ya hechos. El proporcionar la base necesaria para la programación en C es el objetivo de estas páginas.
Descarga: https://mega.nz/#!2lZCzRAC
Programando C a Bajo Nivel
Este apunte está orientado para que el lector pueda apreciar cómo se puede trabajar en el lenguaje de programación C a través de sentencias de Bajo Nivel y utilizar aquellas herramientas que puedan resultarle útiles a la hora de preparar sus sentencias.
El seguimiento de esta guía precisa de un conocimiento básico del lenguaje sobre el que se opera.
Descarga: https://mega.nz/#!2hxjySTY
Todo lo analizado en estos textos es aplicable al lenguaje C++ que puedes Aprender o Repasar desde Cero siguiendo este video curso del profesor Pablo Augusto Sznajdleder que te recomiendo:
Por lo meno nos orientas a los q queremos iniciarno en la programacion c para ir dejando atras el lenguage ensamblador.
El ensamblador es para pussys