Afinador de violão usando o kit LaunchPad, da TI
Autor: Jefferson Z. Moro | Publicado: 2010-11-16T15:53:00-08:00

Recentemente a TI (Texas Instruments) colocou em seu site um kit de desenvolvimento bem atraente (veja figura abaixo). Trata-se do MSP430 LaunchPad Value Line Development Kit (veja aqui: https://estore.ti.com/MSP-EXP430G2-MSP430-LaunchPad-Value-Line-Development-kit-P2031.aspx). É atraente porque vem com interface JTAG para debug, com dois microcontroladores razoáveis MSP430G2231 e 2211, e o melhor, custa US$ 4.30, isso já com frete! Esse kit é uma excelente sacada da TI. Com a ascensão dos microcontroladores da AVR devido ao sucesso do Arduino, é bom mesmo que eles façam sua própria “plataforma popular”. Outra coisa é que quando se vai fazer um projeto, o primeiro microcontrolador a se usar que vem a cabeça é aquele que você conhece. Daí que vender o LaunchPad barato é na verdade um investimento no futuro da empresa, nesse instante eles estão comprando sua alma! Como não sou nenhum menino, e como já vendi minha alma umas outras sete vezes, tratai logo de fazer o pedido pra conferir se era realmente verdade. Não é que é! Recentemente o meu novo brinquedinho chegou.Já trabalhei com MSP430 a alguns anos, mas na ocasião fiz um trabalho que exigia pouco do chip. Pra aprender desenvolver com ele, tratei logo de reinstalar meu IAR (www.iar.com), e como aplicação, construir uma coisa que eu estava precisando, um afinador de violão.Paremos. Após o próximo parágrafo continuaremos. O conceito de sistema embarcado muda de acordo com a fonte a qual você está lendo. Ao contrário do que muita gente pensa, esses sistemas não são aqueles usados em aplicações navais (não somente). Eu particularmente adoto que um sistema embarcado é aquele que possui uma “inteligência”, que pode ser um microcontrolador, FPGA, CLP, etc., dedicada ao dispositivo. Em muitos casos, por não estarem ligados a uma tomada, esses sistemas precisam estar preparados para trabalharem com baixo consumo de energia.Um afinador de violão bem simples pode ser construído usando o kit da TI,  explorando bastante o MSP430 na sua característica que mais o promove: Ultra-Low Power Microcontroller! Que na língua de gente seria microcontrolador que consome pouquíssima energia. Não se engane achando que trata-se de uma tecnologia nova de desenvolvimento que a TI domina. O que torna o MSP430 um micro de baixo consumo é na verdade um conceito possibilitado pelas suas várias fontes de clock e pelos vários modos de baixo consumo. Digo que é um conceito, pois o consumo dependerá diretamente do programador. Pra fazer o bicho consumir pouca energia, o macete é usar e abusar das rotinas de interrupção. Quando uma tarefa deve ser executada, o micro acorda, a executa e volta a dormir. Só pra você ter uma ideia, no LPM4 (Low Power Mode 4), o chip consome menos do que 0.1 micro amperes.Bom, mas não quero e nem estou apto a dar um curso de MSP430. Vamos ao projeto.Quando tocamos uma corda do violão, ouvimos seu som, mas não se consegue vê-la, pelo menos não parada em um só lugar. Agora imagine que após tocar a corda, você a ilumine com uma luz estroboscópica (http://pt.wikipedia.org/wiki/Estrobosc%C3%B3pio) de mesma frequência. O que ocorrerá é que se a corda estiver afinada, poder-se-á vê-la como se estivesse parada. Essa é física de nosso afinador. No vídeo abaixo você poderá ver um afinador desse tipo, versão comercial.Mas na prática, como fazer isso? O LaunchPad vem com dois leds que podem ser aproveitados como fonte de luz, a luz estroboscópica. Podemos usar o único timer do microcontrolador como referencia de tempo para ligar e desligar os leds. Digo os leds porque na prática usa-se duas fontes estroboscópicas, ambas com a mesma frequência, porém defasadas entre si de 180 graus . Isso é interessante para estabelecermos uma referência precisa, se a corda não estiver afinada, ver-se-á duas marcas movendo-se em sentidos opostos, mas quando for alcançado a afinação, estas marcas aparecerão paradas uma em relação a outra.Como a maioria dos violões tem seis cordas, o circuito deve ter um mecanismo que o permita permutar para a próxima corda. Isso pode ser feito com o push button que também já está embarcado no kit. Em suma, para fazer o afinador você não precisa de nada além do LaunchPad.O próximo passo é fazer o firmware que possibilitará manter nosso instrumento afinado, e assim evitar vexame perante a vizinhança.Acredito que esse negócio de fazer software é bem particular, cada um tem uma forma e em se tratando de software pra microcontroladores, as particularidades são ainda maiores. De qualquer forma, mando o que fiz pra você já gravar no seu MSP430G2211/2231 e ver que o negócio funciona mesmo(código).Como tal projeto foi completamente concebido nesse fim de semana prolongado, e como estou em fase de aprendizado com o MSP430, o firmware tem algumas linhas de código que podem ser desnecessárias e também não o testei profundamente, bugs podem existir. Por tudo isso, peço encarecidamente que me mandem dicas para aperfeiçoar o desempenho do aparato, bem como instruções para melhor programar o chip da Texas.