Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Matheus Falcão P

[Resolvido] Ajuda rapidinha sobre Shift Registers com PIC

Recommended Posts

Boa noite galera do fórum, eu estou prestes a botar a mão na massa e começar a bolar um display de led multiplexado, vou começar com um 8x8 simples, estava eu pesquisando e encontrei em muitos circuitos o registrador CMOS 4094, ele é usado porque tem o pino STB, testei ele no protheus e ainda não assimilei porque preciso dele, e outra duvida se pa mais cruel: o registrador precisa de um clock pra funcionar que creio eu tem que ser de alguma forma sincronizada com o rate do pino Data, como eu faço isso pelo Pic, como eu calculo a frequencia dele, não tenho a minima ideia de como fazer isso, agradeço desde ja a ajuda que eu venha receber da comunidade, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro leia algo sobre 'varredura de display',para poder entender os circuitos e soft.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

Putz, ontem mesmo pensei em postar uma dúvida a respeito desse pino strobe, preciso economizar alguns pinos em um projeto que estou desenvolvendo e certamente vou usar o 4094. Bom quanto ao strobe não poderei te ajudar, mas a operação com os pinos data e clock é bem simples.

Primeiro você coloca o dado (0 ou 1) no pino data e depois da apenas um pulso no pino clock manda 1 e logo em seguida manda 0, se estiver usando cristal de 4 Mhz pode ser em seguida mesmo, pois, de acordo com o datasheet do 4094 ele aceita o pulso na casa dos (ns) nanosegundos.

Se estiver usando linguagem C, crie uma função que receba uma variavel int(8bits) que será o que você quer na saída do 4094 e nessa função crie um loop que rode 8 vezes, dentro desse loop as duas ultimas instruçoes devem ser as que dão o pulso de clock, quando sair do loop, o seu byte que chegou serialmente estará presente na saída do 4094.

Não sei se me expressei bem, espero ter ajudado

Att,

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Então o esquema é manualmente? Eu to a meses tentando entender como funciona um display, mas não consigo compreender por completo, sei multiplexar mais não consigo sacar a interação do hardware com o software entende. Nos meus testes eu pensei em algo do tipo:

    int letra_a [4] = {

    0b0110,

    0b1001,

    0b1111,

    0b1001}

    int i;

    portb=0b00000001; (primeiro catodo do display ligado);

    for (i=0; i<=3; i++){

    portb<<=1; (desloco o catodo do display ligado);

    porta=letra_a; (vou escrevendo linha por linha)

    delay_ms(30);

    }

    consigui escrever a letra porém como vou fazer isso com 8 caracteres? (ideia principal de um relogio com um display 6x35).

    pensei em usar o registrador , mais n sei como.

    Editado por Matheus Falcão P

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Geralmente os Shift-out tem como ligar em cascata, aí só você enviar sequencialmente os dados, como exemplo, se você tiver dois displays, você envia os caracteres "A" e "B"

    Iria acontecer algo assim: "A " -> "BA" ou então " A" -> "AB", ou seja com apenas uma saída serial você pode controlar infinitos registradores de deslocamento.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Geralmente os Shift-out tem como ligar em cascata, aí só você enviar sequencialmente os dados, como exemplo, se você tiver dois displays, você envia os caracteres "A" e "B"

    Iria acontecer algo assim: "A " -> "BA" ou então " A" -> "AB", ou seja com apenas uma saída serial você pode controlar infinitos registradores de deslocamento.

    Sim, estou ciente, minha duvida é a seguinte, eu fiz um esqueminha com o 4094, o pino de dados enviando dados (avah), o EO em nivel logico baixo no pino do pic e o STB ligada numa inversora que sai do mesmo pino do OE do pic.

    Eu envio os dados e do 1 pulso no pino de controle, e o que aocntece é que ele pega a serial e abre na parelela sem deslocar, aparece direto e some, quanto a isso sem duvidas, minha duvida é na velocidade do clock, teria que ser algo espefico? seria o pic a controla-lo? e se fosse como fazer isso no software. Obrigado pelo apoio do forum.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    http://forum.clubedohardware.com.br/resolvido-leds-pic/1015706

    primeiro aprenda sobre o cd 4094 que é um ci nota 10 e muito fácil

    segundo me desculpe pelos erros de portugues no topico que te passei kkk

    o pino strobo é para travar as saidas no modo em que estão a você altera tudo que quiser sem alterar nenhuma saida e depois libera as alterações que fez liberando o pino strobo...

    acoselho que no seu software va dando os clocks no CI para não haver erros de sincronização, então fica fácil pois só vai para a outra linha ou coluna (a que estiver sendo controlada pelo CI) quando você der o clock e logo após dar o clock ou antes ja muda o estado das IO's que controlam os led's que devem ser acesos ou apagados

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Muito obrigado pela ajuda do pessoal aqui do forum, mais acho que ja resolvi isso (achei uma solução aqui no forum mesmo kk).

    eu tava fazendo assim: o CI 4094 eu tava usando para escrever nas colunas (anodo) e eu tava deslocando a linha (catodo) com um 74138, mais eu inverti, agora desloco a coluna com o 4094 e escrevo nas linhas direto do pic mesmo.

    Ta resolvido!

    Mais com certeza post meu com os problemas que vai dar não vai faltar!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Visitante
    Este tópico está impedido de receber novos posts.
    Entre para seguir isso  





    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

    ×