Boa noite galera!!

Gostaria de saber se alguém saberia como fazer uma barra de progresso para o display lcd do arduino?

Eu achei um video de um cara que ele fez so que o codigo e muito grande e esta atrelado a um potenciometro e eu queria como forma de fingir que esta sendo carregado algo (porem nao esta sendo carregado nada).

Exemplo:

                            Iniciando o Sistema!

             ( aqui uma barra de carregamento ficticia )

Aqui esta o video que eu achei de exemplo!! 

https://www.youtube.com/watch?v=rOseMR8jjR0

Aqui esta a programacao que ele utilizou ( porem queria que ela fosse menor pois estou utilizando um arduino nano e nao tenho como substituir e estou querendo implementar isso e um outro codigo meu que utilizo sensor biometrico)

Exibições: 656

Anexos

Responder esta

Respostas a este tópico

Olá tudo bem?

Antes de mais nada, recomendo que você remova o código da postagem e adicione o código em um .ino ou através do pastebin. Isso facilita muito a visualização.

Veja, até onde sei, em projetos com microcontroladores, não é necessário um loading, mas entendo que o loading que você deseja fazer é meramente decorativo. Então, até mesmo uma exibição simples, num loop, poderia resolver.

Exemplo:

var = 0;

e no loop:

- var++;

- define cursor em 0/0

- imprime o valor de var

- cria uma condição qualquer para que, a cada "10 var", apareça um outro caractere em uma posição pré-definida.

é bem simplificado.

Bom dia 3S, (se não gosta que te chame pelas iniciais, avise),

Recomendações:

  1.  Remova seu sketch da área de texto do seu tópico;

  2.  Leia           http://labdegaragem.com/forum/topics/sugest-o-de-como-postar

  3.  Comente as linhas do seu sketch. Fica mais fácil entender o que vc quer fazer com cada

       linha e facilita a ajuda.

  4.  Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo" e anexe o arquivo

        com o seu sketch.    

RV mineirin

Olá, Samuel!

Sugestão:

Crie uma função displayBarGraph :

void displayBarGraph( uint32_t valParam, uint32_t maxValParam )

Que recebe o valor da variável que deve ser "bargrafiada"( valParam ) e o valor máximo esperado para esta variável( maxValParam ), para que você possa calcular a fração da barra que vai ser "pintada" em relação ao total.

Depois, no seu código, é só chamar a função com os parâmetros adequados.

E o que a função displayBarGraph deve fazer?

Sugestão:

1. Calcular o tamanho da barra ( o que vai ser "pintado" ), em número de caracteres

Tamanho da barra = ( variável * tamanho máximo da barra ) / valor máximo da variável

2. Imprimir o número de caracteres calculado em um simples loop for.

P.S.: Para o caso da simulação que você que fazer, o valor da variável poderá ser implementado a partir da função millis() que, por exemplo, incrementa o valor de um contador a cada 1 s, 2 s, etc.

Espero ter ajudado.

Abração!

Boa noite, entao, esse codigo que vc me mandou ele so funciona com um potenciometro, e meu objetivo e que na tela do display apareça a barra contando de 0-100 % sem influencia de nenhum pino do arduino

Olá Samuel!

   Eu não havia entendido perfeitamente a questão, mas agora você esclareceu!

   E me sinto menos culpado, porque parece que o Carlos kwiek também não havia entendido.

   Concordo com ele quando diz que é melhor dar o caminho ao invés da solução completa, assim aprendemos muito mais.

   Voltando ao teu caso, o exemplo com potenciômetro deve ter uma linha utilizando a função analogRead() . algo do tipo:

         valPotenciometro = analogRead( A0 ) ;


   Faça o seguinte:

   1. Substitua o analogRead( A0 ) por um valor fixo entre 0 e 255, por exemplo

         valPotenciometro = 50 ;

   2. Rode o programa, sem qualquer potenciômetro ligado aos pinos do Arduino e veja o que acontece.

   3. Substitua o 50 po outro valor, por exemplo, 100:

         valPotenciometro = 100 ;

   3. Rode o programa, sem qualquer potenciômetro ligado aos pinos do Arduino e veja o que acontece.

   Por que estou te pedindo isto? Porque você verá que não importa da onde vem a informação para ser colocada no Bar graph, então o exemplo pode ser usado sem o potenciômetro!

   Agora é só usar um contador incrementado a cada intervalo de tempo no lugar da variável onde o potenciômetro era lido e bingo! Você terá o efeito desejado!

Bônus: "Dê um programa a uma pessoa e você a frustrará por um dia. Ensine-a a programar, e você a frustrará pelo resto de sua vida!"

Espero ter ajudado!

Sorte e sucesso!

Oi novamente, Samuel!

   Achei esta biblioteca na Internet. Não testei.

   Se quiser experimentar, faça-o por sua própria cont e risco. :-)

Abração!

Boa noite,

Uma opção poderia ser a de usar uma biblioteca, além de facilitar as coisas, elas são didáticas se estudadas.

Anexo uma delas aqui. (Existem varias)

No meu canal acabei de subir um vídeo simulado com meu Proteus com VSM Arduino, utilizando um dos exemplos da biblioteca. Espero ajude.

Abs.

CK

Boa noite, entao, esse codigo que vc me mandou ele so funciona com um potenciometro, e meu objetivo e que na tela do display apareça a barra contando de 0-100 % sem influencia de nenhum pino do arduino

Bom dia,

Desculpe mas agora fiquei confuso, você diz acima (apareça a barra contando de 0-100 % sem influencia de nenhum pino do arduino) sempre vai precisar de pinos conectado ao arduino e o display, mesmo que seja um Display I2C ira precisar de pinos do arduino conectados, se puder esclareça melhor.

Abs.

CK

Link para baixar a biblioteca, tentei anexar mas o site do LDG esta dando erro direto.

BAIXE AQUI A BIBLIOTECA

É a mesma que o DT recomendou eu acho.

Abs.

CK

Samuel bom dia,

Acho que entendi o que você quer.

Veja, todos os colegas que me antecederam, usaram aquele conceito de ensinar a pescar e não dar o peixe, ou seja, mostrar um caminho, eu também segui o mesmo raciocínio deles, porque acho que a pessoa deve ser bem clara quando solicita algo, por exemplo, pessoal, quero um código pronto pra eu copiar colar e ver funcionar, não me interessa como funciona nem quero estudar nada, mas você começou sua solicitação falando de um cara que colocou um código na internet com um potenciometro, eu respeito esse e outros caras que usam seu tempo para compartilhar conhecimento sem obter nada em troca, apenas a satisfação de ensinar a outros o que sabem.

Como eu disse antes, a biblioteca é um bom caminho, para estudar e para facilitar as coisas para quem quer rapidez, mas acho que você não tomou nem conhecimento da mesma, embora tanto eu como o DT a tenhamos mencionado, porque veria que lá tem mais de um exemplo, com ou sem potenciometro.

Veja este outro vídeo que subi no meu canal, usando outro dos exemplos da biblioteca por exemplo. bastaria você adaptar as suas necessidades

Agora se você quer apenas um código para copiar e colar, e ver funcionar ,aguarde que sempre algum colega vai lhe ajudar.

Abs.

CK

Segue um exemplo.

LDG_Topico_LCD.txt

Abs.

CK

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço