Ir ao conteúdo
  • Cadastre-se
Carlosfrances

PIC RESOLVIDO O que se passa? Como criar matriz de leds RGB! CCS C

Posts recomendados

😎

Matriz de led com 5 Colunas e 8 Linhas RGB ! segui me aqui no Clube do Hardware ! é deixe seu like !

 

tenho grande respeito por Paulo  e Isadora ferraz aqui no Clube do Hardware , foram eles que maais me apoiaram aqui!

estou muito contente desde o dia em que comecei a aprender programação hoje tenho 35 anos quando comecei tinha uns 25

e consegui dominar a matriz de leds RGB ! vou postando neste topico aqui aos poucos ! quem quiser compartilhar comigo fiquem a vontade

e um detalhe , so construo circuito impresso se for com componentes SMD´s  rsrs! sou vaidosos demais para construir em encapsulamentos dips kkk! 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desta forma, se quisermos ligar apenas o led vermelho basta com que deixemos aterrado  o cátodo deste led , e seja injetado o nível alto no pino R . mesma ideia é valida para outras cores,podemos formar outras cores de acordo com a combinação das mesmas !

#include   <16f877a.h>

#fuses xt, nolvp, nowdt

#use delay (clock=4000000)


// aqui eu coloquei as entradas do sistema

#define  COL1   PIN_A0

#define  COL2   PIN_A1

#define  COL3  PIN_A2

#define COL4  PIN_A3

#define COL5  PIN_A5

 /****************************************************

*                                          SAIDAS                                                                               

****************************************************/


// aqui iremos definir as saidas do sistema

#define    BUS_VERDE   PORTC

 #define    BUS_VERMELHO  PORTD

   #define    BUS_AZUL      PORTB


//Prototipo da função

//rotina principal

//nesta parte ficara o loop principal do sistema

Void main (void)

{

Setup_adc_ports (no_analogs);

output_b (0b00000000);

output_c (0b00000000);

output_d (0b00000000);

while (1)  // entra em loop imfinito

{

output_d (0b11111111);  //liga todas as  saidas do portd

to be continue...


fazemos projetos personalizados aceitamos  cartões de creditos .... rs! Etc...

Você não encontrara este conhecimento facíl ,  ...

e também não precisa me agradecer e nem me dar gostei , rsrsr , mais eu quero passar de +3 aqui no clubinho do hardware kkk vamos lá !

O led  RGB é composto de 4 terminais ,sendo um o de cátodo  que  é comum a todos, e o restante para as cores vermelhas  (R) verde (G) e azul (B) , observe abaixo

              

 

leds_rgb_esquema.jpg  

 

 

adicionado 12 minutos depois

´so continuarei se eu pasaar dos +3 likes , se não , não vale a pena postar!! rs....!

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
// e desta forma agente segui ligando coluna por coluna ...
output_high (COL1);          // coloca em nivel auto a coluna 1
delay_ms (4);                     // time de 4 milisegundos
output_low (COL1);        //coloca em nivel baixo a coluna 1
/**************       *        *****************/
output_high (COL2); 
delay_ms (4);                   
output_low (COL2);        
/**************       *        *****************
output_high (COL3); 
delay_ms (4);                   
output_low (COL3);        
/**************       *        *****************
output_high (COL4); 
delay_ms (4);                   
output_low (COL4);     
 /**************       *        *****************
output_high (COL5); 
delay_ms (4);                   
output_low (COL5);       

                       }
}

/****************************************************
                fim do programa!
****************************************************/
É o seguinte esse programa ele faz o seguinte , 
ele varre todos os leds vermelho coluna apos coluna,
agora se você quer em outra cor ,
basta adicionar outro port  b ou c  
e se quiser misturar as cores deixe assim  rsrs !!       
output_d (0b11111111);
 output_b (0b11111111);
parece que essa cor misturando vermelho com azul fica amarelo sei lá ,
rsrs !bem  a ideia é essa ! fiquem a vontade para compartilhar!!

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Carlosfrances ,

 

Opa, fico muito contente em ver o seu aprendizado !

 

Que tal colocar o esquema de seu circuito, para facilitar o entendimento de seu projeto ?

 

E vou dar umas dicas para você aperfeiçoar a quantidade de cores possíveis.

 

Paulo

  • Haha 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@aphawkObrigado paulo! na verdade eu fiz esse projetos a alguns anos atras ,quando tava praticando com muita vontade ,tenho outros projetos abiciosos mesmo o meu forte não sendo muito em programação rs,

pretendo contruir minha propria matriz de led ,na verdade eu pretendo projetar , estou construido por ionização de argonio sputtering, feixe ionico , eu fiz um desenho  com lapiz de ponta  muito fina no cobre ,em uma folha bem fina de cobre para  ser ionizada com plasma ,é complexo ! eu imprimi  não podia ser feito a mão

estou estudando alguns calculos de banda de semicondutores para fazer outras cores vou depositar os leds via sputering kkkk é de endoidar kkkk

matriz de led.bmp

matriz de led.bmp

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem te desanimar,mas voce citou usar o CCS,não sei se o compilador vai dar suporte a um micro capaz de fazer a varredura da quantidade de Leds(RGB) que postou,isso diretamente com PORTs.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
31 minutos atrás, vtrx disse:

suporte a um micro capaz de fazer a varredura da quantidade de Leds(RGB)

No meu . de vista são só 3. Então dá e sobra. (desde que ele não planeje fazer um telão colorido com leds+pic)

 

O que o amigo @Carlosfrances precisa dominar é a arte de se controlar o pwm do mc. Ou no caso de 3 saídas, uma opção é criar uma interrupção e nela controlar o tempo de cada led aceso. Algo como

void interrupt()
{
t++;
if (brilho_ledR<t) ledR=1;else ledR=0;
if (brilho_ledG<t) ledG=1;else ledG=0;
if (brilho_ledR<t) ledB=1;else ledB=0;
}

e no loop do main() fazer o controle dos brilho_ledX

 

off... algumas pessoas (tipo esta) tem alguma dificuldade em comentar em tópico marcado como resolvido (a própria autoresposta como a melhor?!) . Portanto, não leve a mal se esta for publicação singular, ok?

  • Curtir 1
  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

😎

adicionado 1 minuto depois

@Isadora Ferraz

o caso eu depois vou estudar a arte de pwm para diminuir a intencidade das cores dos leds , e enviar estes padrores ... assim poderei fazer a matriz lcd rsrs... no caso de expandir  , eu coloco alguns 74hc595 conectado a uns  uln2003 com 74hc573

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!