Autor Tema: Consulta sobre los ARM de TI  (Leído 2387 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Consulta sobre los ARM de TI
« en: 22 de Junio de 2015, 19:35:57 »
Un par de consultas por si alguien los probó. Estoy queriendo hacer una plaquita para un proyecto con un TM4C123. Tengo la lunchpad y solo he probado el keil del curso de edx.

La misma lunchpad sirve para programar debuguear una placa casera?
el CCS es gratuito completo o on limitaciones?
Energia son librerías similares a Arduino?
El CCS trae algun pack de librerías para usar los periféricos?

No encuentro muchos proyectos en la web con estos micros, hay muchos con STM, algunos con NXP pero casi nada (por no decir nada) de placas casera con micros de TI. Alguien tiene algún link a alguien que trabaje con estos micros?

Saludos!
-
Leonardo Garberoglio

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Consulta sobre los ARM de TI
« Respuesta #1 en: 22 de Junio de 2015, 19:58:35 »
Yo tengo un Launchpad TM4C1294 ( el que trae ethernet) hasta ahora solo hice codigos para probar una SD con FATfs, manejo de un TFT 320x240 directamente con los puertos (aunque tengo ganas de usar el puerto paralelo que posee) + el touch,una aplicacion muy simple de RTOS (creo que era encender 2 leds con delays) ,y por ultimo correr y estudiar un poco un ejemplito con ethernet (LwIP ) que posee un servidor web bastante simple pero suficiente.

-Hasta ahora con el launchpad uso CCS sin limitacion de codigo.

-Tengo entendido que si permite la programacion y depuracion de la placa casera solo hay que sacarle unos puentes al launchpad luego estos se reemplazarian con jumpers ( smd y que no encontre ) pero bueno esta el lugar para ponerlo, al menos en mi placa. (Los jumpers es para volver a usar la placa de evaluacion)
Lo que si no se exactamente es si es valido para toda la flia de TM4C para usarlo como programador/debugger, o el "programador" viene unicamente para el integrado que lleva la placa, por ejemeplo el mio solo para el TM4C1294NCPDTI, eso si que no lo se a ciencia cierta.

-Energia es totalmente distinto al CCS, por lo que veo en la forma de programacion y la distribucion de las cosas, lo que tengo entendido pero no creo que afecte mucho el compilador que elijas ya voy a decir por que. Lo que si jamas lo probe ya que CCS no se encuentra limitado al usar el launchpad. Para programar hasta podes hacerlo por USB/SPI/UART/etc, en la ROM ya incluye los bootloaders cuando no hay nada programado o cuando se setean 1 bit en un registro que no recuerdo el nombre.. Tambien se te ofrecen bootloader por software en el paquete de TivaWare con una opcion de incluir tu funcion de descifrado si es que lo mandaste encriptado al programa. Ya el bootloader solo cuadno se habilita se copia a la RAM y se ejecuta de ahi. ( si no mal recuerdo )

- El CCS no trae un pack de librerias, tenes que descargar el pack llamado TivaWare, ese trae varios ejemplos para tu placa, ademas de las librerias para los perifericos/osciladores etc., Esta libreria te permite tanto manejarte con registros o directamente usar las funciones que trae, podes acceder a las funciones para ver que lo que hacen, pero yo no encontre ninguna razon para modificarlas o crear las mias hasta ahora. Esta libreria imagino que la podes usar con cualquier compilador, ya que por ejemplo la usan con eclipse+GCC , en si las librerias son bien basicas, es la declaracion de todas las posiciones de memoria como volatiles, algo asi como se hacen en los PICs de gama baja. Entonces no tienen mayor secreto.

Con respecto a los TM4C12..... que ahora lo llaman TivaC , antes eran los Stellaris, y ahi si vas a encontrar mas info, y casi no cambia nada, es mas el launchpad del Stellaris y del TM4C123 son identicos.



Tuve mis encontronasos con CCS por ser nuevo en esa parte pero actualmente puedo crear un proyecto de la nada y lograr que me compile sin problemas.
Por ejemplo estos son los pasos para un proyecto, que tuve que hacer con mi micro:

Citar
1- Primero creo un proyecto en blanco para el micro que estoy usando.

2- Este trae ya el archivo tm4c1294ncpdt.cmd el cual provee:
Las direcciones de memoria, sus limites y permisos de las cuales encontramos

FLASH
RAM
Donde van a guardarse los tipos de datos
Ejemplo .text o .const que vayan a la flash, la direccion de los vectores .intvecs
Tambien los datos inicializados y no inicializados, tambien pila .data , .bss, .stack

Tambien define el tamaño de pila maximo

3- Algo muy util que saque de algunos ejemplos es el archivo startup_ccs.c

Este archivo tiene el manejo del vector de reset.
Tambien esta la lista de vectores de interrupcion en el que podemos poner el nombre de nuestra funcion de interrupcion para ese periferico
y declarar la funcion externa de esa forma podemos ponerlo en otro archivo a todas nuestras interrupciones.


4 - Para terminar de configurar mi proyecto
Debi de incluir la direccion de donde se encuentran las librerias TivaWare
Y definir que estoy usando, uno es para el mapa de pines y el otro es para la API de la ROM ( Una version reducida de TivaWare grabada en una ROM del micro, junto con un bootloader, tablas CRC y AES ), me tuve que ver los archivos .h para descubrir cual era el mio.

#define TARGET_IS_TM4C129_RA1
#define PART_TM4C1294NCPDT

(Esto normalmente en los ejemplos estan definidos en las propiedades, yo los agrego al codigo asi no tener que estar buscando donde van esas constantes y olvidarmelas)

Y tambien debo de definir la variable SW_ROOT como la direccion de la libreria TivaWare sino el linker tira error

Una ves que sabes donde buscar las cosas vas a ver que esta todo muy bien dividido/organizado.
« Última modificación: 22 de Junio de 2015, 20:04:04 por KILLERJC »

Desconectado juaperser1

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 2979
Re: Consulta sobre los ARM de TI
« Respuesta #2 en: 23 de Junio de 2015, 17:37:12 »
Ola elgarbe Texas instrument puede pecar de muchas cosas (sobre todo caro en las herramientas) pero para el tema de la documentación junto con freescale, analog y alguna mas son de las mejores documentaciones que tienen los fabricantes. Una vez te acostumbras a buscar por sus documentos, software etc. los demás fabricantes ( los que tienen peores documentación) te parecerán una mierd@.

No te hará falta casi seguro, buscar ningún ejemplo de personas que hayan hecho algo ni nada, te basta con la documentación. Yo también tengo la launchpad y es muy sencillita de usar.

Un saludo.

Visita mi canal para aprender sobre electrónica y programación:

https://www.youtube.com/channel/UCxOYHcAMLCVEtZEvGgPQ6Vw

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Consulta sobre los ARM de TI
« Respuesta #3 en: 24 de Junio de 2015, 08:03:01 »
Ok, voy a ver si aparece algún proyecto para usar el TM4C123... es medio grandecito para proyectos comunes...

sds!
-
Leonardo Garberoglio

Desconectado fuente

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 571
Re: Consulta sobre los ARM de TI
« Respuesta #4 en: 24 de Junio de 2015, 10:58:48 »
También utilicé la launchpad para el curso de edx. Después, para seguir jugando, instalé Energía.
Muy fácil de utilizar, y por debajo, lo que me pareció ver, es que utiliza gcc.

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Consulta sobre los ARM de TI
« Respuesta #5 en: 24 de Junio de 2015, 11:12:43 »
Ya veo. Lo que a mi me gustaría es pasar directamente a lo siguiente, una placa propia usando las muestras del micro en algún proyecto. Me cuesta encontrar proyectos en la web que usen ese micro, incluso veo muy poco de los stellaris....

Saludos
-
Leonardo Garberoglio

Desconectado fuente

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 571
Re: Consulta sobre los ARM de TI
« Respuesta #6 en: 24 de Junio de 2015, 11:41:24 »
Creo que Energía trae algunos ejemplos.
Lo miro cuando llegue a casa y te lo confirmo.

Desconectado fuente

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 571
Re: Consulta sobre los ARM de TI
« Respuesta #7 en: 25 de Junio de 2015, 05:23:06 »
Lo estuve mirando y sí, energía trae bastantes ejemplos, desde hacer parpadear un led, comunicaciones serie, A/D, D/A (vía pwm), hasta comunicaciones Ethernet.
Para empezar a usar las launchpad no tiene mala pinta.


 

anything