Boa noite Sr's, venho brigando a dias com uma programação,

Tenho sensores ligados a entradas, o resultado é exibido em excel e também em LCD feito um menu de listas...

Acontece que no LCD o valor não atualiza sozinho, ele lê o valor e congela, só atualiza se eu entro e saiu do sub menu, ja tentei "do while" sem sucesso (não sei se efetuei certo), tem alguma outra função que eu possa usar para inserir um "loop dentro dos case's" ?

Caso necessário o código esta em anexo.

Grato.

Exibições: 307

Anexos

Responder esta

Respostas a este tópico

Olá.

   Acho que o loop não seria a melhor ideia. Pq um loop infinito certamente vc não quer. Ficaria dificil nesse ponto saber qual a saída do loop, acho.

  O melhor seria um conceito de maquina de estado.

  Algo como: quando entrar nessa tela vc seta uma variável (atualizar=1) se entrar em outra: atualizar=0.

Aih dentro do loop vc verificaria 2 condições:

Se atualizar é 1 e se passou um intervalo de tempo, por ex 500ms (use mils()). Nessa condição vc escreve atualizado no display (posiciona cursor e escreve).

Algo assim.

Desculpe, não entendi muito o conceito de maquina de estado, poderia realizar um exemplo?

https://pt.wikipedia.org/wiki/M%C3%A1quina_de_estados_finita

Sem se preocupar com o nome da coisa, a ideia é que importa.

Vc criaria uma variável (um flag) que indicaria que vc está na exata condição em que o numero deveria mudar mais nao muda. 

Pra conseguir isso vc seta a variavel ao entrar no "estado" e reseta ao sair ou ao entrar em outros.

Aih no loop vc verifica essa variável (que indica o estado) e se ela estiver setada imprime o valor.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço