LusoRobótica - Robótica em Português

Robótica => Tutoriais => Tópico iniciado por: LuísR.A. em 21 de Setembro de 2014, 13:11

Título: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 21 de Setembro de 2014, 13:11
Boas tardes a todos!

Então eu ando aqui em volta do meu Tiva ja à algum tempo. Começa a aparecer pessoal que quer que lhe ensine por isso criei um blog.

O blog primeiro de tudo ta em inglês. No blog vou pondo umas explicações sobre os perifericos do Tiva. Algo basico sem ir muito aos registos a não ser quando é necessário. Depois mais tarde penso meter algo mais complexo mas por agora é so assim.
Tambem estou a meter codigos exemplos para cada periferico tentado explicar como funcionam. É tudo feito usando TivaWare, uma API da Texas Instruments para evitar andar a mexer muito em registos.

É uma forma de eu tambem ir apontando coisas para mais tarde ir ver mas achei que devia fazer assim para partilhar tanto com o pessoal que ando a ensinar, tanto para qualquer pessoa que precise.

Espero que ajude alguem e qualquer feedback ficava agradecido, nunca fiz algo do género.

Blog:
https://sites.google.com/site/luiselectronicprojects/tutorials
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: StarRider em 21 de Setembro de 2014, 15:11
Boas tardes a todos!

Então eu ando aqui em volta do meu Tiva ja à algum tempo. Começa a aparecer pessoal que quer que lhe ensine por isso criei um blog.

O blog primeiro de tudo ta em inglês. No blog vou pondo umas explicações sobre os perifericos do Tiva. Algo basico sem ir muito aos registos a não ser quando é necessário. Depois mais tarde penso meter algo mais complexo mas por agora é so assim.
Tambem estou a meter codigos exemplos para cada periferico tentado explicar como funcionam. É tudo feito usando TivaWare, uma API da Texas Instruments para evitar andar a mexer muito em registos.

É uma forma de eu tambem ir apontando coisas para mais tarde ir ver mas achei que devia fazer assim para partilhar tanto com o pessoal que ando a ensinar, tanto para qualquer pessoa que precise.

Espero que ajude alguem e qualquer feedback ficava agradecido, nunca fiz algo do género.

Blog:
https://sites.google.com/site/luiselectronicprojects/tutorials

Boas

A TI ainda não conseguiu recuperar do fiasco dos Stellaris, os Tiva vieram substituir os Stellaris e apesar de
no papel terem umas boas características (nomeadamente timers de 64 bits) o pessoal ainda está queimado
com o tempo que perdeu com os Stellaris, eu fui um deles, varias meses de trabalho para o lixo ... literalmente.

De qualquer forma os parabéns pela iniciativa, vamos ver é desta que a TI consegue alguma quota de mercado.

Penso que ainda tenho para aqui algumas Tiva LaunchPads que usei na altura, se estiveres interessado apita.

Abraços,
PA
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 21 de Setembro de 2014, 15:40
É assim, está melhor isso de certeza.

Tudo o que sei de programar o Tiva aprendi em 2meses nas ferias. E com isso ja fiz um controlo de fitas ws2812b por DMA com 32 outputs (na nova launchpad tm4c1294).
Por isso sim, definitivamente melhor.
A comunidade do E2E ajudou muito, incluindo empregados ta TI.

Mesmo assim, usar o CCS com o compilador C antigo é um pesadelo. Mas agora tem o GCC e inclui uma forma de importar sketches de Energia, um IDE tipo Arduino. Algumas bugs aqui e ali, mas tens direito a um compilador gratis sem limite de codigo.

Eu uso o IAR Workbench e acho muito facil criar um projecto para o Tiva. Comecei a usar para tambem poder usar com os STM32 mas isso ai ainda nao consegui bem :/


Olha sabes que eles agora tem um ARM-M4 com wifi integrado tudo no mesmo chip?

Se quiseres doar uns Tivas ou vender mais barato para o clube de robotica em que estou pode ser (são stellaris nao?) :p
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 21 de Setembro de 2014, 16:03
ps: para interessados, a nova linha tm4c1294 ja ta melhor, mas ainda é duvidosa, problema da TI de apressar as coisas.
Para a launchpad serve e eu uso sem grandes problemas, mas ainda nem está a ser produzida em larga escala os MCU por alguma razão, so agora à um mes é que começou a aparecerem à venda, e a launchpad saiu em Março se nao me engano.
 Isto da ethernet (esta nao é wifi) integrada tem trazido problemas e tambem tem outras coisas novas como Quad SSI e o modulo I2C tb é diferente. Logo cuidado  :P

Ha um bug giro que é por o novo MCU ser tao rapido, o software tem de esperar que as flags do I2C busy levem o update.
A antiga linha TM4C123 (a antiga launchpad) nao tem trazido problemas.


e é sempre fixe quando a luz falta enquanto se está a escrever algo  >:(
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 11 de Outubro de 2014, 22:33

Ja está praticamente acabado a a parte dos timers, https://sites.google.com/site/luiselectronicprojects/tutorials/tiva-general-purpose-timers

e já está ser preparado a proxima parte


Ja está tudo pronto para começar mais a sério ja que temos o material
(https://scontent-b-mad.xx.fbcdn.net/hphotos-xap1/v/t1.0-9/1620544_737317619639219_1827668541745657140_n.jpg?oh=0a4821570e2cf2284ea0d988f5e6bb1b&oe=54B11321)


É para ver se é evitado isto de ter tudo à volta de um computador, ainda por cima que agora somos mais, incluindo um caloiro.
(https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-xaf1/v/t1.0-9/10156113_696648740418311_7505494969513989599_n.jpg?oh=b635fd00ff9fc5709e1c69506e0bdcaa&oe=54C6B93E&__gda__=1422469007_28aa6863de0878c81b2866b01b557d05)
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: jmiguelff em 12 de Outubro de 2014, 12:47

Olha sabes que eles agora tem um ARM-M4 com wifi integrado tudo no mesmo chip?


Estás a falar deste: http://pt.mouser.com/Search/ProductDetail.aspx?R=CC3200-LAUNCHXLvirtualkey59500000virtualkey595-CC3200-LAUNCHXL (http://pt.mouser.com/Search/ProductDetail.aspx?R=CC3200-LAUNCHXLvirtualkey59500000virtualkey595-CC3200-LAUNCHXL) ?

Mandei vir 1 agora. Pelo que me disseram é bastante engraçado e o preço é apelativo.
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 12 de Outubro de 2014, 13:17
Eu tenho este launchpad aqui, comprei para seguir um curso no edx, e gostei bastante, mas gostava de usar IDE opensource, será que alguem conhece alguma coisa para este launchpad ?
Que IDE e compiler usam para isto ?
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 13:30

Olha sabes que eles agora tem um ARM-M4 com wifi integrado tudo no mesmo chip?


Estás a falar deste: http://pt.mouser.com/Search/ProductDetail.aspx?R=CC3200-LAUNCHXLvirtualkey59500000virtualkey595-CC3200-LAUNCHXL (http://pt.mouser.com/Search/ProductDetail.aspx?R=CC3200-LAUNCHXLvirtualkey59500000virtualkey595-CC3200-LAUNCHXL) ?

Mandei vir 1 agora. Pelo que me disseram é bastante engraçado e o preço é apelativo.

Ja vi usarem com uma camara e fazer stream pela net.

Eu cravei uma à texas mas só la para fim de outubro é que me a dão
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 13:32
Eu tenho este launchpad aqui, comprei para seguir um curso no edx, e gostei bastante, mas gostava de usar IDE opensource, será que alguem conhece alguma coisa para este launchpad ?
Que IDE e compiler usam para isto ?

Eu uso o CCS da texas instruments agora. É baseado em Eclipse.
Podes sempre usar o Eclipse + GNU. o CSS tem a opção de usar o GNU por isso é quase igual.

Ha tambem o Energia. Usa o GNU como compilador. O Energia é feito para programar tipo Arduino mas podes usar para programar com registos ou TivaWare. Claro que assim é menos eficiente o codigo
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 12 de Outubro de 2014, 14:24
E qual é o GNU ?
Estás-te a referir a este, gcc-arm-none-eabi ?
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 14:36
E qual é o GNU ?
Estás-te a referir a este, gcc-arm-none-eabi ?

Sim é o GCC. Já não me lembro o pq de tb se chamar GNU:p

Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 12 de Outubro de 2014, 14:50
E tens libs para delays, serial e coisas assim mais básicas ? para o GCC.
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 14:58
Quais libs? :p

Andaste a fazer um curso so a programar em registos e queres libs?

Ha o TivaWare que so ajuda a tornar mais facil programar em registos, podes ver no site como é. Tem Delays que sao apenas 3 instruções NOP.
É assim que se faz um delay mesmo: https://sites.google.com/site/luiselectronicprojects/tutorials/tiva-general-purpose-timers/timer-delay

Para serial tens sorte isso sim. No TivaWare ha o API para UART (serial), mas ainda ha o UARTStudio que torna muito parecido ao imprimir na consola em C. Isso ainda nao dei aula disso por isso nao ta no site, mas é a proxima parte. Tanto com o API de UART como o UARTStudio

O TivaWare dá para usar com o GCC. Funciona como uma lib, mas ha coisas que nao estão num ficheiro que é identificado como biblioteca, em vez disso são simplesmente includes de macros

No Energia programas como Arduino e ai sim ha bibliotecas aos montes
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 12 de Outubro de 2014, 15:32
Sim libs se não as há terei de as fazer mais tarde ou mais cedo, e registos usas sempre, se quiseres fazer a coisa como deve de ser claro.
É sempre prático ter já feito algo como, delay_ms(time), para não perder tempo.
Mas estás a dar um curso com este lauchpad ?
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 15:37
Sim libs se não as há terei de as fazer mais tarde ou mais cedo, e registos usas sempre, se quiseres fazer a coisa como deve de ser claro.
É sempre prático ter já feito algo como, delay_ms(time), para não perder tempo.
Mas estás a dar um curso com este lauchpad ?


Olha que raramente tive de usar registos tendo o TivaWare, é praticamente so uma forma de controlar se fazes asneira e de nao teres de decorar todos os registos. Só quando nao ha uma função para isso ou quero o codigo mesmo rapido.


Tou a ensinar aos meus colegas a trabalhar com. Não é bem um curso. Eu mesmo ainda tou a aprender, um ARM-M4 tem tanta coisa.
E coisas como dos compiladores e isso sou mesmo noob ainda.

O site é para os ajudar e ter um sitio com tudo guardado com codigos e tal, e assim pus em ingles para quem precisar.
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 16:05
Sim libs se não as há terei de as fazer mais tarde ou mais cedo, e registos usas sempre, se quiseres fazer a coisa como deve de ser claro.
É sempre prático ter já feito algo como, delay_ms(time), para não perder tempo.
Mas estás a dar um curso com este lauchpad ?

Ah ja agora, aquilo permite fazer um delay com os timers, que era para mostrar funções dos timers.
Mas o Tiva tem um timer dedicado, o System Tick que é melhor para isso.
Ainda nao meti nada sobre disso porque nao falei sobre o system tick. Tenho ver se até ao proximo fim de semana trato disso. Esta semana vai ser muito complicado por isso nao sei
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 12 de Outubro de 2014, 16:14
Gostei, muita informação util, conhesso o system tick, mas o que usei foi o Keil, com a papinha toda já feita.
Por isso queria um compilador GNU, mas as rotinas de delay em qualquer micro são sempre delicadas a precisam ser super precisas. A partir dai desenrasco-me.
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 12 de Outubro de 2014, 17:40
A ideia é aprenderem pelo menos o suficiente para participarem no concurso robo bombeiro e depois micro-mouse.
Logo vou adicionando ao longo do semestre mais info e codigos.

Olha se reparares no tutorial de como criar um projecto, eu mostro como ter um projecto de começo e é so ir importando.
Começa ja com os paths, includes e o system tick configurado
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: LuísR.A. em 02 de Novembro de 2014, 16:49
Vá agora até tem comentarios (raio do google sites tem um sistema estupido) para qualquer pergunta que possa surgir.

https://sites.google.com/site/luiselectronicprojects/discussion-questions

(eu ando aqui a meter actualizações mas aqui ninguem se interessa pelo tiva neh? :P)
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Electropepper em 02 de Novembro de 2014, 17:24
Eu gosto do tiva e tenho aqui um, mas não tenho tido muito tempo para mexer nele, nem tenho nenhum projecto de momento para utilizá-lo.
Título: Re: Tutoriais+Codigos para Tiva
Enviado por: Simao Berkof em 25 de Novembro de 2014, 17:08
     Peço desculpas se escolho o local errado para postar minha dúvida mas me pareceu o mais apropriado em função do assunto (TIVA).
     Estou tentando fazer a comunicação via SPI de um SD card com uma placa com o TM4C1294 usando uDMA. Conforme meu entendimento eu necessito sempre gerar clock através de escrita via MOSI, de sorte a receber dados no pino de leitura da SPI (MISO), isto é básico nas transferências via SPI, o master tem que gerar o clock para escrita e leitura.
     Minha dúvida reside na necessidade ou não de disparar um uDMA de escrita afim de que estes dados (dummies), gerem o clock necessário para leitura dos 512 bytes de um setor do SD card.