Skip to main content

Actualizando el entorno de trabajo para el MSP430

Hace rato que no escribo. Todo lo que hay en mis posts del 2013 sobre el entorno Linux para desarrollo con el MSP430 se hizo viejo. Pero sigo trabajando con el Launchpad y ha habido cambios en mi setup. Esta es la nueva versión.

Primero que nada, sigo usando Code::Blocks y mspdebug, ambos programas vienen con cada nueva distribución de Linux. La mía ahora es Fedora 23. Se instalan fácil con dnf (yo uso yumex-dnf, un frontend gráfico que cumple).

El toolchain para MSP430 de mi Fedora 23 es basura. Creo que han dejado de mantenerlo, y un reciente y pequeño cambio en las herramientas de empaquetado (symbol striping) rompe todo el acceso del enlazador a las bibliotecas estáticas. Quizá lo retome en vacaciones, pero por ahora necesito herramientas (y odio el Code Composer Studio jeje). Por fortuna, TI, Somnium y (antes) Red Hat han unido esfuerzos para hacer un nuevo toolchain. Para descargarlo, hay que acceder a este enlace, con una cuenta de TI. El script de instalación se ejecuta como root y queda todo listo. Yo elegí la carpeta /opt/ti para instalar.

Configurar Code::Blocks (tengo la versión 13.12) para generar proyectos de MSP430 es sencillo:

Desde el menú Settings/Compiler... primero vale la pena buscar si ya hay una entrada para "GNU GCC Compiler for MSP430". Si no la hay, basta con seleccionar el compilador por default, dar click en "Copy" y luego renombrar ("Rename") la nueva entrada con algo que se parezca a lo anotado en la frase anterior.

Varias de las pestañas de la ventana "Global Compiler Settings" (que debe seguir abierta) deben ser modificadas:
  1. Compiler settings/Compiler Flags: Con un click derecho sobre la caja de banderas, seleccionar "New Flag" y crear una para el MSP430G2553, agregando la bandera -mmcu=msp430g2553 tanto en Compiler Flags como en Linker Flags. Con eso el toolchain incluirá los headers correctos y enlazará el runtime adecuado.
  2.  Search Directories: Agregar /opt/ti/MSP430/include tanto para "Compiler" como para "Linker". Así el motor de Code::Blocks sabrá cómo construir el ejecutable.
  3. Toolchain Executables: Aquí hay que seleccionar la carpeta /opt/ti/MSP430/bin como el "Compiler's Installation Directory". Las herramientas de generación de código serían entonces: (C) msp430-elf-gcc, (C++, dynamic linking, static linking) msp430-elf-g++.
Agregar una entrada en el menú Tools para invocar el mspdebug para flashear la ROM del micro, se hace igual que como narré en un post previo.

Ya está. Ahora voy a averiguar como hacer para depurar desde este entorno. Les platico.


Comments

Popular posts from this blog

Reparando una Sanyo DP50E44T

En días pasados, mi preciosa amiga Ale sufrió el daño de su súper televisión de 50'', una Sanyo DP50E44T que se ve espectacular. Al parecer, no hubo regulador que la salvara de la tormeta eléctrica de mayo. Sospeché que era la fuente de alimentación, por lo menos, lo que se había dañado. Fuente de alimentación (LK-SP412002C) La fuente en efecto estaba dañada. sin salida de 5V en el pin 5VSB, el voltaje de standby indispensable para que pueda uno encenderla con el control remoto. Sin 5VSB, no puede encenderse el equipo, no hay PWM y los inversores no andan. Resultó que el problema fue el chip de PWM (en la parte inferior de la tarjeta). Un reemplazo veloz (soldar seis patas en un SMD de tamaño humano no es tanto problema) y listo, 5VSB de vuelta, y puenteando temporalmente 5VSB con ON/OFF, también los 5V, 12V y 24 V de toda la fuente. Pero eso no resolvió el asunto porque al reconectar todo, vino el familiar olor a chip vuelto plancha....el culpable, el microprocesador

Configurando un entorno de desarrollo para el MSP430 en GNU/Linux: mspgcc+mspdebug+Code::Blocks

Si eres como casi todos, también querrás un IDE para el desarrollo de software para tu MSP430 Launchpad. Mientras que es cierto que existe el Code Composer Studio -incluso para Linux-, nuestro gusto por el software libre nos lleva a buscar alternativas abiertas. Es el caso de este post, donde les platico cómo configurar el IDE genérico Code::Blocks para desarrollar software para el MSP430, incluyendo la opción de descarga directa al Launchpad. Aquí vamos. MSP430-GCC Primero que nada, necesitas tener un " toolchain " para el MSP430 instalado en tu equipo, esto es, la colección de herramientas de compilación, enlazado, archivado y depuración de código para el MSP430. Mi distribución Fedora tiene un "port" del infalible gcc para este micro, se llama msp430-gcc y viene acompañado de sus correspondientes utilerías binarias msp430-binutils , sus definiciones de dispositivo msp430mcu , su depurador/cargador mspdebug y su biblioteca estándar de C, msp430-libc . Pa

Probemos Elementary OS

Siempre conviene escuchar al experto. A consecuencia de una entusiasta recomendación de mi querido amigo Santiago Alvarez  he decidido probar Elementary OS en mi portátil Dell. Aquí narraré la aventura. Instalación: La lancé desde un DVD quemado con la versión 0.4.1  y transitó sin falla. Lo único que hice en especial fue activar en su momento la casilla para instalar drivers de terceros y soporte para MP3, previendo que eso ayudaría con la instalación del driver de NVIDIA, que siempre es una calamidad. El driver de NVIDIA no viene por defecto en la distribución, pero, con la selección de la casilla de instalación mencionada, aparecieron en la AppStore los drivers 304, 340 y 375. Instalé el último. Y por recomendación del blog de elementary también instalé los paquetes accesorios con >> sudo apt install nvidia-prime nvidia-settings y luego reinicié el equipo. Todo anduvo de maravilla, con el driver de NVIDIA activo por default y gastando pila como loco y cocinando