Gostaria de fazer isso com a biblioteca 74595.c ccs c

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 26 Dez 2014 23:16

alguém poderia postar um exemplo ? para ver como é que fica? Grato! :o
http://forum.clubedohardware.com.br/top ... -compiler/
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor andre_luis » 27 Dez 2014 10:13

olá


Esse assunto já foi abordado aqui, mas como não acompanhei de perto não sei até que profundidade foi discutido, mas comentaram bastante coisa e vê se alguma explicação ou exemplo alí te ajuda: O desabafo de um iniciante em programação!. Vai postando as duvidas pontualmente conforme forem aparecendo.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 27 Dez 2014 16:57

não vou olhar andre-teprom porque o dono do topico foi eu que criei eu era metabee kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk :D :mrgreen: :roll: :mrgreen:
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor ze » 27 Dez 2014 21:41

esquece a lib pronta daquele lix.... o 595 é beeeeeeem simples. Digito online isso com 99,99% de chance de estar certo...
Código: Selecionar todos
#define clock RB0
#defne data RB1
#define stb RB2
#define CLK clock=1;clock=0
#define STB stb=1;stb=0
void out595(unsigned char dado)
{
unsigned char i;
for (i=0;i<8;i++)
{
data=dado;
CLK;
dado>>=1;
}
STB;
}

Depois de entender isso já pode pensar em dominar o mundo
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor andre_luis » 28 Dez 2014 11:06

metabots,


Olhando o programa que voce postou no outro link, te confesso que está muito complicado de entender, pois não há nenhuma documentação sobre a matriz de caracteres embutida dentro dessa rotina, que pelo visto parece apenas representar uma seta. O que achei mais bizarro nessa rotina é que aparentmente tanto os pinos de controle como os pinos de dados estão misturados dentro da própria matriz !

Na minha opinião, esse esemplo possui um propósito meramente de demonstração, mas nada prático, pois mudanças na imagem do display são impraticáveis, já que afetam o controle. Talvez seja útil para microcontroladores com poucos pinos, onde tudo tenha de ser feito com uma única Porta de 8 bits, o que espero essa limitação não ser o seu caso.

Sobre o programa que o Ze postou logo acima, achei muito interessante a ideia dele de iniciar um novo programa separando as rotinas em camadas; ou seja, primeiramente deve se criar uma função para manipular os pinos do 74595 ( handshake ) e somente depois sim, usar essa função para manipular o mapa de caracteres.

Aproveito para dar uma sugestão: Repare no artigo Painel de LED publicitário baseado no PIC16F877, onde de início fui tentado a usar um programa pronto de outra pessoa, mas como estava pouco documentado, perdi menos tempo fazendo o meu próprio, camada-por-camada, como sugerido pelo Ze. Sei que não responde á sua dúvida inicial, mas se quizer o utilizar pode fica á vontade - repare que está devidamente documentado, ficando fácil entender.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 01 Jan 2015 04:11

Compriendo desta vez vamos realmente seguir a dica do amigo Zé , gostei do codigo dele bem pratico! :wink:
qualquer novidade eu posto



Depois de entender isso já pode pensar em dominar o mundo kkkkkkkk vc é uma figura, Cara Ilario kkkk :mrgreen:
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor andre_luis » 02 Jan 2015 15:55

Estava procurando algo no pudn quando me chamou atenção um arquivo, que talvez te ajude a ter alguma ideia. Não me pergunte como funciona ou se funciona, sequer olhei em detalhes, mas alguma coisa é muito parecida com o embrião daquele postado pelo Ze mais acima.
cpp code
#include<reg51.h>
#include <INTRINS.H>
#define uint unsigned int
#define uchar unsigned char
#define nop() _nop_();_nop_();

sbit CLK=P2^0;
sbit DAT=P2^1;
sbit RCLK=P2^2;
//sbit CS=P2^3;

uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};//0-9,-,È«Ãð

void sendbyte(uchar byte)
{
uchar num,c;
num=tab[byte];
for(c=0;c<8;c++)
{
CLK=0;
DAT=num&0x80;
num=num<<1;
CLK=1;
}
// RCLK=0;
// nop();
// nop();
// RCLK=1;
}

void out595(void)
{
RCLK=0;
nop();
RCLK=1;
}

void display(uchar word)
{
uchar i,j;
i=word/10;
j=word-10*i;
sendbyte(j);
sendbyte(i);
out595();
}


main()
{
while(1)
{
display(19);
display(86);
}
while(1);

}
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 04 Jan 2015 20:26

Andrer temprom me ajuda que eu te passo o código talvez pronto sou bom de raciocínio , pode demorar mais eu passo , olha é o seguinte não adianta agente ficar postando o código de outras pessoas de outros sites que não passam exemplos vivos para que se possa entender e aproveitar e estimular a criatividade beleza até ai ? OK! então faz o seguinte, posta de como manipular esse código por exemplo esses que interessam ,
estava olhando o manual , veja bem , a pessoa quer construir uma matriz 8x8 tenta de todas as maneiras , e vcs viram que meu código ficou fadado apenas pelos vetores , mais alguém sabe fazer uma matriz pelo menos simples 8x8 utilizando esses códigos que estou citando em baixo ?, pessoal acorda ai pra ajudar !
Código: Selecionar todos
, ~ One's complement operator
>>= Right shift assignment, x>>=y, is the same as x=x>>y


dominando , complemento , deslocamento se chega nessa parada doida ai!! :arrow:

e aproposito vc fecha não exclui não é claro!, resolve! aquele tópico que da pra alguém aproveitar algunha coisa !
não tenho mais a senha dele não tive que fazer outro nick valeu André!
vou ficar usando o do metabots kkk , quero dizer do meu novo nick! RESOLVE o tópico do DESABAFO VLW!!
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor ze » 04 Jan 2015 20:53

discordo. Adianta sim. Afinal alguém compartilhou pra isso mesmo.
Portanto me diz o que vc achou disso...
Código: Selecionar todos
unsigned char const tabela[]={
0b00010000,
0b00110000,
0b01110000,
0b11110000,
0b01110000,
0b00110000,
0b00010000,
0b00000000,

0b00001000,
0b00001100,
0b00001110,
0b00001111,
0b00001110,
0b00001100,
0b00001000,
0b00000000,

//etc
};

consegue ver as setas? Mentalize: dois 595: um pra tabela e outro pros anodos comuns. Agora imagine varrendo cada byte na saída do 595 numa interupção chute a 100Hz
Código: Selecionar todos
...
out595_1(0b00000000);//apaga leds - anodo comum - pra não aparecer fantasmas

out595_2(tabela[i]); //padrão de bits

out595_1(1>>i); //acende uma linha por vez - anodo comum
i++;
if (i>7) i=0; //recomeça
...

Tem o conceito do deslocamento que mecionaste. O out595() está no outro post. Entendeu ele PELO MENOS?
Una as mãos, feche os olhos, esvazie a mente, volte a dormir e mentalize a proposta acima. E pedir pra acordar não motiva ninguem. Agora nos mostre algo "vivo" de sua parte. Um simples "obrigado vou tentar" já é suficiente.
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 05 Jan 2015 19:41

Obrigado , foi o que fiz no clube do hardwaere e posso dar aqui também sem problemas :)
acontece que falando a verdade vc entende esse codigo , o codigo esta imcopleto mais se vc esta tentando extrair algo de alguem, então vai demorar amigo por que pra entender esse grego é ruim em!!! :roll: kkkkkkkkkkkkkkkk!

traduz irmão traduz !falta mais coisas ali!

não quero codigo pronto não ,espero que alguem aqui não pense que quero codigo prontokkkkkkkkkk é quero pronto mais não tanto, por exemplo que saber como enviar pelo menos um BYTE ou pelo menos como aquele desgraçado do operador de deslocamento ler um byte inteiro sem acender nos pinos do microcontrolador , amigo estou pensando todo pagunçado nem sei como os caras faz isso ou se faz sei lá ! o que aprendi foi apenas que o operador de deslocamento acende é os pinos do micro controlador indo e voltando ´so isso ate agora foi o que aprendi , bem pouco kkkkkk :mrgreen: para vcs Deuses d linguagem de programação acho que devo comer Pastante Grama para aprender a Programar kkkkkkkkkkkkkkk :mrgreen: Pastante Pastante kkkkkkkkk! Zé :roll: ou pastagem kkk eu não entendo como funciona a coisa ! nem imagem da pinagem se colocou , é melhor alguem quando for pensar em ajudar aoutro postar tudo completo nos detalhes , ta o cara recebe um salario todos os dias kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk e dai kkkkkkkkkkkkkkkkkkkkk que que tem aver com a coisa ! :mrgreen:

entaõ faz essa seta pra mim faz ?? kkk
por que aquele topico foi meu eu sou Nikola tesla do clube do hardwaere
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor EvandrPic » 06 Jan 2015 00:39

Você quer aprender o quer pronto?
Parece que lhe faltam conhecimentos muito básicos para que compreenda o que você quer fazer.
Assim você ficará "patinando" e não sai do lugar.
Você precisa começar do começo.... fazendo um LED piscar... depois, conforme for aprendendo, vai incrementando a complexidade do teu programa.
Você sabe como funciona o 74hc595? Sabe quais e como devem ser o sinais para ele funcionar como Shift Register?

Dê uma olhada nessa explicação sobre o funcionamento do 74HC595:
http://www.oarduino.com/arduino-n-porta ... 95-output/

Ficar abrindo diversos posts com o mesmo problema não vai te ajudar em nada! Você está tratando disso em 3 posts aqui no ASM51.
E acredito que ninguém aqui vai mandar pra você a solução pronta e mastigada conforme você está pedindo.



metabots escreveu:entaõ faz essa seta pra mim faz ?? kkk
por que aquele topico foi meu eu sou Nikola tesla do clube do hardwaere


metabots escreveu:aé gostaria e um codigo disso funcionando via pm !


metabots escreveu:ZÉ RESOLVE O MEU PROBLEMA ZÉ ,È UMA ORDEM KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK :evil: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen:
DA MATRIZ! kkkkkkkkkkkkkkkkk :shock: :shock: kkkkkkk :mrgreen:


kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
kkkkkkkkkkkkkkkkkkk
kkkkk
kkk

AHAAAAAAAAAAA! :P
EvandrPic
Dword
 
Mensagens: 2116
Registrado em: 31 Mar 2010 15:05

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 06 Jan 2015 02:11

Olha que pessoal desisto , não tem santo que aguente vão catar coquinho ora bolas !!! kkkkkkkkk
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 07 Jan 2015 02:05

pARA O AMIGO EvandrPic AI DE CIMA QUE DISSE QUE EU TENHO QUE COMEÇAR COM UM LED ATE ENTENDER RSRSR COMO FUNCIONA O 595, AMIGO NÃO VOU PERDER MEU TEMPO KKK :mrgreen: JACONHEÇO ISSO !
OLHA AI ANDRE _TEPROM TU NÃO TAVA DIZENDO QUE QUERIA UM CODIGO MAIS INXUTO E O MEU É BEM MAIS COMPLETO ME VINGUEI KKKK :mrgreen: E RARA EXATAMENTE ESSE TIPO DE CODIGO QUE EU QUERIA ! A GALE Só POR QUE SABE FICA TIRANDO ONDA ANDRE `MANDA ELES TIRAR ONDA AGORA :twisted: :mrgreen: :D NINGUEM AQUI É IMPREGADO DE NINGUEM NESSA Piiiiiiiiiiiiiii!! ENTENDEU!! HO !
Já quase desistindo consegui encontrar! :D :mrgreen: :roll:
a só tem uma coisa agora ,vê se alguém poderia migrar isso para ccs c Valeu !por que eu não vou não!


Imagem

Código: Selecionar todos
//LED dot matrix display
//columns used for scanning
//rows used for generating patterns


// Definitions
 sbit my_data at RC2_bit;
 sbit clock at RC6_bit;
 sbit latch at RC7_bit;


 const unsigned short one[2][8] = {{0x00, 0xFE, 0x11, 0x11, 0x11, 0xFE, 0x00, 0x00}, //A
                                   {0x00, 0xFF, 0x89, 0x89, 0x89, 0x76, 0x00, 0x00}  //B
                                  };

 unsigned int row, column, scanner, repeat;

void main() {
 CMCON = 0x07;   // Disable comparators
 ADCON0 = 0x00;
 ADCON1 = 0x0F;
 TRISC = 0x00;
 TRISD = 0x00;
 my_data = 1;
 scanner = 1;
 row = 0;
 column = 0;
 
 while(1){
 
      for (column = 0; column < 2; column++){

             for (row = 0; row < 8; row++){
                  my_data = one[column][row];
                  clock = 1;
                  clock = 0;
                 
                  scanner = 1;
                  for (repeat = 0; repeat < 8; repeat++){
                  latd = scanner;
                  scanner = scanner << 1;
                  }

                  }
             latch = 1;
             latch = 0;

             }
  }
}


tai ho consegui agora é so estudar micro c ou qualquer outra linguagem ,por favor galera da pra alguém traduzir ai pra CCS C , é a linguagem que eu mais domino!
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04

Re: Gostaria de fazer isso com a biblioteca 74595.c ccs c

Mensagempor metabots » 07 Jan 2015 20:07

ALguel ???? kkkkkkkkkkkkkkkkk!
Avatar do usuário
metabots
Bit
 
Mensagens: 22
Registrado em: 26 Dez 2014 23:04


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

x