Aprende ensamblador ARM de manera sencilla y VisUAL

Aprender, o al menos conocer, el lenguaje ensamblaje es muy importante si se desea tener una idea muy clara de cómo funciona realmente cualquier sistema informático o de control electrónico programable. VisUAL es un emulador muy indicado para aprender, de una manera muy práctica y sencilla, el lenguaje ensamblador de CPUs diseñadas con arquitectura ARM.

Además de admitir un gran subconjunto de instrucciones ARM, la CPU se emula a través de una serie de animaciones que ayudan a visualizar el flujo de datos en el microprocesador o microcontrolador emulado, incluyendo animaciones muy útiles para comprender algunas de las instrucciones más difíciles de entender, como los cambios y la manipulación de la pila de datos.

Al estar diseñado específicamente para utilizarse como herramienta de enseñanza en el Imperial College London, su Interface Gráfica de Usuario (GUI) es muy amigable, se destacan claramente todos los errores de sintaxis y se muestran ejemplos de la sintaxis correcta.

GUI probando una simple instrucción ADD con dos números.

Además, cuenta con todo aquello que se puede esperar de un emulador, como la ejecución paso a paso de instrucciones, visualización de datos o registros en diferentes ventanas, establecer puntos de interrupción, etc. Incluso advierte de la ejecución de posibles bucles infinitos.

En resumen, una excelente herramienta si deseas iniciarte en el fantástico mundo de los microcontroladores ARM.

 

Objetivos cumplidos durante este año. Objetivos para el nuevo año 2018

Durante este año 2107 que acaba, creo que aprobé una asignatura que tenía pendiente desde hacía muchos años, más que nada por falta de tiempo, y era la de programar microcontroladores PIC. Le di un buen repaso, y lo cierto es que me resultó muy sencillo hacerlo en ensamblador. Especialmente me gusto aprender a programar en ensamblador funciones básicas con números de 32 o más bits, como sumas, restas, división, multiplicación, funciones trigonométricas, etc. Todo en lenguaje ensamblador, lo que te hace entender el funcionamiento al nivel más bajo de cualquier microprocesador o microcontrolador. Programarlos en lenguajes C, BASIC y Pascal fue muy sencillo, y lo cierto es que, en ese sentido, aunque con sus particularidades, prácticamente todos los micros se programan de manera muy similar, por lo que entendido lo básico, en lenguaje de alto nivel, pasar de programar un micro a otro diferente tiene poco misterio.

Para el año 2018 mi objetivo es, sin abandonar los microcontroladores PIC y AVR, volver a usar núcleos 8051, ahora actualizados y libres de licencia, y empezar a programar los licenciados con arquitectura ARM. En ambos casos, buscando que no sean propiedad de un solo fabricante.

Objetivo 1: Probar microcontroladores avanzados basados en núcleos 8051. En su día me consideré un especialista en la programación del 8051 clásico de Intel y los primeros AT de Atmel. Nada más emocionante e inconfesable que participar en la programación de aquellas primeras tarjetas FunCard que decodificaban señales de TV por satélite de canales de pago. Pero ahora que la licencia de uso de los núcleos 8051 es libre y gratuita (cualquier fabricante los puede integrar en sus dispositivos, sintetizarlos en FPGA, modificarlos o mejorarlos sin pagar ningún tipo de licencia a Intel), encuentras núcleos 8051 integrados en sistemas muy complejos y microcontroladores que multiplican por 40 la velocidad de los 8051 originales. Quiero probar qué se puede hacer con ellos, y por qué se siguen usando a nivel profesional aunque no cuenten con el apoyo «publicitario» de otros micros de uso más extendidos actualmente entre el gran público.

Objetivo 2: Empezar con los microcontroladores ARM usando el STM32.

FELIZ y PROSPERO 2018!