Como medir sinais digitais?

Imagine que você é uma pessoa com um ou mais dos seguintes perfis:
– estudante de graduação ou pós-graduação em cursos relacionados ao projeto de hardware e software,
– hobbista nas áreas de eletrônica que curte mexer e desenvolver projetos com microcontroladores, FPGAs, internet das coisas (IoT),
– técnico em eletrotécnica, robótica ou eletrônica ou engenheiro atuando no desenvolvimento de projetos com sistemas eletrônicos.

 

Como testar os projetos que você desenvolve? Como verificar na prática aquilo que foi passado em aula?

 

Mais especificamente, como verificar que determinado circuito está se comunicando corretamente com outro circuito no seu projeto? Como implementar e verificar o funcionamento de um protocolo de comunicação digital que você aprendeu na sala de aula, livro ou apostila?

 

Para solucionar este problema, existem várias abordagens. A estratégia que vou mostrar aqui neste artigo envolve o ANALISADOR LÓGICO.

 

– O que é um analisador lógico?

Dentre os vários instrumentos existentes para medição de sinais elétricos em circuitos, o analisador lógico é uma opção muito eficaz e infelizmente ainda pouco conhecida para medição de sinais elétricos em circuitos eletrônicos. Ao contrário do já conhecido osciloscópio, o analisador lógico é empregado para medição de sinais exclusivamente digitais, tais como sinais de protocolos de comunicação (SPI, I²C, USB, Ethernet), sinais em barramentos de memória, estados de pinos em microcontroladores, entre outros tipos [1].

 

Um analisador lógico pode ser visto como um osciloscópio que realiza medições com resolução vertical de 1 bit em todos os canais, conforme Figura 1 abaixo. Ele captura um sinal do circuito que está sendo medido e compara esta tensão capturada a um valor de tensão limiar definido de acordo com as especificações do instrumento (ou manualmente pelo usuário). Se tensão medida for maior que a tensão limiar, o sinal mostrado na tela será igual a 1 (um). Caso o sinal medido seja inferior à tensão limiar, o sinal mostrado será igual a 0 (zero).

 

Um osciloscópio digital converte a tensão analógica capturada em uma palavra digital com tamanho proporcional à resolução vertical do instrumento. Por exemplo, um osciloscópio hipotético com resolução igual a 8 bits (255 valores digitais diferentes, inteiros e sem sinal) e capaz de medir tensões entre 0 e 3,3 Volts consegue exibir sinais com amplitudes de até (3,3 – 0)/(256 – 1) = aproximadamente 0,01294 Volts (ou 12,94 mV).

 

Figura 1 - Comparativo entre resoluções verticais - osciloscópio versus analisador lógico.
Figura 1 – Comparativo entre resoluções verticais – osciloscópio versus analisador lógico.

Outra diferença fundamental entre um osciloscópio e um analisador lógico é o modo padrão (porém não único) como cada instrumento desempenha sua função de medição. Um osciloscópio analógico mede um sinal elétrico capturando-o e mostrando-o na tela indefinidamente em uma mesma medição, sem armazenar este sinal (tal qual um “multímetro gráfico”). Um osciloscópio digital captura um sinal, armazena-o e atualiza tela a tela sucessivamente. Um analisador lógico captura um ou mais sinais em um única medição, com período limitado pelo número de amostras e/ou pela quantidade de memória presente no instrumento, podendo também realizar processo semelhante ao osciloscópio digital conforme modelo comercial (modo de operação “datalogger” e disponibilidade de memória). A diferença entre os tipos de medição dos instrumentos digitais pode ser visualizada na Figura 2 abaixo.

Figura 2 - Modos de captura e atualização - osciloscópio digital versus analisador lógico.
Figura 2 – Modos de captura e atualização – osciloscópio digital versus analisador lógico.
Um sinal digital pode ser medido com o osciloscópio digital, porém este instrumento captura e reconstrói muitos níveis e detalhes desta onda conforme resolução de amostragem, e não somente os níveis absolutos essenciais e suficientes em uma análise digital tal qual o último instrumento faz. De maneira complementar, um analisador lógico não é apropriado para representar um sinal analógico visto que os sinais são capturados e quantificados através de uma comparação binária e não uma conversão analógico-digital com resolução de múltiplos níveis necessária para representar este sinal (e seus detalhes) o mais fielmente possível no domínio analógico (Figura 3). A relação preço/taxa de amostragem de um osciloscópio geralmente é menor se comparada a um analisador digital, devido ao fato de a medição analógica necessitar de conversor analógico-digital (circuito mais complexo e mais caro) e a medição digital necessitar apenas de amostrador (mais barato).
 
Figura 3 - Comparativo entre resoluções necessárias
Figura 3 – Comparativo entre resoluções necessárias para representação de sinais no domínio analógico (tensão v_analog(t) em azul) e no domínio digital (tensão v_dig(t) em vermelho). No domínio analógico, a cópia do sinal medido torna-se mais similar à sua versão original à medida em que se aumenta ambos a (i) resolução vertical da amostragem no conversor A/D e (ii) a resolução horizontal, representada pela taxa de amostragem deste mesmo conversor. No domínio digital, visto que o sinal amostrado possui apenas dois níveis, o sinal medido possui forte dependência da taxa de amostragem utilizada pelo instrumento.
Também presentes em osciloscópios digitais, analisadores lógicos possuem mecanismos de gatilhos, que são especialmente úteis para identificar eventos singulares. Por exemplo, é possível iniciar e/ou finalizar uma medição assim que um determinado estado elétrico em um ou mais pinos é identificado nesta captura (borda de descida ou subida, estado baixo ou alto, ou até mesmo condições mais complexas, como a detecção de sequências de bits ou bytes específicas).
Analisadores lógicos podem ser encontrados em diversos formatos físicos. Analisadores de bancada possuem grande tamanho físico e tela própria para mostrar os sinais capturados, enquanto que analisadores PC-based possuem tamanho reduzido e não possuem tela própria, conectando-se com computador (USB) e mostrando as capturas na sua tela (Figura 4). Embora menores, os modelos PC-based estão atingindo grande sucesso devido a vantagens como a portabilidade facilitada, visualização de resultados em telas maiores (monitor de computador), desempenho comparável e preço inferior a modelos de bancada.
 
Figura 4 - Osciloscópio digital (à esquerda) [2], analisador lógico de bancada (centro) [3] e analisador lógico PC-based (à direita) [4].
Figura 4 – Osciloscópio digital (à esquerda) [2], analisador lógico de bancada (centro) [3] e analisador lógico PC-based (à direita) [4].

– O que eu posso fazer com um analisador lógico?

Com a crescente utilização de sistemas lógicos programáveis (microcontroladores, FPGAs e CPLDs), surgiu a necessidade de ferramentas como o analisador lógico. Muitos estudantes e profissionais que trabalham com sistemas embarcados desejam observar os sinais que trafegam nos barramentos digitais de comunicação – contendo 2, 4 ou mais canais, em formato binário, no domínio em que um circuito digital “trabalha” – destes dispositivos.

 

Você pode empregar um analisador lógico nas mais diversas situações, entre elas:
– Verificar a comunicação entre componentes do circuito (ex.: um microcontrolador enviando sinais digitais para outro microcontrolador ou memória),
– Análise de estados lógicos em blocos funcionais presentes em um FPGA,
– Depuração de código utilizando mudança de estado em pinos (ex.: verificar se o microcontrolador entra em um trecho de código verificando mudança no estado de um pino utilizado para este fim).
– Decodificar protocolos de comunicação conhecidos;
– Capturar e mostrar sinais síncronos ou assíncronos;

– Conclusão

Neste artigo, apresentamos para você leitor uma ferramenta muito interessante (o analisador lógico) que facilita a implementação de projetos com sistemas digitais e o aprendizado prático de conteúdo técnico relacionado a circuitos digitais, protocolos de comunicação e temas relacionados. Este instrumento é designado especificamente para realizar medições de sinais digitais ao invés de sinais analógicos, devido à sua resolução vertical unitária. Algumas características do analisador lógico foram comparadas ao osciloscópio, e diversas possibilidades de utilização foram apresentadas.

 

Nos próximos artigos desta série, veremos mais detalhes sobre os analisadores lógicos e exemplos práticos para uso deste instrumento em projetos envolvendo sistemas embarcados.
Até breve! Fique à vontade para compartilhar suas impressões e experiências abaixo na nossa seção de comentários!

 

– Quer saber mais? Então acesse: