Projeto 478 Indicador Digital de Nível

21/08/2014 15:59

 

DIGITAL LEVEL INDICATOR.

Este programa produz uma função de indicação de nível usando o principio básico da conversão digital analógica.Enquanto o programa está “rodando”, ajuste o controle no sentido horário ou no sentido anti-horário lentamente e veja o que acontece nos LEDs.
O programa gera uma saída de tensão de referência (na figura, uma onda em degraus). O comparador aceita e compara com uma voltagem de entrada (em pontilhado na figura). E se a voltagem de entrada excede a tensão de referência, o comparador produz um sinal na saída que é introduzido na porta IN1 do microprocessador. Esta entrada é capturada pelo programa pela instrução IN na linha #06.

 

Descrições:

Vamos observar o fluxograma. Você vai encontrar dois “loops” principais de programa; um é o “loop” interno processado de #02 a #0C e outro é o “loop” é externo. O “loop” interno repete o processamento 4 vezes e se a contagem do “loop” atinge seu limite, o conteúdo do acumulador A vai para a saída do fluxo do programa retorna para o início.
Durante o processamento do “loop” interno, o programa obtém uma entrada vinda do comparador em #06. Este é um e somente um ponto de contato deste programa com o mundo externo ou uma interface com os dispositivos eletrônicos. Como esta entrada tem o tamanho de 1 só bit, uma interessante técnica de codificação é usada em #06 a #08; o dado de entrada de 1 bit é deslocado para mover-se para o flip-flop de “vai um” (“carry-flag”), sendo verificado para ver se é zero ou um pela instrução JNC em #08.
Outro ponto interessante deste programa é o código da linha #09. Vamos observar estes códigos precisamente.
Se a tensão de entrada for menor que a tensão de referência, o processamento do “loop” interno ocorre 4 vezes sem trocar nenhum registrador ou dado exceto o registrador C, que é o contador de “loop” bem como contém os dados da tensão de referência.
Se a tensão de entrada se torna maior que a tensão de referência durante o processamento do “loop” interno, o fluxo do programa chega a linha #09 e salva o então corrente valor da tensão de referência (presente no registrador C) para o acumulador. Uma vez que o limite do contador de “loop” foi alcançado, ou o registrador C se tornou zero, o último valor de referência salvo no acumulador A vai para a saída em #12.
Deste modo, o número de LEDs acesos aumenta ou diminui suavemente quando você ajusta o controle.

Nota: O mesmo programa é utilizado nos Projetos 479 e 483.

 

 

 

 

 

Fluxograma:

 

Projeto 234 Medidor de Nível de Voz

Projeto 395 Indicador de Nível de Água de 3 Passos