Como desenhar diagramas de tempo?
WaveDrom: Uma ferramenta rápida e estilosa
Se você já precisou desenhar um diagrama de tempo para algum circuito lógico usando apenas régua e lapiseira, sabe que muitas vezes o processo se torna bem entediante. Pensando nisso, iremos conhecer uma ferramenta muito interessante, que auxilia na criação de diagramas de tempo de forma rápida e com um visual moderno. Trata-se do WaveDrom, um editor escrito em JavaScript por Aliaksei Chapyzhenka , o qual possui uma série de vantagens, como:
- Diagramas criados através de scripts, o que facilita futuras modificações.
- Visual atrativo.
- Gera arquivos em formatos JPEG e SVG.
- Linguagem de fácil aprendizado, baseada em JSON.
- Possibilidade de criação de diagramas complexos.
A linguagem utilizada para desenhar os diagramas de tempo é a WaveJSON e você não precisa de nenhum background em JavaScript para aprendê-la. É extremamente intuitiva e com alguns exemplos resolvidos, você irá dominá-la rapidamente. Pensando nisso, os autores criaram um tutorial, carinhosamente apelidado de “Hitchikers’s Guide to WaveDrom”, onde é possível ter acesso à todo o passo a passo para dominar a linguagem.
Um pequeno exemplo
Como havia sido dito, a linguagem é extremamente intuitiva e editor te dá o resultado automaticamente a cada linha escrita. Portanto, é muito fácil de identificar erros e bugs e concertá-los se torna uma tarefa fácil. Nosso código resulta no seguinte diagrama.
Este foi apenas um simples exemplo de como a ferramenta funciona. Caso você se interesse, existem muitas outras configurações interessantíssimas e possibilidades de modificar o diagrama de tempo ao seu gosto. Lembrando que é extremamente recomendável que se leia o tutorial antes de tentar desenhar qualquer diagrama.
Baixando na sua própria máquina
O WaveDrom conta ainda com a possibilidade de o usuário poder baixar uma versão do editor e rodá-la na sua máquina. Não acho que seja algo extremamente necessário, mas caso você esteja em um local remoto e seu passatempo seja desenhar diagramas de tempo, então vale muito a pena. Brincadeiras a parte, caso você queria baixar a versão mais recente , clique aqui.
Desenhando circuitos lógicos
Não satisfeito com as utilidades disponíveis, os desenvolvedores introduziram uma segunda ferramenta, que pode ser muito útil: a possibilidade de desenhar circuitos lógicos. O código a seguir nos mostra um exemplo de como desenhar uma porta lógica XOR. E é claro, existe um tutorial para o desenho de circuitos lógicos, que você pode acessar aqui.
Existem outras ferramentas para o desenho de diagramas de tempo. Um exemplo muito utilizado é o pacote tikz-timing para Latex,o qual considero um tanto chato de usar. Porém, se o seu objetivo é ter um visual elegante e principalmente, rapidez na hora do desenho, com certeza a melhor ferramenta é o WaveDrom.
Mas me diga, qual ferramente você utiliza para desenhar seus diagramas? Deixe nos comentários.
Muito obrigado e até a próxima!
Referências
https://wavedrom.com/tutorial.html
https://wavedrom.com/tutorial2.html