collapse

* Posts Recentes

Emulador NES em ESP32 por dropes
[Hoje às 15:31]


Arame de Estendal por almamater
[Ontem às 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]

Autor Tópico: Aprender shift registers  (Lida 4486 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Aprender shift registers
« em: 13 de Junho de 2013, 17:49 »
Boas, agora decidi aprender a usar shift registers porque precisava de conseguir controlar vários LEDs RGB em simultâneo e individualmente. A idiea é mais ou menos igual ao de cubos de leds.
O problema é que não não faço a mínima por onde começar, nunca usei um. E também só encontro ou bibliotecas de Arduino e nunca algo dos básicos.
Alguém podia ajudar ai com uns links amigos de principiantes?
Trava a pensar usar o TLC5916: http://www.ti.com/product/tlc5916

Desde já obrigado

Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Aprender shift registers
« Responder #1 em: 13 de Junho de 2013, 17:54 »
Isso não é um shift register, é um controlador de leds com fontes de corrente constante para cada led, é mais que um simples shift-register, para aprender, nada como a datasheet.
Aconselho-te a começar com o mais comum TLC5940, até porque esse que mostras-te não faz pwm, é preciso ter muita atenção porque nem todos esses drivers da TI suportam pwm..
Avr fanboy

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Re: Aprender shift registers
« Responder #2 em: 13 de Junho de 2013, 18:17 »
Isso não é um shift register, é um controlador de leds com fontes de corrente constante para cada led, é mais que um simples shift-register, para aprender, nada como a datasheet.
Aconselho-te a começar com o mais comum TLC5940, até porque esse que mostras-te não faz pwm, é preciso ter muita atenção porque nem todos esses drivers da TI suportam pwm..

Obrigado nem tinha reparado que não suportava PWM.

Tenho de ler isso com atenção a datasheet então.
Depois se tiver duvidas venho ca, que é o mais provavel que não tou habituado a nada desse genero.
Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/

Offline vicardosof

  • Moderator
  • Mini Robot
  • *****
  • Mensagens: 223
Re: Aprender shift registers
« Responder #3 em: 18 de Junho de 2013, 15:34 »
Podes vir!

Estou a usar muitos deles para criar um painel de LEDs.
Guarde o esquema do driver, pois a maioria dos shiftregisters não fornecem corrente suficiente para muitos LEDs, sendo necessário um destes

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Re: Aprender shift registers
« Responder #4 em: 12 de Julho de 2013, 21:26 »
Boas, gostaria de saber se alguem poderia me dar uns links para enteder melhor SPI. Pode ser no arduino ou em MSP430 C-assembly.

Estou a tentar meter o TLC5490 a funcionar com o msp430. Uso um IDE parecido ao do arduino mas sendo o msp430 a biblioteca TLC5940 de arduino não funciona.
A ideia é conseguir a partir da datasheet conseguir pô-lo a funcionar para treinar e aprender um pouco mexer em componentes novos a partir das datasheets, deverá me entreter durante as férias. Mas infelizmente nunca usei SPI o que torna isso mais dificil.

E já agora alguem me pode dizer como meto um link numa palavra apenas aqui no forum?
Queria mete o TLC5940 com este link: http://www.ti.com/lit/ds/symlink/tlc5940.pdf ] TLC5490
« Última modificação: 12 de Julho de 2013, 23:17 por LuísR.A. »
Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/

Offline poliveira1978

  • Mini Robot
  • *
  • Mensagens: 335
Re: Aprender shift registers
« Responder #5 em: 12 de Julho de 2013, 22:34 »
costumo usar tags url, colocas [ url = <aqui o url> ]palavra[ / url ]. (tira os espaços dos tags)

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Aprender shift registers
« Responder #6 em: 12 de Julho de 2013, 22:41 »
Volto a dizer, TLC5940 não tem nada a ver com SPI, é um chip algo complexo para principiantes, a biblioteca do TLC do arduino é facilmente portavel, o problema é que se estiveres a gerar o clock e o blank com timers(que é o ideal), não é facil de acertar á primeira.
Isto é o código que tenho numa matriz de led's rgb que vou apresentar um dia aqui no fórum:
https://www.dropbox.com/s/qio455gt6oi5xmk/LedMatrix.c

Se queres realmente aprender a usar o TLC5940, tens aqui a "biblia":
https://sites.google.com/site/artcfox/demystifying-the-tlc5940

Saca o pdf, imprime, lê, volta a ler, e lê mais uma vez, olha para o código, e entende o que lá está, não estejas simplesmente a ler código como se de texto se trata-se.
E é claro que tens de ter sempre o TLC5940 Programming Flowchart da TI:
http://www.ti.com/lit/sw/slvc106/slvc106.pdf

Quanto aos url's, é assim:
Programming Flowchart

Tira o asterisco para funcionar:
[url*=http://www.ti.com/lit/sw/slvc106/slvc106.pdf]Programming Flowchart[/url]
Avr fanboy

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Re: Aprender shift registers
« Responder #7 em: 12 de Julho de 2013, 23:19 »
Uma regra que tenho é tentar sempre entender os códigos...é a unica forma de saber o que se está a fazer e saber corrigir problemas caso surjam.

Obrigado pelo info do URL e do TLC5940. Pois não percebi que não era SPI. Como nos exemplos de arduino encontro sempre a usarem as portas do SPI pensei que era
Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Aprender shift registers
« Responder #8 em: 12 de Julho de 2013, 23:32 »
Usas SPI para lhe mandares os 192 bits que ele precisa para gerar os 16 canais de pwm de 12 bits, mas tens muito mais que só simplesmente SPI, tens um clock que tem de ser fornecido porque o chip não tem clock interno, esse clock serve para incrementar um contador, contador esse que depois é feito um compare em relação a cada um dos valores de 12 bits de cada canal que gera então a onda de pwm(com limite de corrente), depois de esse contador chegar a 4095 tens de lhe fazer reset via outro pino(BLANK), esse pino serve tambem para desligar todas as saidas, para que possas fazer o upload de novos valores de pwm sem que vejas os dados a passar pelos vários shift-registers internos do chip até que fiquem na sua posição final, tens tambem mais alguns pinos, mas para a operação básica, é só spi, gsclk(Gray Scale CLock), e blank.
Ups, e o Xlat.
Avr fanboy

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Re: Aprender shift registers
« Responder #9 em: 12 de Julho de 2013, 23:45 »
Usas SPI para lhe mandares os 192 bits que ele precisa para gerar os 16 canais de pwm de 12 bits, mas tens muito mais que só simplesmente SPI, tens um clock que tem de ser fornecido porque o chip não tem clock interno, esse clock serve para incrementar um contador, contador esse que depois é feito um compare em relação a cada um dos valores de 12 bits de cada canal que gera então a onda de pwm(com limite de corrente), depois de esse contador chegar a 4095 tens de lhe fazer reset via outro pino(BLANK), esse pino serve tambem para desligar todas as saidas, para que possas fazer o upload de novos valores de pwm sem que vejas os dados a passar pelos vários shift-registers internos do chip até que fiquem na sua posição final, tens tambem mais alguns pinos, mas para a operação básica, é só spi, gsclk(Gray Scale CLock), e blank.
Ups, e o Xlat.

Terei de ver isso melhor amanha (e não só) quando tiver menos sono.
Mas já percebi porque referiste timers no clock e no blank. Imagino que tenhas uma onda quadrada 4095 mais lenta no BLANK do que no GSCLK para fazer isso mais rapido e automatico
 Ainda não tinha percebido o que o clock ou GSCLK. Aquilo dizia que incrementava 1 valor por cada variação para high mas não tinha percebido bem. Então sempre que há essa variação o driver "refresca" o pwm de cada output certo?

Eu referi o SPI porque é a parte que não sei mesmo e parece não referir na datasheet. o resto está muito bem explicado lá
« Última modificação: 12 de Julho de 2013, 23:49 por LuísR.A. »
Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Aprender shift registers
« Responder #10 em: 12 de Julho de 2013, 23:50 »
SPI é um protocolo de comunicação série, se não o entendes, então não esperes que a datasheet de um chip que faz uso desse mesmo protocolo te vá ensinar a usar, procura informação sobre SPI, mas isso é algo básico.
A implementação do SPI depende de cada micro, lê a datasheet do que estás a usar..
Avr fanboy

Offline LuísR.A.

  • Mini Robot
  • *
  • Mensagens: 1.224
    • Clube de Robotica
Re: Aprender shift registers
« Responder #11 em: 12 de Julho de 2013, 23:52 »
SPI é um protocolo de comunicação série, se não o entendes, então não esperes que a datasheet de um chip que faz uso desse mesmo protocolo te vá ensinar a usar, procura informação sobre SPI, mas isso é algo básico.
A implementação do SPI depende de cada micro, lê a datasheet do que estás a usar..

Sim não esperava que algo estivesse na datasheet do driver.
Nem me lembrei de ver a datasheet do micro.

Pois é o basico mesmo mas...que se hade fazer. No clube era com linguagem basic e nunca se usou SPI sequer. Bem, vou ter algo para me entreter durante um tempo consideravel
Tiva MCU é que é.

Tutoriais Tiva+codigos exemplo:
https://sites.google.com/site/luiselectronicprojects/