Browse Source

Esquematico y referencia

master
GrisC 1 year ago
parent
commit
81ccb76e98
3 changed files with 27 additions and 13 deletions
  1. +1
    -1
      Ejemplo.c
  2. +25
    -11
      Guía de usuario MSP430 GCC Toolchain.md
  3. +1
    -1
      Makefile

+ 1
- 1
Ejemplo.c View File

@ -1,4 +1,4 @@
#include <msp430fr6989.h>
#include <msp430f2619.h>
void main(void)
{


+ 25
- 11
Guía de usuario MSP430 GCC Toolchain.md View File

@ -10,8 +10,9 @@ Galván.A , Chávez.G , Julio,2022.
This manual aims to describe the setup and basic operations of the MSP430 GCC toolchain to know how to use the open-source GCC compiler for microcontrollers to build an example for an MSP430 target device using the command terminal of Linux. It will also be shown how to debug software with the GDB Agent and the GNU Debugger tools so that the program that was built can be uploaded to the target device successfully.
[^]: This user guide was approved in the following distributions of Linux: **Ubuntu 22.04LTS** and **Debian 11** using a **MSP430FR6989** microcontroller.
------
[^]: This user guide was approved in the following distributions of Linux: **Ubuntu 22.04LTS** and **Debian 11** using a **M430F2619T** microcontroller.
[TOC]
@ -28,6 +29,18 @@ El paquete GCC de código abierto es un depurador completo y una cadena de herra
3. Código fuente.
4. GBD Agent Configuration.
#### Esquemático hardware
![esquematico-F.png](https://i.postimg.cc/cJCJxRfG/esquematico-F.png)
MSP-TS430PM64 modulo-PCB
![tarjeta.png](https://i.postimg.cc/sgvF1wHm/tarjeta.png)
Al utilizar algun modulo es necesario utilizar un **MSP-FET**, en este ejemplo se utilizo el siguiente:
![msp-fet-angled.png](https://i.postimg.cc/02LjCWMW/msp-fet-angled.png)
#### Instalación de MSP430 GCC como paquete independiente
El primer paso es bastante sencillo, consiste en abrir la terminal de comando y direccionarse a la carpeta en donde se guardará el archivo que contenga el programa a ejecutar.
@ -37,7 +50,7 @@ Con el comando **cd** se puede entrar a alguna carpeta en específico como lo pu
$ cd Descargas
```
Antes de continuar con el siguiente paso se debe dirigir a la página oficial de TI (Texas Instruments) yendo directamente a la siguiente página [https://www.ti.com/tool/MSP430\-GCC\-OPENSOURCE](). En la pestaña de *descargas* se debe seleccionar la opción más factible para su computadora en este caso **Mitto Systems GCC 64-bit Linux installer incl. support files**. Una vez descargada, en la carpeta de descargas se debe buscar el nombre del archivo y posteriormente, en la terminal de comando se debe colocar lo siguiente: "**sudo chmod +x <installer>.run** y el comando **./<installer>**", lo cual permitirá instalar el programa. A continuación se muestra un ejemplo, donde **msp430-gcc-full-linux-X64-installer-9.3.1.2.run**, es el nombre del archivo que se descargó (installer).
Antes de continuar con el siguiente paso se debe dirigir a la página oficial de TI (Texas Instruments) yendo directamente a la siguiente página [https://www.ti.com/tool/MSP430\-GCC\-OPENSOURCE](). En la pestaña de *descargas* se debe seleccionarel la opción más factible para su computadora en este caso **Mitto Systems GCC 64-bit Linux installer incl. support files**. Una vez descargada, en la carpeta de descargas se debe buscar el nombre del archivo y posteriormente, en la terminal de comando se debe colocar lo siguiente: "**sudo chmod +x <installer>.run** y el comando **./<installer>**", lo cual permitirá instalar el programa. A continuación se muestra un ejemplo, donde **msp430-gcc-full-linux-X64-installer-9.3.1.2.run**, es el nombre del archivo que se descargó (installer).
```bash
$ sudo chmod +x msp430-gcc-full-linux-X64-installer-9.3.1.2.run
@ -69,7 +82,7 @@ $ cd Programa1
El código que se muestra a continuación, hace parpadear el LED P1.1 del microcontrolador MSP430FR6989, este se utilizará como ejemplo a lo largo del documento. Para poder compilar y depurar el código, es necesario copiar dicho código en un archivo **.c**.
```c
#include <msp430fr6989.h>
#include <msp430f2619.h>
void main(void)
{
@ -111,7 +124,7 @@ El programa se puede compilar manualmente desde la terminal indicando las rutas
Ejemplo de compilación de un programa desde la terminal (primer método):
```bash
$ ./msp430-elf-gcc -I ~/msp430-gcc/include -L ~/msp430-gcc/include -T ~/msp430-gcc/include/msp430fr6989.ld -mmcu=msp430fr6989 -O2 -g ~/Documentos/Programa1/Ejemplo.c -o ~/Documentos/Programa1/Ejemplo.o
$ ./msp430-elf-gcc -I ~/msp430-gcc/include -L ~/msp430-gcc/include -T ~/msp430-gcc/include/msp430f2619.ld -mmcu=msp430f2619 -O2 -g ~/Documentos/Programa1/Ejemplo.c -o ~/Documentos/Programa1/Ejemplo.o
```
Primero se debe dirigir a la dirección en donde se encuentra instalado el paquete *MSP430- GCC* y redireccionarse a la carpeta *bin*.
@ -146,7 +159,7 @@ OBJECTS=Ejemplo.o
GCC_DIR = /home/usuario/msp430-gcc/bin
SUPPORT_FILE_DIRECTORY = /home/usuario/msp430-gcc/include
DEVICE = msp430fr6989
DEVICE = msp430f2619
CC = $(GCC_DIR)/msp430-elf-gcc
GDB = $(GCC_DIR)/msp430-elf-gdb
@ -206,8 +219,8 @@ msp430 Waiting for client
```bash
$ make debug
/home/usuario/msp430-gcc/bin/msp430-elf-gcc -I /home/usuario/msp430-gcc/include -mmcu=msp430fr6989 -O2 -g -L /home/usuario/msp430-gcc/include -T msp430fr6989.ld Ejemplo.o -o msp430fr6989.out
/home/usuario/msp430-gcc/bin/msp430-elf-gdb msp430fr6989.out
/home/usuario/msp430-gcc/bin/msp430-elf-gcc -I /home/usuario/msp430-gcc/include -mmcu=msp430f2619 -O2 -g -L /home/usuario/msp430-gcc/include -T msp430f2619.ld Ejemplo.o -o msp430f2619.out
/home/usuario/msp430-gcc/bin/msp430-elf-gdb msp430f2619.out
GNU gdb (Mitto Systems Limited - msp430-gcc 9.3.1.11) 9.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
@ -223,7 +236,7 @@ msp430 Waiting for client
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from msp430fr6989.out...
Reading symbols from msp430f2619.out...
(gdb)
```
@ -232,7 +245,7 @@ msp430 Waiting for client
4. Escriba el comando **target remote :55000** y presione enter para conectar el GDB con el GDB Agent que se encuentra en la otra terminal de comando que se dejó abierta. En la otra terminal se podrá observar en la consola del GDB Agent que se conectó un dispositivo/cliente.
```bash
Reading symbols from msp430fr6989.out...
Reading symbols from msp430f2619.out...
(gdb) target remote :55000
Remote debugging using :55000
0x00004402 in __crt0_start ()
@ -288,7 +301,7 @@ msp430 Waiting for client
Inferior 1 [Remote target] will be detached.
Quit anyway? (y or n) y
Detaching from program: /home/usuario/Escritorio/msp430_programs/Programa1/msp430fr6989.out, Remote target
Detaching from program: /home/usuario/Escritorio/msp430_programs/Programa1/msp430f2619.out, Remote target
Ending remote debugging.
[Inferior 1 (Remote target) detached]
```
@ -332,3 +345,4 @@ sudo apt-get inatall libncursesw5-dev (opcional)
[1] Texas Instruments. Msp430-gcc-opensource gcc-open source compiler for msp microcontrollers, 2017.
[2] Texas Instruments. MSP430 Hardware Tools,2009.

+ 1
- 1
Makefile View File

@ -3,7 +3,7 @@ OBJECTS=Ejemplo.o
GCC_DIR = /home/user/msp430-gcc/bin
SUPPORT_FILE_DIRECTORY = /home/user/msp430-gcc/include
DEVICE = msp430f2619
DEVICE =msp430f2619
CC = $(GCC_DIR)/msp430-elf-gcc
GDB = $(GCC_DIR)/msp430-elf-gdb


Loading…
Cancel
Save