Você está na página 1de 70

UNIVERSIDADE DE PASSO FUNDO

FACULDADE DE ENGENHARIA E ARQUITETURA


CURSO DE ENGENHARIA ELTRICA

CONTROLADOR MIDI EM FORMA DE GUITARRA

Disciplina: Projeto de Graduao


Professor: Dr. Paulo Srgio Corra Molina
Acadmico: Julio Chagas Pitthan

Passo Fundo, janeiro de 2010.

Julio Chagas Pitthan

Controlador MIDI em forma de guitarra

Projeto de graduao apresentado ao curso de


Engenharia Eltrica com nfase em Eletrnica
da Faculdade de Engenharia e Arquitetura, da
Universidade de Passo Fundo, como requisito
parcial para obteno do ttulo de Engenheiro
Eletricista com nfase em Eletrnica, sob
orientao do Professor Dr. Paulo Srgio
Corra Molina.

Passo Fundo
2010
2

Julio Chagas Pitthan

Controlador MIDI em forma de guitarra

Banca Examinadora:

Prof. Doutor Paulo Srgio Corra Molina UPF Orientador

Prof. Mestre Adriano Lus Toazza UPF Examinador

Professora Dra. Blanca Maquera Sosa UPF Examinadora

Passo Fundo
2010

Dedico a realizao deste projeto a meus


pais, Julio (in memoriam) e Isabel, que
sempre me apoiaram e encorajaram, com
carinho e ateno. Dedico tambm ao
professor Paulo Srgio Corra Molina,
no s pelos ensinamentos durante o
curso, mas tambm por acreditar
neste projeto. E principalmente a quem
no acredita na minha capacidade e tenta
me fazer desistir, esses sim me
incentivam mais do que qualquer um.

"As pessoas existem e temos que aprender a lidar com elas diante de cada situao."
-- Julio Chagas Pitthan
4

Agradecimentos
Agradeo a Deus pela vida, aos familiares pelo apoio inclusive financeiro, e ajuda
nas dificuldades. Aos amigos, que mesmo longe me apiam e incentivam. Aos professores
que me transmitiram conhecimentos para minha formao acadmica e os professores dos
ensinos tcnico, mdio, fundamental, pr-escola e jardim de infncia. Aos professores Paulo,
orientador deste trabalho por acreditar na minha capacidade, Adriano, por me ajudar durante o
projeto com dicas e material e Blanca pela cobrana, amizade e ensinamentos. Aos meus
colegas da Eng. Biomdica do HC pelo apoio, os amigos Anselmo Pires, Cleciane Rosato,
David Povala, Flvio Helbling, Marcos dos Santos, Ramon Barreto e Rodrigo de Marqui. Um
agradecimento especial aos colegas Amauri Balotin, Bruno Taglietti, Christiano Bouvi,
Guilherme Leso, Helder Marcon, Henrique Misturini, Joan Levandoski, Joo Mossinni,
Marcelo Fantinatti, Marcelo da Silva, Mauren Zardo, Paulo Venturini, Pedro Bruxel, Ricardo
Frosi, Rodrigo Busato, Rmulo Mnica, Thales Marafon, Tiago Rosado e Vincius Ebone
com quem compartilhei esta caminhada, entre tantos outros com quem convivi neste perodo.

Agradeo em especial aos integrantes e amigos da minha banda Thunder Force pelo
apoio e incentivo principalmente na questo de aprender a no desistir dos objetivos traados
diante das dificuldades e tambm no gosto pela msica, especialmente o Metal, estilo
trabalhado e estruturado que nos estimula e agrega valores como msico e como pessoa.

Agradeo tambm aos amigos estudantes de Arquitetura e Urbanismo Matheus


Denardin e Fernando Alves por me ajudarem a construir o corpo do controlador e em especial
as pessoas que mais me incentivaram no direcionamento desse projeto, Itamir Sartori, por me
convencer a modificar os rumos do trabalho inicial para que meu violo eletrnico se
tornasse um controlador MIDI em forma de guitarra, Eduardo Kurtz, meu aluno de violo que
reclamava dos instrumentos como guitarra e violo serem muito grandes e Amanda Vilar
Lago, por me inspirar a acrescentar a preocupao de propiciar o uso de instrumentos
musicais e controladores MIDI por pessoas pequenas, pela tinta azul anil com que pintei o
controlador e por corrigir o resumo em ingls deste trabalho, alm do companheirismo
inclusive musical e dos momentos bons e difceis que compartilhamos.
5

RESUMO

Instrumentos musicais e seus acessrios eletrnicos esto hoje ganhando espao na


rotina diria da maior parte das bandas, profissionais da rea da msica e mesmo pessoas em
geral. Uma guitarra convencional deve ter suas cordas trocadas com freqncia, precisa ser
afinada, necessita de pedais de efeitos, pedaleiras e/ou simuladores e amplificadores. Para
facilitar a vida dos estudantes de guitarra, neste projeto de graduao desenvolveu-se o
prottipo de um controlador MIDI em forma de guitarra com sensores de toque no lugar das
cordas e com comunicao wireless-USB para o computador. O prottipo serve tambm para
msicos iniciantes aprenderem guitarra de forma divertida com o auxlio de um software
editor de partituras j existente como, por exemplo, o Guitar Pro. Isto enriquece a prtica do
desenvolvimento musical, principalmente das crianas que se interessam pelo controlador e
conseqentemente pela arte da msica, o que auxilia no crescimento da parte artstica dessas
pessoas.
Palavras-chave: msica, guitarra, MIDI, controlador MIDI.

ABSTRACT

Musical instruments and electronic accessories are now gaining ground in the daily
routine of most bands, professionals in the music and even people in general. A conventional
guitar must have exchanged their strings often, you need effects pedals and / or simulators and
amplifiers. To make life easier for students of guitar, this graduation project developed a
prototype of a MIDI controller shaped guitar with touch sensors instead of strings, and with
wireless communication USB to computer. The prototype also serves to aspiring musicians
learning guitar in a fun way with the help of a software publisher of existing scores, for
example, Guitar Pro. This enriches the practice of musical development, particularly children
who are interested in controlling and therefore the art of music, which helps the growth of the
artistic side of these people.

Key words: music, guitar, MIDI, MIDI controller.

LISTA DE ILUSTRAES

Figura 1.1 Guitarra Eltrica. [3] ............................................................................................16


Figura 1.2 Exemplo de Partitura. [4] .....................................................................................21
Figura 1.3 Exemplo de Tablatura. [5] ...................................................................................22
Figura 1.4 Esquema de uma tpica mensagem MIDI. [9]......................................................25
Figura 1.5 Conectores de passagem (THRU), de sada (OUT) e entrada (IN) MIDI. [7].....26
Figura 1.6 Teclado / Teclado. [8] ..........................................................................................27
Figura 1.7 Teclado / MIDI Thru. [8] .....................................................................................27
Figura 1.8 Teclado / Computador. [8] ...................................................................................28
Figura 1.9 Transmisso / Recepo. [8] ................................................................................28
Figura 1.10 Transmisso / Recepo em 16 canais. [8] ........................................................29
Figura 1.11 Placa de Toque. [10] ..........................................................................................31
Figura 1.12 Teclado de Membrana. [12] ...............................................................................32
Figura 2.1 Diagrama de Blocos do Sistema. .........................................................................43
Figura 2.2 ltima Casa da Primeira Placa de Toque Matricial. ............................................45
Figura 2.3 Teclado de Membrana..........................................................................................46
Figura 2.4 ltima Casa da Segunda Placa de Toque Matricial. ............................................47
Figura 2.5 Pares de LED Infravermelho/Fototransistor. .......................................................49
Figura 2.6 Circuito com o Microcontrolador.........................................................................50
Figura 2.7 Diagrama da Rotina Principal do Firmware.........................................................52
Figura 2.8 Mdulo XBee Pro e Microcontrolador. [15]........................................................54
Figura 2.9 Circuito Eltrico da Fonte de 5V. ........................................................................55
Figura 2.10 Placa CON-USBBEE (com cabo extensor). [15]...............................................55
Figura 2.11 FTDI Clean Utility V1.0. [16] ...........................................................................56
Figura 2.12 - X-CTU Aba Terminal. [16] ................................................................................56
Figura 2.13 - X-CTU. [16]........................................................................................................57
Figura 2.14 Bomes Mouse Keyboard...................................................................................57
Figura 2.15 Guitar Pro 5 v5.2. ...............................................................................................58
Figura 2.16 Corpo do Controlador no AutoCAD. .................................................................58
Figura 3.1 Controlador MIDI em Forma de Guitarra. ...........................................................59
Figura 3.2 Distncia Mnima. ................................................................................................60
Figura 3.3 Distncia Mxima. ...............................................................................................60
Figura 3.4 Conexes Destro ou Canhoto...............................................................................61
Figura 3.5 Introduo da msica Pour Elise de Beethoven...................................................61
8

LISTA DE TABELAS

Tabela 1.1 Descrio dos pinos dos mdulos XBee/XBee-Pro. [15]................................ 38


Tabela 1.2 Comandos dos mdulos XBee/XBee-Pro 1. [15]] .......................................... 39
Tabela 1.3 Comandos dos mdulos XBee/XBee-Pro 2. [15]............................................ 40
Tabela 1.4 Comandos dos mdulos XBee/XBee-Pro 3. [15]............................................ 40

LISTA DE ABREVIATURAS E SIGLAS

API: Application Programming Interface (Interface para Programao de Aplicao)

I/O: Input/Output (Entrada/Sada)

ISM: Industrial, Scientific and Medical (Mdica, Cientfica e Industrial)

LDR: Light Dependent Resistor (Resistor Dependente de Luz)

MDF: Medium Density Fiberboard (Placa de Fibra de Madeira de Mdia Densidade)

MIDI: Musical Instrument Digital Interface (Interface Digital para Instrumentos


Musicais)

RF: Radio Fequency (Freqncia de Rdio)

SMF: Standard MIDI Files (Arquivos MIDI Padro)

UART: Universal Asyncrhronous Receiver Transmiter (Transmisso e Recepo


Assncrona Universal)

USB: Universal Serial Bus (Comunicao Serial Universal)

10

SUMRIO
INTRODUO.............................................................................................................................13
1.

Estudo Terico.......................................................................................................................14
1.1

Teoria Fsico-Musical...............................................................................................14

1.2

Guitarra Eltrica .......................................................................................................16

1.2.1

Brao.....................................................................................................................17

1.2.2

Mo e Tarrachas ...................................................................................................17

1.2.3

Pestana ..................................................................................................................18

1.2.4

Escala....................................................................................................................18

1.2.5

Alavanca ...............................................................................................................18

1.2.6

Trastes...................................................................................................................19

1.2.7

Encordoamento.....................................................................................................19

1.3

Partitura ....................................................................................................................20

1.4

Tablatura...................................................................................................................21

1.5

Editores de Partitura .................................................................................................22

1.6

MIDI .........................................................................................................................24

1.6.1

Protocolo MIDI ....................................................................................................24

1.6.2

Mensagens MIDI ..................................................................................................24

1.6.2.1

Transmisso das Mensagens MIDI.......................................................................25

1.6.2.2

Controladores .......................................................................................................26

1.6.3

A Conexo MIDI ..................................................................................................26

1.6.3.1

Tipos de Conexo .................................................................................................27

1.6.4

Os canais MIDI.....................................................................................................28

1.6.4.1

Sintetizadores Multitimbrais.................................................................................29

1.6.5

Standard MIDI Files .............................................................................................30

1.6.6

Limitaes do MIDI .............................................................................................30

1.7

Placa de Toque..........................................................................................................31

1.8

Teclado de Membrana ..............................................................................................32

1.9

LDR ..........................................................................................................................33

1.10

Fotodiodos ................................................................................................................33
11

2.

1.11

Fototransistores.........................................................................................................34

1.12

Mdulos ZigBee/XBee .............................................................................................35

Desenvolvimento do Sistema ................................................................................................43


2.1 Sensores de Toque ..........................................................................................................44
2.1.1 Primeira Placa de Toque Matricial ..............................................................................44
2.1.2 Teclado de Membrana .................................................................................................45
2.1.3 Segunda Placa de Toque Matricial ..............................................................................47
2.1.4 Teste com LDR............................................................................................................48
2.1.5 Pares LED/Fototransistor ............................................................................................48
2.2 Microcontrolador e Firmware.........................................................................................49
2.3 Mdulo Transmissor.......................................................................................................54
2.4 Fonte de Alimentao.....................................................................................................54
2.5 Mdulo Receptor ............................................................................................................55
2.6 Computador ....................................................................................................................55
2.6.1 Softwares .....................................................................................................................57
2.7 Corpo do Controlador.....................................................................................................58

3.

Resultados Obtidos................................................................................................................59

CONSIDERAES FINAIS ........................................................................................................62


REFERNCIAS BIBLIOGRFICAS ..........................................................................................63
ANEXO I FIRMWARE DO CONTROLADOR .......................................................................64
ANEXO II FOTOS DO CORPO E DO CONTROLADOR PRONTO .....................................70

12

INTRODUO

O protocolo de comunicao MIDI principalmente utilizado no mundo da msica,


em diversas aplicaes como, por exemplo, em estdios de gravao de udio, em
apresentaes de bandas e artistas de diversos estilos musicais, em aulas de vrios tipos de
instrumentos e tambm por pessoas em geral. O ponto forte desse tipo de comunicao a
padronizao de hardware e software envolvidos na mesma, que permite que um equipamento
produzido por um fabricante possa se comunicar com vrios outros de todas as marcas
diferentes que utilizam o mesmo padro, sem necessidade de conversores e adaptadores, que
encareceriam essa troca de dados.

O controlador MIDI, que o dispositivo que envia as informaes de como e qual nota
deve ser executada, pode ficar relativamente longe do equipamento que ir executar o som
desejado. Neste projeto de graduao foi projetado e construdo um prottipo de controlador
MIDI prevendo a extino do gasto na troca de cordas, diminuio de volume e peso em
comparao com uma guitarra MIDI comum, que se difere da guitarra convencional pelo uso
de captadores MIDI. Este trabalho tambm incentiva o aprendizado da msica com a
utilizao de um editor de partituras j existente como, por exemplo, o Guitar Pro. O prottipo
composto por sensores tteis que fazem o papel de brao da guitarra e outros que
detectam qual corda foi tocada, microcontrolador, para processar as informaes referentes
s notas, que so executados por um microcomputador. O envio de dados do
microprocessador ao microcomputador se d via mdulos transceiver wireless - USB.

No primeiro captulo temos um estudo terico a respeito dos temas envolvidos neste
projeto, no segundo captulo abordado o desenvolvimento do sistema e do prottipo
confeccionado, e no terceiro captulo encontramos os resultados obtidos com esse trabalho.

13

1. Estudo Terico

1.1 Teoria Fsico-Musical

1.1.1

Srie Harmnica

Em fsica, srie harmnica o conjunto de ondas composto da freqncia


fundamental e seus mltiplos inteiros, resultado da vibrao de um oscilador harmnico como
pndulos, corpos rotativos (motores e geradores eltricos) e maior parte dos corpos produtores
de som dos instrumentos musicais. As principais aplicaes prticas de seu estudo esto
na msica e na anlise de espectros eletromagnticos, como ondas de rdio e sistemas
de corrente alternada. Em matemtica, refere-se a uma srie infinita. Tambm podem ser
utilizadas as transformadas de Fourier e as sries de Fourier para estudar este fenmeno. [1]

1.1.2

Histria

Muitas civilizaes perceberam que um corpo em vibrao produz sons em diferentes


freqncias. Os gregos h mais de seis mil anos estudavam este fenmeno atravs de um
instrumento experimental, o monocrdio. Os textos mais antigos sobre o assunto foram
escritos pelo filsofo e matemtico grego, Pitgoras. Na mesma poca, os chineses realizavam
pesquisas com harmnicos em flautas. [1]

14

Pitgoras percebeu que ao colocar uma corda em vibrao ela no vibra apenas em sua
extenso total, mas forma uma srie de ns, que a divide em sees menores, os ventres, que
vibram em freqncias mais altas que a fundamental. Se o monocrdio for longo o suficiente,
estes so visveis. Estes ns se formam em pontos que dividem a corda em duas, trs partes
iguais e assim sucessivamente. Em uma corda real se sobrepem, gerando um desenho
complexo, semelhante forma de onda do instrumento. Se colocarmos o dedo sobre um dos
ns, isso provoca a diviso da corda em sees menores e torna os ventres mais visveis. Esta
experincia pode ser feita com um violo, ao pousar um dedo sobre o 12 traste e dedilhar a
corda. Isso divide a corda em duas sees iguais e permite ver dois ventres distintos em
vibrao. [1]

Pela relao entre os comprimentos das sees e as freqncias produzidas por cada
uma das subdivises, conclui-se que a corda soa simultaneamente, na freqncia fundamental
(F) e em todas as mltiplas inteiras (2F, 3F, 4F, etc.) onde cada uma um harmnico.
A altura da nota produzida pela corda determinada pela freqncia fundamental. As demais,
embora ouvidas, no

so percebidas

como alturas discretas,

mas como parte

do timbre caracterstico da corda. [1]

Devido limitao da elasticidade da corda, os primeiros harmnicos soam com


maior intensidade que os posteriores e exercem um papel mais importante na determinao da
forma de onda e no timbre do instrumento. O mesmo resultado pode ser obtido ao colocar
uma coluna de ar em vibrao, embora no seja possvel ver os ns e ventres da onda. [1]

O conhecimento da srie harmnica permitiu maior parte das civilizaes do mundo,


escolher, dentre todas as freqncias audveis, um conjunto reduzido de notas que soasse
agradvel ao ouvido. Pitgoras percebeu, por exemplo, que o segundo harmnico (a nota com
o dobro da freqncia da fundamental) soava como se fosse a mesma nota, apenas
mais aguda. Esta relao de freqncias (F/2F, ou 1/2 considerando os comprimentos das
cordas), a oitava, percebida como neutra (nem consonante nem dissonante). [1]
15

1.2 Guitarra Eltrica

um instrumento cordofone, onde o som produzido manualmente pela vibrao


das cordas e transformado em sinal eltrico devido ao de captadores magnticos. Os
sinais eltricos so amplificados e emitidos por um alto-falante que os converte em ondas
sonoras, ou so modificados antes de serem convertidos em som pelo alto-falante. Pela
potncia sonora e possibilidade de alterao eletrnica de diversas caractersticas de seu
timbre, as guitarras eltricas so utilizadas principalmente no heavy metal, rock, msica
pop, blues e jazz, podendo ser encontradas ainda em outros gneros musicais. [2]

A Figura 1.1 abaixo mostra uma guitarra eltrica com suas partes indicadas. [3]

1. Mo ou paleta
2. Pestana
3. Tarrachas ou Cravelhas
4. Trastes
5. Tirante ou Tensor (Alma)
6. Marcao
7. Brao
8. Trculo (Junta do Brao)
9. Corpo
10. Captadores
11. Potencimetros
12. Ponte
13. Escudo
14. Cordas
Figura 1.1 Guitarra Eltrica. [3]
16

1.2.1

Brao

O brao da guitarra (Figura 1.1) composto de uma barra macia e rgida de um tipo
de madeira diferente da utilizada no corpo, onde fixado. Madeiras de grande resistncia
trao so preferveis e uma das mais utilizadas o mogno. responsvel pela fixao de
uma das extremidades das cordas e para permitir a execuo das notas atravs da variao do
comprimento das mesmas. Fazem parte do brao: a mo, a pestana, a escala, os trastes e
alguns elementos decorativos (de madreprola, marfim ou bano) utilizados na marcao. [3]

O brao pode ser fixado ao corpo por parafusos. Em alguns casos, um tirante
utilizado para se opor curvatura provocada pela tenso das cordas. A fixao do brao
crtica para a afinao do instrumento, pois a variao no ngulo do brao em relao ao
corpo pode provocar variaes na altura das notas. Indesejvel na guitarra clssica, este efeito
pode ser usado para obter certas inflexes na altura (bends), sobretudo no blues. [3]

1.2.2

Mo e Tarrachas

A mo ou paleta responsvel pela fixao das tarrachas, usadas para afinar o


instrumento, fixada na extremidade do brao formando um pequeno ngulo para facilitar o
posicionamento das cordas sobre a pestana. Em geral feita da mesma madeira do brao e
entalhada com diversos motivos decorativos. A tarracha um mecanismo composto de um
eixo sobre o qual a corda enrolada e uma engrenagem que permite gir-lo com os dedos at
obter a tenso correta de cada corda. As engrenagens garantem uma relao de foras tal que
impea o afrouxamento das cordas durante a execuo. Na maior parte das guitarras h trs
tarrachas de cada lado da mo. Em algumas guitarras eltricas utilizada a configurao de
seis cravelhas em linha em um dos lados da mo. [3]

17

1.2.3

Pestana

A pestana uma pequena barra de osso, plstico ou madreprola, fixada entre o incio
do brao e a mo. Possui um pequeno sulco entalhado para passagem de cada corda que
permite o posicionamento correto das mesmas. Apia as cordas na extremidade do brao. o
ponto de origem do comprimento das cordas (traste zero). Hoje, em alguns modelos de
guitarras eltricas, h pestanas especiais que possuem travas, como parafusos, que impedem
que o instrumento seja desafinado na execuo de alavancadas (vibratos artificiais). [3]

1.2.4

Escala

Feita de uma madeira diferente do resto do brao, como bano, a escala a parte do
instrumento onde as cordas so apoiadas quando o msico quer divid-la. sobre ela que os
trastes so montados. Possui marcas em forma de crculo, losangos ou tringulos, incrustadas
por marchetaria que so de madreprola, marfim ou bano. s vezes so pintadas e servem
para ajudar o msico a identificar as casas na escala. Geralmente usada uma marca na 3, 5,
7, 9, 12, 15, 17, 19, 21 e 24 casas e duas marcas na 12, s vezes na 7 e na 24 casas. Em
algumas guitarras estas marcas podem ser luminosas, com LEDs ou fibras pticas. [3]

1.2.5

Alavanca

Parte da guitarra usada para efetuar um efeito chamado vibrato que consiste em alterar
a altura das notas de forma que elas transpassem a idia de uma onda fluindo, muito utilizado
em alguns ritmos agitados, porm principalmente usado no heavy metal e no rock. [3]

18

1.2.6

Trastes

Os trastes so pequenas barras (alpaca ou ligas de nquel) montadas na escala que


definem os pontos em que a corda deve ser dividida para obter cada nota. Quando o msico
encosta o dedo sobre a corda ela pousa sobre a escala e fica apoiada sobre o traste. O
comprimento vibrante da corda passa a ser aquele entre o traste e a ponte. [3]

Os trastes so montados para permitir que as guitarras tenham temperamento igual. A


razo entre as distncias de dois trastes consecutivos

= 1,059463, aplicada

sucessivamente a cada intervalo. As casas prximas pestana so mais largas que as prximas
ao corpo. O 12 traste divide a corda na metade e o 24 divide a corda em um quarto do
comprimento total. Cada doze trastes representam um intervalo de exatamente uma oitava. [3]

O comprimento vibrante da corda quando a corda pousa sobre o traste n dada pela
equao:

1.2.7

onde d o comprimento total da corda entre a ponte e a pestana. [3]

Encordoamento

O som da guitarra produzido pela vibrao das cordas de ao, tensionadas e


montadas de forma que vibrem livremente sem bater no instrumento. As mais finas usadas
para as notas mais agudas, so constitudas de um fio nico. As grossas so cabos de nylon,
de ao ou de seda envoltos por uma espiral de um fio fino feito de ao que permite maior
resistncia trao, estabilidade de afinao e flexibilidade do que seria possvel. [3]

As cordas so fixadas aos furos da ponte atravs de um n ou uma pequena esfera


fixada a uma de suas extremidades, que por ser mais larga que o furo no consegue passar por
ele, prendendo a corda. Em algumas guitarras as cordas passam por furos atravs do corpo do
instrumento e so fixadas na sua parte posterior. A altura da ponte importante para definir a
19

distncia entre as cordas e a escala, pois a afinao do instrumento pode sofrer variaes se a
distncia das cordas for muito grande. Cordas muito prximas da escala podem encostar-se
aos trastes ao vibrar, o que produz um rudo desagradvel (trastejamento). A outra
extremidade da corda passa sobre a pestana, depois enrolada em espiral sobre o eixo das
tarrachas. Como a ponte e a pestana so mais altas que o brao e o corpo do instrumento, as
cordas ficam estendidas e tensionadas entre essas duas peas e podem vibrar livremente
quando dedilhadas ou tangidas por uma palheta. [3]

As guitarras so construdas para serem tocadas com o brao na mo esquerda e o


corpo na direita onde os sulcos da pestana so dispostos de forma que a corda mais grossa
fique em cima e as mais finas embaixo. A distncia entre as cordas e o corpo maior para as
cordas graves do que para as mais finas para evitar o trastejamento. Quando a corda pousada
sobre a escala ela esticada. O aumento na tenso aumenta ligeiramente a afinao da nota.
Mesmo tnue esse efeito pode causar desafinaes em alguns acordes. [3]

Essas assimetrias obrigam a construo de verses diferentes para destros e canhotos.


Muitos msicos adaptam o instrumento para execuo invertida, outros viram os instrumentos
e tocam com tcnica espelhada, onde os bordes, geralmente tocados pelo polegar precisam
ser tocados pelo indicador. Outros, como Jimi Hendrix fazem o encordoamento invertido em
uma guitarra normal, o que pode levar a pequenas falhas de afinao. Estilos como o blues,
o rock, o folk e o heavy metal, que utilizam muitos bends e vibratos no sofrem tanto com
esses problemas de afinao, mas a execuo erudita com as mos trocadas, sim. [3]

1.3 Partitura

Uma partitura uma representao escrita de msica padronizada mundialmente que


dispe de smbolos prprios (notas musicais) que se associam a sons. Na msica assistida
por computador, a partitura, ao contrrio das tablaturas, desempenha um papel crucial. [4]
20

Atravs de tecnologias como MIDI possvel traduzir uma partitura integralmente


para um formato legvel pelo computador ou instrumentos eletrnicos para posterior
reproduo. Uma partitura no exprime apenas um instrumento. Pode incluir vrios, cada um
designado por voz e mesmo a letra da msica. As partituras necessariamente incluem um ou
mais pentagramas, que como o nome diz, possuem cinco linhas como mostra a Figura 1.2. [4]

Figura 1.2 Exemplo de Partitura. [4]

Cada linha pode representar diferentes notas musicais, dependendo da clave. As claves
mais usuais so: Clave de Sol - a 2 linha de baixo para cima recebe a nota sol, Clave de F - a
4 linha recebe a nota f, Clave de D - a 3 linha (central) recebe a nota d. Pode ser
encontrada na 2 ou 4 linha. [4]

1.4 Tablatura

Enquanto a notao musical padro representa o ritmo e a durao de cada nota e a sua
altura relativa escala baseada em uma diviso em doze partes (tons) da oitava, a tablatura
mais operacional, indicando quando e onde colocar os dedos para gerar uma nota, de forma
que a altura denotada implicitamente. Os smbolos rtmicos da tablatura dizem quando
iniciar uma nota, mas quase nunca h uma indicao precisa de quanto tempo ela deve durar,
a durao fica a critrio do intrprete. Por isso comum dizer que a tablatura uma notao
prescritiva e a notao convencional (em pauta), descritiva. [5]
21

A tablatura para cordas pinadas baseada sobre uma representao em diagrama das
cordas e trastes do instrumento. A de teclado mostra as teclas do instrumento e a de flauta
mostra que furos devem ser mantidos abertos ou fechados. [5]

Neste esquema da Figura 1.3 no exemplo da introduo da msica "Stairway to


Heaven", da banda Led Zeppelin, as linhas representam as cordas da guitarra (da mais aguda
para a mais grave) e os nmeros a casa em que a corda deve ser pressionada e ferida. [5]

Figura 1.3 Exemplo de Tablatura. [5]

1.5 Editores de Partitura

Todos os editores de partitura permitem ao usurio inserir, editar e imprimir notao


musical, em variados graus de sofisticao. Variam de programas que escrevem uma simples
cano, peas para piano ou tablatura, at aqueles que podem lidar com a complexidade de
obras orquestrais, notao especial e editorao musical de alta qualidade. [6]

A msica pode ser inserida usando-se o mouse, teclado de computador e/ou


controlador MIDI. Muitos programas tambm permitem insero por meio de sistemas
de reconhecimento ptico de caracteres, ou ainda tocando ou cantando ao microfone. [6]

22

Muitos editores de partitura tambm permitem que a msica seja reproduzida via
MIDI ou, em alguns casos, por programas sintetizadores. Isso significa que os editores de
partitura tm algo em comum com os seqenciadores - muitos dos quais podem tambm, at
certo ponto, escrever notao musical - embora editores de partitura sejam usados
primordialmente para isso, enquanto os seqenciadores o so para gravar e tocar msica. [6]

Alguns editores permitem que o trabalho seja personalizado e ajustado de acordo com
as exigncias dos editores para produzir editorao musical de alta qualidade e adequ-lo ao
estilo especfico de cada estabelecimento. Outros permitem aos usurios publicarem seus
trabalhos na Internet, onde podem ser reproduzidos, transpostos e impressos, em certos casos,
cobrando-se uma taxa. [6]

Muitos editores oferecem outras funes como transposio, produo de partes


cavadas de uma partitura ou aplicao de transformaes como retrocesso. Alguns podem
criar automaticamente exerccios instrumentais e folhas de estudo. Alguns do suporte a
plugins, frequentemente desenvolvidos por usurios ou outras empresas. [6]

Quase todos os editores de partituras usam seus prprios formatos de arquivo. A fim
de compartilhar arquivos entre diferentes editores (ou com outros tipos de programas,
como seqenciadores), muitos editores podem tambm importar e exportar um ou mais
padres de formato de arquivo de intercmbio, como: [6]

SMF: suportado por quase todos os editores de partitura. [6]

MusicXML: tem se tornado o formato padro de intercmbio para notao. [6]

NIFF: formato de arquivo obsoleto que foi suportado por alguns editores. [6]

H formatos textuais de edio de partitura, como ABC e Tablatura ASCII. [6]

23

1.6 MIDI

1.6.1

Protocolo MIDI

MIDI um protocolo; mas o termo usado tambm para os diversos componentes do


sistema, como adaptadores, conectores, arquivos, cabos, etc. Diferente de outros formatos
(como WAV e MP3), o arquivo MIDI no contm udio, e sim instrues para produz-lo.
uma partitura digitalizada, que define os instrumentos, notas, timbres, ritmos, efeitos e outras
caractersticas utilizadas para um sintetizador gerar eventos musicais. At a dcada de 70, a
comunicao entre instrumentos musicais era impraticvel. Em 1983 o grupo dos fabricantes
de sintetizadores norte-americanos e japoneses mais conhecidos da poca desenvolveu o
MIDI que permite o envio de mensagens de controle entre instrumentos eletrnicos digitais ou
analgicos. Esse protocolo foi introduzido no mesmo ano, equipando o sintetizador Prophet600, fabricado pela Sequential Circuits (empresa que apresentou a proposta original, que foi
revisada e aprovada por todos). A partir da, a indstria eletrnica musical passou a ter um
padro de comunicao, que viabilizou o surgimento de inmeros instrumentos e
equipamentos compatveis entre si. A importncia de um padro como o MIDI enorme.
Antes disso, vrios fabricantes tentaram comercializar sistemas semelhantes, que s eram
compatveis com eles mesmos. Como o MIDI no tem "dono", qualquer empresa pode us-lo
em seus produtos, no tendo que pagar e a gratuidade do uso do MIDI foi um fator essencial
para a sua disseminao. [7] [8]
1.6.2

Mensagens MIDI

Cada mensagem MIDI , geralmente, composta por trs palavras e enviada/recebida


serialmente entre duas UART. Cada palavra composta de 10 bits, sendo uma comunicao
assncrona entre dispositivos, necessita ter dois bits de sinalizao de incio e final de palavra,
e como caracterstica da transmisso deve-se observar a manuteno do sinal em 1 entre
palavras e mensagens. Uma analogia usada comunicao de dois computadores via
modem. Em cada mensagem enviada transmitido primeiro o bit menos significativo. [7]

24

1.6.2.1 Transmisso das Mensagens MIDI

Para transmisso, cada mensagem MIDI recebida em paralelo por uma UART que
converte em um formato serial. Essa comunicao serial utilizada entre os dispositivos a
uma taxa de transmisso de 31.250 bits por segundo (31,25 kbps). O primeiro e o ltimo bit
so start e stop e so usados para sinalizar os dispositivos antes e aps o envio das
mensagens. Aqui, o valor do start bit 0 (zero) e o stop bit 1 (um). Dos oito bits
restantes (mensagem MIDI), o mais significativo um bit de status para informar se a
mensagem um comando ou um argumento para um comando. A interpretao das
mensagens MIDI que so trocadas pelos sintetizadores ou processadores de sinal realizada
por um driver especial, que pode ser um microprocessador independente ou ser parte do
sistema operacional da mquina. [7] [9]

Figura 1.4 Esquema de uma tpica mensagem MIDI. [9]

As interfaces de MIDI so utilizadas quando o computador utilizado no possui portas


MIDI acopladas. Existem trs tipos de interfaces MIDI: serial, paralela e multiline. Na serial
os bits so enviados um a um para a interface MIDI que fica responsvel por repassar a
mensagem aos outros dispositivos. A paralela envia todos os 10 bits de uma mensagem para a
interface MIDI. Por possuir esta caracterstica, as mensagens MIDI trafegam com alta
velocidade, deixando o processador livre para executar outras tarefas e os demais dispositivos
MIDI continuam recebendo as mensagens de forma serial. J a interface multiline, tambm
chamada multiport, conecta o computador a diversas linhas MIDI independentes. Cada linha
pode ser abstrada como uma rede de 16 canais MIDI que possibilita ao usurio usar mais do
que as 16 portas MIDI definidas pelo protocolo. [9]
25

1.6.2.2 Controladores

Controladores so dispositivos que geram mensagens MIDI. [7]

1.6.3

A Conexo MIDI

Uma das maiores preocupaes dos idealizadores do MIDI, foi de sua incluso no
produzir um aumento no custo de fabricao que foi conseguido devido aos circuitos de
interfaceamento, e s facilidades para o usurio interconectar seus equipamentos. O MIDI usa
um cabo de udio blindado com dois condutores com conectores do tipo DIN comuns, de
cinco pinos ("plug Philips"). A transmisso de dados MIDI se d de forma unidirecional e
designamos os instrumentos como "transmissor" ou "mestre" aquele de onde a informao sai
e "receptor" ou "escravo" aquele aonde a informao chega. Pode-se operar o MIDI em modo
bidirecional, de forma que os equipamentos tanto recebem quanto transmitem informaes.
Os instrumentos MIDI possuem conexes apropriadas para as ligaes MIDI, que so MIDI
In, MIDI Out e MIDI Thru conforme Figura 1.5. A primeira serve para o instrumento receber
informaes; ela a entrada de dados para o instrumento receptor. A conexo MIDI Out,
serve para o instrumento transmitir informaes; ela a sada de dados para o instrumento
transmissor. A terceira conexo, que em alguns instrumentos pode no existir, uma sada de
dados serve para retransmitir para outros as informaes recebidas pelo instrumento, e serve
para fazer encadeamentos mltiplos de instrumentos. [8]

Figura 1.5 Conectores de passagem (THRU), de sada (OUT) e entrada (IN) MIDI. [7]
26

Nos circuitos eletrnicos de interfaceamento MIDI mesmo que o usurio faa a


conexo errada entre as conexes MIDI, os circuitos apenas no funcionam. Em um nico
cabo pode haver informaes simultneas para diversos instrumentos diferenciados,
conseguido pela canalizao das informaes, e se os canais de MIDI do transmissor e do
receptor no estiverem ajustados adequadamente, a comunicao no poder acontecer. [8]

1.6.3.1 Tipos de Conexo


A forma mais simples e comum de interligao MIDI (Figura 1.6) a sada de um
instrumento

(um

teclado,

por

exemplo)

conectada

entrada

de

outro.

[8]

Figura 1.6 Teclado / Teclado. [8]

Se quisermos controlar dois instrumentos a partir de um teclado, poderemos encadelos usando a conexo MIDI Thru (Figura 1.7). As informaes geradas pelo instrumento
transmissor chegam ao primeiro teclado receptor e so usadas por ele e as mesmas
informaes passam atravs do teclado receptor e chegam entrada do mdulo sintetizador,
que usar as informaes, desde que o canal de recepo esteja selecionado corretamente. [8]

Figura 1.7 Teclado / MIDI Thru. [8]


27

O computador pode funcionar tanto como receptor (quando voc toca a msica no
teclado e o computador armazena as informaes MIDI), quanto como transmissor (quando
ele re-executa a msica no teclado, a partir das informaes MIDI armazenadas) (Figura 1.8).
H duas ligaes In - Out: uma do computador para o teclado; outra do teclado para o
computador. As interfaces MIDI dos computadores no possuem conexo MIDI Thru. [8]

Figura 1.8 Teclado / Computador. [8]


1.6.4

Os canais MIDI

Para transmitir informaes de notas e outros eventos musicais, o sistema MIDI dispe
de 16 canais. O funcionamento semelhante ao sistema de TV (Figura 1.9): se o transmissor
usa um canal MIDI (digamos, canal 1), o equipamento receptor s recebe as informaes se
estiver ajustado para o mesmo canal MIDI (no caso canal 1). Os equipamentos atuais possuem
ajustes separados de canal de transmisso e recepo, onde um sintetizador pode estar
configurado para transmitir MIDI pelo canal 2, e receber pelo canal 4. Como os instrumentos
mais modernos so "multitimbrais" podem receber em vrios canais simultneos,
independentemente do ajuste do seu canal de transmisso. [8]

Figura 1.9 Transmisso / Recepo. [8]


28

Ao se conectar dois ou mais equipamentos MIDI deve-se verificar se esto


configurados os canais de transmisso e recepo. O nmero mximo de canais de MIDI
"trafegando" pelo cabo 16. Nos estdios profissionais, para se ultrapassar esse limite, usamse equipamentos (ex: interfaces MIDI) com mltiplas portas de sada MIDI Out, de forma que
por cada uma so transmitidos simultaneamente 16 canais MIDI. Um sistema com oito sadas
pode trabalhar com at 128 canais de MIDI. Alguns canais so usados para controlar
processadores de efeitos, mesas de mixagem e outros recursos de estdio. [8]

1.6.4.1 Sintetizadores Multitimbrais

Num equipamento multitimbral como se existissem vrios sintetizadores embutidos


na mesma "caixa". Em geral, possuem 16 "partes timbrais", Figura 1.10, onde cada uma toca
um timbre (instrumento) diferente. O mesmo equipamento pode executar todo o arranjo de
uma msica (bateria, baixo, piano, cordas, sax, etc.). Cada parte timbral atua como um
instrumento "receptor", operando em seu prprio canal de recepo MIDI (o canal 10
reservado para bateria e percusso). Se duas partes timbrais estiverem configuradas para
receber pelo mesmo canal de MIDI, executaro juntas as mesmas notas. A multitimbralidade
viabilizou uma reduo muito grande de custo nos estdios MIDI, pois um sintetizador
multitimbral pode fazer sozinho o que antes s era possvel com vrios equipamentos
separados. [8]

Figura 1.10 Transmisso / Recepo em 16 canais. [8]


29

1.6.5

Standard MIDI Files

Apesar da especificao original do MIDI padronizar a linguagem para controle


musical, no descreveu padro para a formatao dos arquivos de dados. Tinham-se vrios
arquivos com dados MIDI em formatos diferentes que s eram interpretados pelos
dispositivos que os tinham gerado. Para resolver este impasse a comunidade MIDI
estabeleceu em 1988 a especificao chamada SMF. Os dispositivos continuam com seu
funcionamento interno especfico, porm a padronizao dos arquivos MIDI tornou tais
dispositivos mais portveis e possibilitou a troca de informaes musicais de maneira mais
fcil. A principal diferena entre os SMF e os arquivos que tinham apenas o dado bruto MIDI
que os dados MIDI nos SMFs possuem etiquetas de tempo. Cada mensagem vem com um
rtulo que pode ser de 8 ou 32 bits, especificando em que momento do pulso de clock ela
dever ser executada. [9]

1.6.6

Limitaes do MIDI

A limitao de largura de banda se d devido quantidade de dados de controle que


so necessrios durante a execuo de uma msica. A utilizao de vibrato em apenas uma
voz pode consumir praticamente toda a largura de banda MIDI. Algumas formaes de acorde
tambm podem parecer arpejos (execuo sucessiva das notas de um acorde) ao invs de um
som harmnico, mais especificamente quando o tempo das notas que formam o acorde
muito pequeno. Isto se deve caracterstica seqencial de MIDI, em que as notas so enviadas
em mensagens diferentes, uma de cada vez. Cada via de comunicao MIDI exige seu prprio
canal, onde a comunicao em um nico cabo no full-duplex. Na comunicao entre dois
dispositivos MIDI em duas vias, so necessrios dois cabos. A quantidade de cabos duas
vezes igual quantidade de dispositivos e em um ambiente como um estdio isso pode se
tornar uma barreira. As mensagens MIDI no especificam nada em relao ao timbre que a
nota que est sendo enviada ter. O resultado que uma mesma nota pode soar como um
baixo acstico em um sintetizador ou como um piano em outro. Isto se deve ao fato de MIDI
ser um protocolo de representao de msica que procura ser independente do dispositivo que
30

ir utiliz-lo. Da mesma forma, a representao de pitch (alterao na freqncia da nota) de


MIDI fraca. Apesar de possibilitar a utilizao de bends em notas, o MIDI aplica a
mensagem de bend a todas as notas do canal MIDI para onde a mensagem foi enviada, tirando
um pouco da flexibilidade do protocolo. [9]

1.7 Placa de Toque


As trilhas de uma Placa de Toque, Figura 1.11, so intercaladas e isoladas como dois
garfos com os dentes encaixados um dentro do outro, sem se encostarem. Quando o usurio
tocar em qualquer parte da placa com o dedo, ambas as trilhas de circuito impresso so
tocadas ao mesmo tempo e haver uma diminuio da resistncia entre as duas trilhas em
virtude da pele do dedo apresentar uma resistncia. [10]

Figura 1.11 Placa de Toque. [10]

A resistncia entre as duas trilhas na placa de toque (quando no tocada) de


milhes de Ohms. Quando tocada, a resistncia se reduz para aproximadamente 100k.
Quando o dedo atua com mais firmeza a resistncia diminui para valores entre 30k e 50k.
Isto acontece porque o dedo toca as trilhas com uma maior rea de contato e mais umidade
sai dos poros diminuindo a resistncia. Esta placa pode ser usada como um sensor de toque
ou de chuva. Quando a placa de toque conectada ao circuito, a mudana da resistncia
sentida pelo mesmo atravs da corrente que por ela passa. O padro de garfo intercalado serve
para multiplicar a rea de contato do dedo, que se comporta como diversos resistores em
paralelo, diminuindo a resistncia efetiva do circuito. [10]

31

O tipo de contato utilizado na placa de toque foi uma das formas utilizadas como
interruptor de toque em diversos dispositivos eletrnicos em lugar de um boto de empurrar.
Porm se tornou menos utilizado pela diminuio da confiabilidade de seu funcionamento,
pois em condies de extremos como pele muito seca, excesso de leo, manteiga ou outros
resduos ou mesmo a utilizao de luvas impedia os circuitos de funcionarem adequadamente,
por isso as placas de toque foram substitudas por interruptores de membrana na maioria dos
dispositivos eletrnicos j que as membranas requerem apenas uma leve presso e nenhuma
sujeira pode entrar no interruptor que est lacrado. [10]

1.8 Teclado de Membrana


um conjunto de teclas no mveis, com contornos e smbolos impressos em
superfcie plana e flexvel (Figura 1.12), e contatos eltricos entre a superfcie e os circuitos
subjacentes quando pontos-chave so pressionados. Foram usados em alguns computadores
do incio da dcada de 1980 e desde ento so usados em dispositivos eletrnicos, barato
quando produzido em massa, de fcil manuteno, longa vida til e mais resistente sujeira e
lquidos derramados do que quaisquer outros teclados. utilizado em equipamentos
hospitalares, industriais e outros dispositivos que exijam limpeza fcil e constante. Devido ao
baixo retorno tctil, muitas pessoas sentem dificuldade em digitar nesses teclados. Foi
apresentado como alternativa os "teclados chiclete" que permitem que teclas individuais
sejam sentidas em algum grau, mas no foram bem aceitos no mercado como se esperava e
seu uso ficou restrito eletrnica de baixo custo (como controles remotos). [11]

Figura 1.12 Teclado de Membrana. [12]


32

1.9 LDR

LDR um transdutor (sensor) que converte a luz em valores de resistncia. feito de


sulfeto de cdmio (CdS) ou seleneto de cdmio (CdSe). Sua resistncia diminui (resistncia
mnima, 100) quando a luz que incide sobre ele aumenta, e quando a luz diminui, a
resistncia no LDR aumenta (resistncia mxima, 1M) (Figura 1.13). [13]

Um LDR sensvel das faixas: Infravermelho (IR), Luz visvel e Ultravioleta (UV),
pode ser soldado de maneira simples e muito frequentemente utilizado nas chamadas
fotoclulas que controlam o acendimento de poste de iluminao e luzes em residncias.
Tambm utilizado em sensores foto-eltricos assim como fotodiodos. [13]

Figura 1.13 LDR. [13]

1.10

Fotodiodos

Um fotodiodo um dispositivo que converte a luz recebida em uma determinada


quantidade de corrente eltrica. A corrente reversa e o fluxo luminoso variam quase que
linearmente, onde um aumento na intensidade luminosa resultar em um aumento semelhante
na corrente reversa. A corrente reversa essencialmente nula na ausncia de luz incidente.
Como os tempos de subida e de queda (parmetros de mudana de estado) so da ordem de
nanossegundos, o dispositivo pode ser usado na aplicao de contagem ou comutao de alta
velocidade. O germnio mais adequado para luz incidente na regio infravermelha,
abrangendo um espectro mais amplo de comprimentos de onda do que o silcio, apesar de sua
corrente negra maior. O nvel de corrente gerada pela luz incidente sobre um fotodiodo no
suficiente para ser usado em controle direto, sendo necessrio estgio de amplificao. [14]

33

1.11

Fototransistores

O fototransistor pode detectar a incidncia de luz e fornecer um ganho. Como o


transistor convencional, o fototransistor uma combinao de dois diodos de juno, porm,
associado ao efeito transistor aparece o efeito fotoeltrico. Em geral, possui apenas dois
terminais acessveis, o coletor e o emissor, sendo a base includa apenas para eventual
polarizao ou controle eltrico. Como nas outras clulas fotocondutivas, a incidncia de luz
(ftons) provoca o surgimento de lacunas na vizinhana da juno base-coletor. Esta tenso
conduz as lacunas para o emissor, enquanto os eltrons passam do emissor para a base, o que
provoca um aumento da corrente de base, o que implica numa variao da corrente de coletor
beta vezes maior (para Ib sendo a corrente da base e Ic a do coletor, temos Ic = .Ib, onde
o ganho do transistor, sendo essa variao proporcional intensidade da luz incidente. [14]

Como a base est normalmente desconectada, a corrente que circula por ela depender
apenas do fluxo luminoso incidente. Na ausncia de luz, a corrente de base zero e o
fototransistor est cortado, resultando na tenso do coletor igual tenso de polarizao Vcc.
Quando h luz, a tenso no coletor ir diminuir devido ao aumento da corrente. A aplicao
mais usual a de um interruptor. Enquanto no h luz incidindo no fototransistor, no haver
uma corrente no emissor, e a tenso de sada ser zero, estando ele em corte. Com a
incidncia de luz, teremos uma corrente no emissor, provocando uma tenso igual IeRe. [14]

Com o aumento da temperatura em torno de 8 a 10 graus Celsius, a corrente Iceo


(corrente sem incidncia de luz) dobrar. Para elevadas temperaturas, essa corrente ter um
valor significativo em relao corrente total. Utilizando dois fototransistores compensamos
esse erro. Sua base sensvel luz, quando h presena da mesma o transistor conduz,
entretanto quando no h presena de luminosidade, o transistor fica cortado. Quando um
facho de luz apontado para o receptor, este conduz, logo a sada estar em nvel lgico "0".
No entanto, quando no h presena de luz, o receptor no est conduzindo, logo a sada
estar em nvel lgico "1". [14]

34

1.12

Mdulos ZigBee/XBee

A ZigBee permite comunicaes robustas e opera na freqncia ISM , sendo na


Europa de 868 MHz (1 canal), 915 MHz (10 canais) nos Estados Unidos e 2,4 GHz (16
canais) em outras partes do mundo, e no requerem licena para funcionamento. As Redes
ZigBee oferecem uma excelente imunidade contra interferncias, e a capacidade de hospedar
milhares de dispositivos numa Rede (mais que 65 mil), com taxas de transferncias de dados
variando entre 20kbps a 250kbps. O Protocolo ZigBee destinado a aplicaes industriais,
portanto, o fator velocidade no crtico numa implementao ZigBee. [15]

XBee:

XBee-Pro:

Performance

Performance

- Pout: 1 mW (0 dBm); [15]

- Pout: 60 mW (18 dBm); [15]

- Alcance ambientes internos/zonas

- Alcance em ambientes internos/zonas

urbanas: 30m; [15]


- Alcance de RF em linha visvel para
ambientes externos: 100m; [15]
- Sensibilidade receptor: -92 dBm; [15]

Alimentao

urbanas: 100m; [15]


- Alcance de RF em linha visvel para
ambientes externos: 1,6Km; [15]
- Sensibilidade receptor: -100 dBm; [15]

Alimentao

- Itx (tpico): 45 mA @ 3.3 V; [15]

- Itx (tpico): 215 mA @ 3.3 V; [15]

- Irx (tpico): 50 mA @ 3.3 V; [15]

- Irx (tpico): 55 mA @ 3.3 V; [15]

Propriedades fsicas:

- Dimenses: (2.438cm x 2.761cm); [15]

Propriedades fsicas

- Dimenses: (2.438cm x 3.294cm); [15]

35

XBee e XBee-Pro:
Alimentao
Performance
- Tenso de alimentao: 2.8 3.4v;
- Freq.operao: ISM 2.4GHz; [15]

- Corrente Power-down Sleep: 10 A; [15]

- Taxa de dados de RF: 250k bps; [15]


- Taxa da Interface: 115.kbps; [15]

Propriedades fsicas

- Peso: 0.10 oz (3g); [15]


- Temp. de operao: -40 to 85 C; [15]
- Opes de antena: Conector U.FL RF,
Chip ou Chicote (whip); [15]

Rede

- Tipo de espalhamento espectral: DSSS (Direct Sequence Spread Spectrum); [15]


- Manipulao de erro: Retransmite novamente & reconhecimento; [15]
- Topologia de Rede: (Par-a-par), ponto-a-ponto, ponto-a-multiponto e malha; [15]
- Endereamento: 65 mil endereos de rede disponveis para cada canal; [15]
- Opes de filtros: PAN ID, canais e endereos; [15]
- Criptografia: 128-bit AES; [15]
- Nmero de canais selecionveis via software: 16 canais seqncia direta; [15]

Geral

- Faixa de freqncia: 2,4000 2,4835 GHz; [15]

Os mdulos XBee/XBee-Pro operam em dois modos diferentes: [15]

36

Modo Transparente

Os dados recebidos da UART pelo pino DI (RX) so colocados na fila para transmisso
via RF. Os dados recebidos do canal de RF so transmitidos atravs do pino DO (TX) e
recebidos como uma comunicao Serial RS232 padro (Figura 1.14). [15]

Figura 1.14 Frame de dado padro RS232 (8-N-1). [15]


Modo API

baseado em frame e assim estende o nvel para o qual uma aplicao de Host pode
interagir com as capacidades de Rede do mdulo. No modo API (Figura 1.15) os dados
transmitidos e recebidos esto contidos em frames, que definem operaes ou eventos dentro
do mdulo. Atravs desse modo de operao possvel um determinado mdulo enviar
endereo fonte, endereo destino, nome de um determinado n, sinal RSSI, estado, e muito
mais. [15]

Figura 1.15 Estrutura do Frame de dados no modo API. [15]

Na Tabela 1.1 abaixo est descrito o significado de cada pino dos mdulos
XBee/XBee-pro. [15]
37

Tabela 1.1 - Descrio dos pinos dos mdulos XBee/XBee-Pro. [15]


Pino
Nome
#
1
VCC
2
DOUT
3 DIN /
4
DO8*
5

Direo

Descrio

Sada
Entrada
Sada

Alimentao 3,3v
Sada de dados da UART
Entrada de dados da UART
Sada digital 8
Inicializa mdulo (um pulso nvel 0 de
pelo menos 200ms)
Sada do PWM 0 / Indicador de Fora do
sinal de RF (RX)
Sada do PWM 1
Ainda no tem uma funo definida
(futura implementao)

Entrada

PWM0 / RSSI

Sada

PWM1

Sada

(Reservado)

10

/
SLEEP_IRQ /
DI8
GND

11

AD4 / DIO4

Entrada/Sada

12

/ DIO7

Entrada/Sada

13

ON / SLEEP

Sada

14

VREF

Entrada

15

Associao /
AD5 / DIO5

Entrada/Sada

16

/ AD6 /
DIO6

Entrada/Sada

17

AD3 / DIO3

Entrada/Sada

18

AD2 / DIO2

Entrada/Sada

19

AD1 / DIO1

Entrada/Sada

20

AD0 /DIO0

Entrada/Sada

Entrada
-

Linha de Controle da Funo Sleep ou


Entrada digital 8
Terra
S Entrada Analgica 4 ou Entrada/Sada
Digital 4
Controle de Fluxo CTS ou Entrada/Sada
Digital 7
Indicador de Estado do Mdulo
Voltagem de Referncia para as Entradas
A/D
Indicador de Associao, s Entrada
Analgica 5 ou Entrada/Sada Digital 5
Controle de Fluxo RTS, s Entrada
Analgica 6 ou
Entrada/Sada Digital 6
S Entrada Analgica 3 ou Entrada/Sada
Digital 3
S Entrada Analgica 2 ou Entrada/Sada
Digital 2
S Entrada Analgica 1 ou Entrada/Sada
Digital 1
S Entrada Analgica 0 ou Entrada/Sada
Digital 0

Os mdulos XBee/XBee-Pro so configurados atravs de comandos AT (Figura


1.16), parecidos com os usados para configurar modems. Nos mdulos XBee/XBee-Pro Srie
1 os comandos ATs servem para configurar ou ler parmetros no mdulo local. J na Srie 2
possvel enviar comandos ATs remotamente de um mdulo para outro. Para configurar um
XBee/XBee-Pro, precisamos usar somente os pinos 2-TX, 3-RX e o GND do mdulo. Com a
placa CON-USBBEE possvel configurar um mdulo atravs do programa X-CTU, tanto a
partir da Aba "Terminal", digitando os comandos manualmente, como tambm atravs da Aba
38

"Modem Configuration", ou mesmo atravs de um programa como o HyperTerminal do


Windows ou outro similar. Para fazer o mdulo XBee/XBee-Pro entrar no modo comando,
digite trs caracteres "+++" (no pressione a tecla <ENTER>) na janela "Terminal" do XCTU ou no HyperTerminal do windows. Se o mdulo recebeu o comando corretamente, ele
confirma enviando a mensagem "OK". Aps o OK o mdulo est apto para receber comandos
de escrita ou leitura. [15]

Figura 1.16 Formato para enviar comandos ATs ao mdulo XBee/XBee-Pro. [15]

<CR> = (Retorno de carro) - um byte de valor 13(Dec) ou 0D(Hex). [15]

Tabela 1.2 Comandos dos mdulos XBee/XBee-Pro 1. [15]


Comando digitado

Resposta do
XBee/XBee-Pro

Significado

Faz o mdulo XBee/XBee-Pro entrar no modo comando (os


caracteres "+++" devem ser digitados num intervalo de 1 segundo).
Aps o OK, se nenhum comando for digitado num intervalo de +/- 10
segundos, o mdulo volta ao estado idle (pronto para transmitir ou
receber).
Altera o endereo destino (DL) do mdulo local para 5001.
L o endereo destino (DL) do mdulo local.
Altera o endereo fonte (MY) do mdulo local para 5000.
L o endereo fonte (MY) do mdulo local.

+++

OK<CR>

ATDL5001<ENTER>
ATDL<ENTER>
ATMY5000<ENTER>
ATMY<ENTER>

OK<CR>
5001<CR>
OK<CR>
5000<CR>

ATWR<ENTER>

OK<CR>

Grava as modificaes efetuadas, na memria no voltil (Flash) do


mdulo.

ATCN<ENTER>

OK<CR>

Fecha o modo comando e volta ao estado idle (pronto para


transmitir ou receber).

39

Observao:
*Se o comando WR no for executado, as modificaes permanecero na
memria do mdulo, somente enquanto o mesmo estiver recebendo alimentao da fonte de
energia eltrica; [15]
*Todos os parmetros numricos de configurao do mdulo devem ser entrados
em hexadecimal (no digitando o prefixo 0x); [15]
possvel enviar comandos para configurar o mdulo em uma nica linha: [15]

Tabela 1.3 Comandos dos mdulos XBee/XBee-Pro 2. [15]


Comando digitado

Resposta do XBee/XBeePro

ATDL5001,MY5000,WR,CN<ENTER>

OK, OK, OK<CR>

ATNI Sensor_Temp_01<ENTER>

OK<CR>

ATNI<ENTER>

Sensor_Temp_01<CR>

ATVR<ENTER>

10C0<CR>

Retorna a verso do firmware gravado no


mdulo XBee/XBee-Pro.

ATHV<ENTER>

180B<CR>

Retorna a verso do hardware do mdulo


XBee/XBee-Pro.

Significado
Altera o endereo DL para 5001, o MY
para 5000, grava os dados na memria
Flash e sai do modo comando.
D um nome para o mdulo XBee-XBeePro - "Sensor_Temp_01".
Pode usar at 20 caracteres ASCII para
nomear o mdulo.
Retorna o nome do mdulo XBee/XBeePro.

Velocidades vlidas para a interface serial de um mdulo XBee/XBee-Pro: [15]


1200bps; 2400bps; 4800bps; 9600bps; 19200bps; 38400bps; 57600bps; 115200bps; [15]
Tabela 1.4 Comandos dos mdulos XBee/XBee-Pro 3. [15]
Comando digitado
ATBD4<ENTER>
ATWR<ENTER>
ATCN<ENTER>

Resposta do
XBee/XBee-Pro
OK<CR>
OK<CR>
OK<CR>

Significado
Muda a velocidade do mdulo para
trabalhar com 19200bps, e salva
mudana na memria Flash.

40

Observao:

Aps alterar a velocidade, preciso mudar a velocidade da interface Serial do XCTU, na Aba "PC Settings", para que possamos nos comunicar com ele. [15]
Se as configuraes a serem feitas forem muitas, o mtodo mais fcil alterar os
parmetros atravs da Aba "Modem Configuration" do programa X-CTU, com os passos
abaixo: [15]
1) Conecte um mdulo XBee ou XBee-Pro atravs de uma interface com a porta RS232 ou
USB (placa CON-USBBEE Rogercom) do PC; [15]
2) Execute o programa X-CTU. Na Aba "PC-Settings" selecione a COM associada interface
onde o XBee/XBee-Pro est conectado; [15]
3) Clique na Aba "Modem Configuration"; [15]
4) Clique no boto "Read"; se no for possvel ler o mdulo por incompatibilidade da verso
do firmware, clique no boto "Download New Versions" ( preciso estar conectado
Internet). Aps a atualizao, feche o X-CTU e abra-o novamente. Repita todos os passos
anteriores. [15]
5) Se houve sucesso no passo anterior, modifique os parmetros que deseja e depois clique no
boto "Write" para gravar na memria Flash do mdulo XBee/XBee-Pro. [15]
Siga os passos abaixo para colocar segurana nos mdulos XBee/XBee-Pro. Para
esses exemplos atualize a verso do firmware com a 10C0. [15]
1) Conecte um mdulo XBee ou XBee-Pro atravs de uma interface com a porta RS232 ou
USB (placa CON-USBBEE Rogercom) do PC; [15]
2) Execute o programa X-CTU. Na Aba "PC-Settings" selecione a COM associada interface
onde o XBee/XBee-Pro est conectado; [15]
41

3) Clique na Aba "Modem Configuration"; [15]


4) Clique no boto "Read"; se no for possvel ler o mdulo, por incompatibilidade da verso
do firmware, clique no boto "Download New Versions" ( preciso estar conectado
Internet). Aps a atualizao, feche o X-CTU e abra-o novamente. Repita todos os passos
anteriores. [15]
5) Se houve sucesso no passo anterior, modifique os seguintes parmetros: [15]
EE: 1 (o parmetro 1 habilita a segurana no mdulo). [15]
KY: ABABABABABABABABABABABABABABABAB (so 16 bytes hexadecimal de
dois dgitos cada, ou seja, 8 x 16 = 128 bits de encriptao AES). [15]
A chave acima um exemplo, substitua a mesma por uma chave secreta, que s voc
conhea.
6) Clique no boto "Write" para gravar na memria Flash do mdulo XBee/XBee-Pro. [15]
7) Repita os passos acima para todos os mdulos que deseje que trabalhe de forma segura.
Somente os mdulos que tiverem a mesma chave sabero decodificar os dados recebidos. [15]
Nota:
Os mdulos que no fazem parte da Rede criptografada, s enxergam os dados a
seguir, que podem ser requisitados atravs do comando ND (Node Discover): [15]

MY - (endereo fonte do mdulo remoto); [15]


SH - (parte alta (32 bits) do nmero serial do mdulo remoto); [15]
SL - (parte baixa (32 bits) do nmero serial do mdulo remoto); [15]
DB - (Nvel do sinal recebido - RSSI). [15]
NI - (String contendo o nome do mdulo remoto, se nele constar). [15]

42

2. Desenvolvimento do Sistema

O sistema foi desenvolvido conforme o diagrama de blocos da Figura 2.1.

Figura 2.1 Diagrama de Blocos do Sistema.

A seguir cada um dos blocos explicado brevemente:

1.

Sensores de Toque: Substituem as cordas, recebendo do usurio a posio de cada


dedo no brao e no corpo do controlador, atuando na formao de notas e acordes.

2.

Microcontrolador: Recebe as informaes de nvel lgico provindas dos sensores de


toque, identifica a quais eventos as combinaes recebidas correspondem e envia
atravs do mdulo transmissor as informaes pertinentes ao computador.

3.

Mdulo Transmissor: Recebe as informaes de forma serial do microcontrolador e as


envia atravs de RF para o mdulo receptor.

4.

Fonte de Alimentao: Fornece energia para o funcionamento dos blocos 2 e 3.

5.

Mdulo Receptor: Recebe as informaes por RF do mdulo transmissor e as envia de


forma serial atravs da porta USB para o computador.
43

6.

Computador: Recebe as informaes de forma serial atravs da porta USB, e as


transforma em eventos MIDI (como comando nota pressionada e quais notas sero
tocadas), executando os respectivos sons atravs de um software compatvel.

7.

Corpo do Controlador: Feito em MDF, onde so acondicionados os itens de 1 a 4.

2.1 Sensores de Toque

Foram estudadas diversas alternativas de sensores de toque para este projeto, dentre
elas pode-se enfatizar trs opes principais para a utilizao da mo que compe notas e
acordes no brao do controlador: micro-chaves, placa de toque e teclado de membrana. Dentre
as trs, para uma das mos foram testadas duas placas de toque matriciais, confeccionadas
especialmente para este trabalho e foi feito um teclado de membrana. J para a mo que toca
as cordas virtuais testou-se o uso de LDRs e pares de LED-infravermelho/fototransistor,
que apresentaram melhor desempenho em relao ao anterior.

2.1.1 Primeira Placa de Toque Matricial

Trata-se de uma matriz que foi feita em placa de fibra de vidro dupla-face revestida de
cobre, de seis linhas por 20 colunas com 120 pontos de interseco entre as trilhas das linhas
chamadas de cordas e as colunas chamadas de casas, que tem por objetivo fechar contato
com uma trilha ligada ao terra de potencial 0V(nvel lgico baixo), com dimenses de 40cm
de largura, 5cm de altura e espessura desprezvel (Figura 2.2). Ao serem colocados os dedos
nas interseces dessas trilhas de cordas e casas, em cada uma delas fechado o contato
com o terra. O microcontrolador recebe as informaes atravs de seus pinos de I/O ligados a
essas trilhas e configurados como entrada de sinal digital, identificando a que nota
corresponde cada posio pressionada.

44

Figura 2.2 ltima Casa da Primeira Placa de Toque Matricial.

Essa primeira tentativa de placa de toque matricial no proporcionou um resultado


satisfatrio, por apresentar muitos maus contatos devido ao fato de no ter-se eliminado o
cobre excedente atravs de corroso cida, pelo fato de as trilhas serem muito finas e poderem
sofrer rompimentos. Quando se posiciona o dedo em apenas uma casa, por exemplo, e so
tocadas as cordas invisveis, o som que escutamos aparentemente aleatrio, no
correspondendo sempre mesma nota que deveria ser executada pelo computador.

2.1.2 Teclado de Membrana

Foi confeccionado com trs partes principais que so:

1) Uma placa de fibra de vidro de apenas uma face revestida de cobre, com 20 casas
de duas trilhas em cada uma sendo uma correspondente a cada casa em si e a outra ao terra, de
dimenses 41,13cm de largura, 5,61cm de altura e espessura desprezvel;

2) Trs camadas de um adesivo de mesmo tamanho da placa de cobre com seis


aberturas retangulares em cada casa, de dimenses 1,63cm de largura, 0,5cm de altura e
espessura desprezvel afastados por uma distncia de 0,4cm com espaamento de
aproximadamente 0,475cm entre casas, (totalizando 120 retngulos), grudados na placa com
intuito de isolar suas trilhas da prxima parte;
45

3) Seis tiras de um papel alumnio especial retirado do interior de uma espcie de cano
de proteo e isolao que envolve os fios de telefone utilizados nas montagens de circuitos
em protoboard, que possui uma camada de um material plstico isolante de cor azul que serve
para melhorar a resistncia fsica do mesmo, de dimenses 41,13cm de largura,
aproximadamente 0,65cm de altura e espessura desprezvel colocados sobre as camadas de
adesivo isolante.

As outras partes consistem em tiras de adesivo utilizadas para prender as tiras de papel
alumnio no adesivo isolante superior e um plstico que envolve todas essas partes protegendo
o conjunto do contato de sujeira, oleosidade e suor decorrentes do manuseio (Figura 2.3).

Figura 2.3 Teclado de Membrana.

Para garantir o contato das tiras de papel alumnio com as respectivas vias do cabo flat
utilizado para ligar o teclado de membrana nos pinos correspondentes do microcontrolador foi
necessrio utilizar uma espcie de abraadeira confeccionada com duas tiras de plstico de
dimenses 1cm x 9,5cm x 0,3cm presas por dois pares rosca/parafuso. Como infelizmente as
tiras de papel alumnio no tinham o comprimento necessrio de acordo com a necessidade do
projeto, foi necessrio fazer uma emenda em cada tira entre a quarta e a quinta casas com o
lado bom de sinalizar a posio da quinta casa, sinalizao normalmente feita em guitarras
atravs de marcaes decorativas no brao do instrumento.

46

As trilhas correspondentes as casas so soldadas a um cabo flat de 20 vias que


conectado a placa do microcontrolador e tambm um fio soldado na trilha que corresponde ao
terra conectado no pino da placa que recebe o terra da fonte de alimentao. O teclado de
membrana fixado ao corpo do controlador por meio de duas tiras de fita adesiva dupla-face
afim de que fique firme e com um bom acabamento.

O funcionamento basicamente o mesmo dos teclados de membrana encontrados no


comrcio, com a diferena de possuir trs contatos (duas trilhas e cada tira de papel alumnio)
em cada ponto-chave ao invs dos dois comumente encontrados. Pressionando os retngulos
desejados para as interseces correspondentes fecharem contato entre si, sem interferirem no
restante dos contatos disponveis, permite que seja tocada uma nota por vez.

2.1.3 Segunda Placa de Toque Matricial

Foi confeccionada uma segunda placa de toque matricial (Figura 2.4) com as mesmas
medidas da placa do teclado de membrana, porm com as trilhas mais espessas em relao
primeira placa de toque confeccionada e testada anteriormente, tambm com dupla-face.

Figura 2.4 ltima Casa da Segunda Placa de Toque Matricial.

47

A vantagem que essa verso pde ser corroda e assim foi eliminado o problema do
mau contato devido ao cobre excedente. Por outro lado descobriu-se que a presso do dedo
nas trilhas precisa ser muito forte se comparada presso exercida no teclado de membrana,
para que seja fechado o contato entre as trilhas de cada ponto de interseco, o que torna mais
difcil o usurio conseguir executar a(s) nota(s) que quer ouvir. Outro problema encontrado
foi a possibilidade do usurio machucar os dedos ao tentar desliz-los encostados na placa
pelo fato de ter pontos de solda devido necessidade de ter contatos entre essas trilhas que
podemos observar na figura em forma de C e as trilhas correspondentes s cordas, o que
prejudica a aceitao dessa placa de toque para o prottipo.

2.1.4 Teste com LDR


Utilizou-se seis LDRs, um para cada corda invisvel de forma que o usurio deve
quase encostar o dedo no sensor para que seja executado o som correspondente a corda
tocada. Enquanto a luz incide sobre o sensor o microcontrolador recebe nvel lgico alto e
quando no incide recebe nvel lgico baixo, enviando assim as mensagens MIDI
correspondentes a corda tocada. As desvantagens so de no funcionar no escuro e o fato do
usurio ter que ser muito preciso para conseguir obter o funcionamento adequado pretendido.

2.1.5 Pares LED/Fototransistor


Para a criao das cordas invisveis, duas placas foram confeccionadas, uma de
LEDs infravermelhos e a outra de fototransistores. Elas devem ser posicionadas uma de frente
para a outra (Figura 2.5) a fim de que o feixe de cada LED infravermelho de uma das placas
incida no fototransistor correspondente da outra placa at que seja interrompido, pela
passagem do dedo do usurio, que faz com que o pino do microcontrolador receba uma tenso
prxima de 5V (nvel lgico alto) que indica corda tocada, acionando assim o som
correspondente no computador.

48

Figura 2.5 Pares de LED Infravermelho/Fototransistor.

Na figura podemos observar os LEDs infravermelho esquerda e os fototransistores


direita no corpo do controlador. As vantagens dessa implementao em relao tentativa
com LDR so de poder funcionar no escuro, pois a luz dos LEDs infravermelho continua
incidindo nos fototransistores e o usurio precisa apenas passar os dedos, entre o LED
infravermelho e o fototransistor para obter o som desejado.

2.2 Microcontrolador e Firmware


O microcontrolador escolhido foi o PIC18F4620 devido s caractersticas: 36 pinos de I/O
configurveis pelo programador (33 foram utilizados), comunicao atravs da UART e clock
mximo de 40MHz (utilizado). A Figura 2.6 mostra o circuito do microcontrolador.
49

Figura 2.6 Circuito com o Microcontrolador.

Na figura ainda podemos observar os componentes ligados ao microcontrolador na


placa onde as demais so conectadas atravs de cabos flat nos conectores: J4 e/ou J6 a placa
das cordas, J8, J9 e/ou J10, J11 os pinos do brao correspondentes as casas, J3 e/ou J5 os
pinos do brao correspondentes s cordas e J12 o mdulo transmissor. nela que inserida a
alimentao que vai para todos os circuitos. Utilizou-se clock de 40 MHz com um cristal de
10MHz multiplicado por 4 pelo PLL do microcontrolador, por apresentar o menor atraso na
execuo dos sons e maior velocidade na utilizao da taxa de transmisso necessria ao
funcionamento do protocolo MIDI, 31,25kbps.

Antes da escolha do ttulo deste trabalho foi desenvolvida uma forma de o prprio
microcontrolador gerar o som de cada nota musical necessria para o projeto, ainda quando se
pretendia confeccionar um violo ou guitarra eletrnica onde seriam gerados os sons no
prprio prottipo, idia que foi amadurecida at se optar por construir um controlador MIDI,
50

algo que teria um resultado melhor por utilizar os sons do sintetizador de udio da placa de
som de um computador e com possibilidades de escolher diversos timbres e sons de
instrumentos diferentes alm de um amplo leque de possveis aplicaes futuras Inicialmente
estudou-se a entrada conversora analgico-digital interna do microcontrolador PIC16F877 e
em seguida programou-se uma rotina no firmware de modo que ao ser variada a tenso em
cada um dos seis pinos configurados como entrada analgica em aproximadamente 0,2V por
nota. Totalizando 23 divises e com o primeiro valor de 0,5V no utilizado e 23 notas por
corda (corda solta e 22 notas do brao), gerava-se cada nota musical de forma muito simples,
intercalando nvel lgico alto e nvel lgico baixo no pino de sada numa determinada
freqncia de acordo com a(s) nota(s) tocada(s) gerando assim um somatrio de at seis ondas
quadradas na sada e produzindo, portanto um som no to agradvel ao ouvido e sem um
timbre parecido com o de violo ou guitarra. O hardware dessa etapa do projeto no foi
montado em circuito impresso, sendo realizadas simulaes no computador e montagens em
protoboard usando botes da resistncia em srie para o terra para obter a tenso
correspondente nota do boto em cada um dos 6 pinos de entrada do sinal que
correspondiam a cada uma das cordas da guitarra. As maiores dificuldades encontradas foram
conseguir executar seis notas ao mesmo tempo, problema solucionado ao longo do
desenvolvimento dessa tentativa e em se obter uma boa preciso na relao da tenso
fornecida aos pinos da entrada analgica, pois mesmo com todos os ajustes feitos em
decorrncia da utilizao de resistores com tolerncia de 10%, alguns botes enviavam
tenses com diferenas inferiores aos 0,2V estipulados, o que acarretava em um mesmo boto
fazer o microcontrolador executar alternadamente de uma a 3 notas diferentes, a nota correta,
a anterior e a prxima nota.

No prottipo do controlador MIDI em forma de guitarra o firmware atua de forma que


o microcontrolador recebendo nvel lgico baixo (0V) em seus 26 pinos ligados placa do
teclado de membrana (20 correspondentes as casas e 6 correspondentes as cordas) e em seus
seis pinos ligados placa dos fototransistores nvel lgico alto (5V), todos configurados como
entrada de sinal digital, envia mensagens MIDI pertinentes atravs da UART para o mdulo
transmissor que por sua vez envia ao mdulo receptor ligado ao computador (Figura 2.7). O
firmware completo encontra-se no Anexo I.
51

Incio
Configuraes Iniciais

Lao Infinito Testa Corda Tocada


Chama Funo da Corda Tocada

Corda 1
Testa Casa
Tocada
Chama
Funo de
Envio

Corda 2
Testa Casa
Tocada
Chama
Funo de
Envio

Corda 3
Testa Casa
Tocada
Chama
Funo de
Envio

Corda 4
Testa Casa
Tocada
Chama
Funo de
Envio

Corda 5
Testa Casa
Tocada
Chama
Funo de
Envio

Corda 6
Testa Casa
Tocada
Chama
Funo de
Envio

Envia Comando Nota Pressionada, Envia Nota, Envia Velocidade (Intensidade)

Figura 2.7 Diagrama da Rotina Principal do Firmware.


Para programar o microcontrolador com as tarefas a serem realizadas por ele, foi
necessrio o estudo prvio do protocolo MIDI e a relao das mensagens MIDI com as notas
musicais a serem executadas pelo computador. Descobriu-se que para cada nota musical o
protocolo MIDI associa um determinado valor, por exemplo, a nota mais grave do controlador
que a sexta corda solta um Mi cujo valor correspondente 40 que ser interpretado depois
no computador por um software compatvel com esse protocolo e executar a nota Mi
solicitada. Como o protocolo MIDI permite apenas 128 posies para as notas e com 22 casas
teramos 138, optou-se por reduzir o nmero de casas para 20 que nos fornece 126 posies
distintas, que continua sendo um nmero razovel se comparado com um violo que
normalmente possui 19 casas totalizando 120 posies. Com essas informaes foi criada a
Tabela 2.1 abaixo que nos mostra a relao das 45 notas diferentes que o controlador pode
executar com suas respectivas freqncias e o valor da mensagem MIDI enviada ao
computador que ir execut-las.
52

Tabela 2.1 - Relao das Mensagens MIDI com as Notas Musicais.


Frequncia
(Hz)

Nota
Musical

329,5
349
370
392
415,5
440
466
494
523
554
587
622
659
698
740
784
831
880
932
988
1046
1108
1174
1244
1318
1396
1480
1568
1662
1760
1864
1976
2092
2216
2348
2488
2636
2792
2966
3136
3324
3520
3728
3952
4184

MI
F
F#
SOL
SOL#
L
L#
SI
D
D#
R
R#
MI
F
F#
SOL
SOL#
L
L#
SI
D
D#
R
R#
MI
F
F#
SOL
SOL#
L
L#
SI
D
D#
R
R#
MI
F
F#
SOL
SOL#
L
L#
SI
D

Cordas e Casas Correspondentes da Guitarra


6
5
4
3
2
1

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Cdigo
MIDI

40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84

53

2.3 Mdulo Transmissor

Enviou-se informaes com o mdulo XBee ligado ao microcontrolador (Figura 2.8).

Figura 2.8 Mdulo XBee Pro e Microcontrolador. [15]

Devido diferena entre as tenses de trabalho do microcontrolador e do mdulo


XBee, 5V e 3V respectivamente, h um divisor de tenso na sada do pino TX do
microcontrolador para a tenso enviada ser compatvel com a tenso aceita pelo mdulo.
Como o espaamento entre o centro dos pinos do mdulo XBee de 2mm, foi necessrio a
confeco de uma placa separada para o mdulo transmissor. Por no serem encontrados os
barramentos de pinos necessrios, foram utilizados como soquete para o mdulo transmissor,
barramentos fmea de 10 pinos cada, retirados da conexo da placa de ajustes de imagem de
um monitor de computador.
2.4 Fonte de Alimentao
Uma tenso de 5V necessria para alimentar o microcontrolador. Para obteno
desta tenso, uma fonte de alimentao (Figura 2.9) foi construda. O consumo de corrente
do microcontrolador e do mdulo transmissor juntos de aproximadamente 100mA. Como
a tenso eficaz de sada do transformador de 6V, a tenso de pico disponvel de:
(6V x 1.4142) 0.7V = 7.78V, onde 0.7V a queda de um diodo. Como na entrada do 7805
so necessrios no mnimo 7V, o ripple mximo de 0.78V. Sendo retificao de onda
completa, o capacitor C1 calculado utilizando-se tempo mximo de descarga de 8ms:
C1 = (I x 0.008)/ ripple;

C1 = (0.1 x 0.008)/0.78;

C1= 1000F
54

Figura 2.9 Circuito Eltrico da Fonte de 5V.

Tambm foi utilizada como alternativa fonte uma bateria de 9V para alimentar o
circuito do controlador sem a necessidade de conexo rede eltrica.

2.5 Mdulo Receptor

Foi utilizado outro mdulo XBee, encaixado na placa CON-USBBEE (Figura 2.10)
conectada na porta USB do microcomputador, afim de receber o sinal proveniente do
microcontrolador ligado ao primeiro mdulo.

Figura 2.10 Placa CON-USBBEE (com cabo extensor). [15]


2.6 Computador

Para poder trabalhar na taxa de transmisso de dados necessria para o funcionamento


do protocolo MIDI (31250bps) foi necessrio utilizar um mecanismo que engana o
computador, que possui um dos valores fixos de taxa de transferncia mais prxima da
necessria de 38400bps. Para isso foi utilizado o software FTDI Clean Utility V1.0 (Figura
2.11) que ao ser executado limpa as instalaes referentes ao funcionamento da porta COM
do computador relacionada USB e as referentes ao programa utilizado pelos mdulos XBee.
55

Figura 2.11 FTDI Clean Utility V1.0. [16]


Em seguida necessrio que se instale novamente os arquivos apagados, dessa vez,
provindos de outra pasta MIDIfied FTDI driver devidamente salva no computador, que
contm o necessrio para o funcionamento esperado.

Para a utilizao adequada dos mdulos ZigBee/XBee neste projeto necessrio


conectar cada um deles na placa CON-USBBEE, abrir o programa X-CTU(disponvel no site
do fabricante da placa CON-USBBEE) e na aba Terminal digitar cada seqncia em azul por
vez e esperar que o computador responda o que aparece em vermelho conforme Figura 2.12 :

Figura 2.12 - X-CTU Aba Terminal. [16]

Em seguida basta selecionar a opo USB Serial Port (COMx) (nesse caso x = 3) na
aba PC Settings, clicar no boto Test/Query e aguardar a mensagem mostrada na Figura
2.13. Caso a mensagem no confirme o funcionamento correto da comunicao, deve-se
repetir os procedimentos anteriores at se conseguir a confirmao de comunicao.
56

Figura 2.13 - X-CTU. [16]


2.6.1 Softwares

Para testar o funcionamento do prottipo na fase de recepo das informaes e


execuo das notas utilizou-se o software Bomes Mouse Keyboard (Figura 2.14)
configurado em suas abas da seguinte maneira: Roland Serial MIDI Input na aba MIDI In e
Sint. softw.tab. sons wave MS G na aba MIDI Out.

Figura 2.14 Bomes Mouse Keyboard.

Com o Guitar Pro 5 v5.2(Figura 2.15) foi possvel a criao de partituras e tablaturas
em tempo real utilizando o prottipo do controlador.

57

Figura 2.15 Guitar Pro 5 v5.2.


2.7 Corpo do Controlador
Projetado no programa AutoCAD 2010, o corpo do prottipo (Figura 2.16)

foi

confeccionado em MDF com 8 retngulos de acrlico estrategicamente colados e outros dois


encaixados na parte da frente para possibilitar que as placas dos LEDs infravermelho e dos
fototransistores possam ser aproximados e distanciados de acordo com a necessidade do
usurio. J na parte de trs foi pregado o maior dos retngulos de acrlico para servir como
tampa da abertura feita para acondicionar a placa principal do prottipo. As fotos do corpo em
MDF e acrlico, bem como as fotos do controlador pronto, com o corpo devidamente pintado,
envernizado e com as placas corretamente acondicionadas pode ser visto no Anexo III.

Figura 2.16 Corpo do Controlador no AutoCAD.


58

3. Resultados Obtidos

Com o prottipo do controlador devidamente finalizado (Figura 3.1), foi possvel a


realizao de testes que demonstram o funcionamento do mesmo.

Figura 3.1 Controlador MIDI em Forma de Guitarra.

59

Foi comprovado o correto funcionamento do sistema de deslizamento dos sensores das


cordas invisveis, conseguindo variar a distncia entre as placas dos LEDs infravermelhos e a
placa dos fototransistores de 2,5cm a 12cm (Figura 3.2 e Figura 3.3), o que possibilita ao
usurio interromper os feixes dos LEDs tanto com objetos de pequena espessura ou mesmo
um de seus dedos da mo como utilizando a mo inteira ou outros objetos entre as duas
placas.

Figura 3.2 Distncia Mnima.

Figura 3.3 Distncia Mxima.

possvel se utilizar o controlador tanto por destros quanto por canhotos, bastando
para isso inverter fisicamente as conexes da placa dos fototransistores e da placa do
microcontrolador referentes s tiras de papel alumnio que fazem o papel das cordas do
teclado de membrana, de acordo com a escolha do usurio (Figura 3.4).
60

Figura 3.4 Conexes Destro ou Canhoto.

Na execuo de notas isoladas uma de cada vez o controlador respondeu muito bem e
foi possvel escrever em tempo real tanto a partitura como a tablatura do incio da introduo
de Pour Elise do grande compositor clssico Ludwig Van Beethoven, msica escolhida para
exemplificar o funcionamento do prottipo do controlador utilizando para isso o software
compatvel com a comunicao MIDI, o Guitar Pro 5 v5.2 (Figura 3.5). Percebeu-se apenas
que o tempo de cada nota padronizado devido s configuraes prvias do editor utilizado.

Figura 3.5 Introduo da msica Pour Elise de Beethoven.


61

CONSIDERAES FINAIS
Para facilitar a vida dos estudantes de guitarra, neste projeto de graduao
desenvolveu-se um controlador MIDI em forma de guitarra com sensores de toque no lugar
das cordas com comunicao wireless-USB para o computador.

Implementou-se o prottipo em 5 placas de circuito impresso interligadas com cabos


flat, onde em cada uma das placas est contida uma parte do mesmo: o teclado de membrana,
os fototransistores, os LEDs infravermelho, o microcontrolador e o mdulo transmissor. O
computador, conectado ao mdulo receptor atravs da USB, executa os sons correspondentes
s casas e cordas tocadas, atravs do software compatvel com o protocolo MIDI.

Constatou-se um bom funcionamento do prottipo, confirmando sua utilidade didtica,


podendo ser acessrio para contribuir no ensino musical de alunos iniciantes em aulas de
violo e guitarra, despertando o interesse pela msica principalmente em crianas, que so
atradas pelo aspecto de brinquedo que o controlador possui por se parecer com um controle
em forma de mini-guitarra do jogo mundialmente conhecido Guitar Hero.

O principal problema encontrado foi o fato de devido aos aspectos construtivos do


teclado de membrana, ser possvel apenas fazer acordes na mesma casa, o que por outro lado
estimula o raciocnio e a agilidade do usurio, pois funciona normalmente para arpejos.
Outros problemas ocorreram como atraso nas atividades previstas devido situao da sade
pblica na regio de Passo Fundo, o atraso no recebimento do material necessrio para a
confeco do prottipo o que impossibilitou a confeco do brao com botes pelo fato do
material vir errado por duas vezes seguidas aps 2 meses de espera e o fato de ter que montar
e desmontar o prottipo diariamente na fase de testes pr-placas em protoboard, pois na sala
destinada aos projetos de graduao tambm ocorriam aulas e outros projetos.

Entre as possveis melhorias futuras pode-se destacar a implementao de uma


alavanca virtual, confeco de um brao utilizando botes, alterao do tom das notas
musicais via firmware e criao de um software de jogo para interagir com o controlador.
62

REFERNCIAS BIBLIOGRFICAS
[1]
Srie Harmnica. Disponvel em: <http://pt.wikipedia.org/wiki/Srie_harmnica_(msica)>.
Acesso em: 7 dezembro 2009.
[2]
Guitarra Eltrica. Disponvel em: <http://pt.wikipedia.org/wiki/Guitarra_eltrica>.
Acesso em: 7 dezembro 2009.
[3]
Guitarra. Disponvel em: <http://pt.wikipedia.org/wiki/Guitarra>.
Acesso em: 7 dezembro 2009.
[4]
Partitura. Disponvel em: <http://pt.wikipedia.org/wiki/Partitura>.
Acesso em: 31 dezembro 2009.
[5]
Tablatura. Disponvel em: <http://pt.wikipedia.org/wiki/Tablatura>.
Acesso em: 31 dezembro 2009.
[6]
Editor de Partitura. Disponvel em: <http://pt.wikipedia.org/wiki/Editor_de_partitura>.
Acesso em: 7 dezembro 2009.
[7]

MIDI. Disponvel em: <http://pt.wikipedia.org/wiki/MIDI>. Acesso em: 1 setembro 2009.

[8]
RATTON, Miguel. MIDI: o princpio de tudo. Disponvel em:
< http://www.erpires.com.br/Artigos_e_Tutoriais.html >. Acesso em: 9 setembro 2009.
[9]
COSTA, Marcelo. Solfeggiare Um compilador para Partituras Musicais.
Disponvel em: < http://dsc.upe.br/~tcc/20061/MarceloCosta.pdf>. Acesso em: 10 setembro 2009.
[10] MIRANDA, Jos Carlos. Nova Eletrnica. Disponvel em:
< http://www.novaeletronica.net/q/n1/5_projetos/pag.11.html>. Acesso em: 2 setembro 2009.
[11] Teclado de Membrana.
Disponvel em: <http://pt.wikipedia.org/wiki/Teclado_de_membrana>.
Acesso em: 2 setembro 2009.
[12] MTD Teclados de Membrana. O que teclado de membrana. Disponvel em:
< http://www.mtd.ind.br/art_7.htm>. Acesso em: 2 setembro 2009.
[13]

LDR. Disponvel em: <http://pt.wikipedia.org/wiki/LDR>. Acesso em: 20 novembro 2009.

[14] DE SOUZA, Uilian Lucas; PEREIRA, Thiago Ramos. Fotodiodos e Fototransistores.


Disponvel em:< www.etb.com.br/professor/materialdeapoio/transistor.pdf>.
Acesso em: 20 novembro 2009.
[15] MESSIAS, Antnio Rogrio. Controle remoto e aquisio de dados via XBee/ZigBee (IEEE
802.15.4).
Disponvel em: < http://www.rogercom.com/ZigBee/ZigBee.htm>. Acesso em: 29 setembro 2009.
[16] XBee radios. Using XBees to create a wireless bi-directional MIDI link.
Disponvel em: < http://www.ladyada.net/make/xbee/midibee.html>. Acesso em: 9 outubro 2009.

63

ANEXO I FIRMWARE DO CONTROLADOR


//PROJETO DE GMCU_RADUAO JANEIRO 2010 - CONTROLADOR MIDI EM FORMA DE GUITARMCU_RA
//ACADMICO: JULIO CHAGAS PITTHAN; ORIENTADOR: PAULO SRGIO CORRA MOLINA
#include <18F4620.h>
//Arquivo cabealho do PIC18F4620
#include <PIC18F4620_REgisters.h>//Arquivo cabealho com os REgistRAdoREs do PIC18F4620
#FUSES H4
//Oscilador de alta velocidade com multiplicador de clock 4X PLL habilitado
#FUSES MCLR
//Pino Master Clear habilitado (REset)
#use delay(clock=40000000)
//Clock para a funo delay()
//ENVIO DAS NOTAS E INTENSIDADES
void ENVIA(int NOTA){ //ROTINA DE ENVIO DAS MENSAGENS MIDI
MCU_TXREG=0x90; //TXREG RECEBE O COMANDO NOTA PRESSIONADA = 0x90
while(!MCU_TXIF); //AGUARDA TX P/ TSR
MCU_TXIF=0; //RESETA FLAG
while(MCU_TRMT); //AGUARDA FIM DA TX
MCU_TXREG=NOTA; //TXREG RECEBE A NOTA
while(!MCU_TXIF); //AGUARDA TX P/ TSR
MCU_TXIF=0; //RESETA FLAG
while(MCU_TRMT); //AGUARDA FIM DA TX
DELAY_US(350); //TEMPO MNIMO NECESSRIO PARA ENVIO CORRETO DAS MENSAGENS MIDI
MCU_TXREG=127; //TXREG RECEBE A INTENSIDADE = 127 (MXIMA)
while(!MCU_TXIF); //AGUARDA TX P/ TSR
MCU_TXIF=0; //RESETA FLAG
while(MCU_TRMT); //AGUARDA FIM DA TX
}
VOID CORDA1(VOID){//CORDA 1
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 1
IF((MCU_RC7==1)&&(MCU_RA5==0)){
if(MCU_RD7==0&&MCU_RC7==1&&MCU_RA5==0) {NOTA=84; }//CASA 20 CORDA 1 NOTA 84
ELSE if(MCU_RD6==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1) {NOTA=83; }//CASA 19 CORDA 1 NOTA 83
ELSE if(MCU_RD5==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=82; }//CASA 18 CORDA 1 NOTA 82
ELSE if(MCU_RD4==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=81; }//CASA 17 CORDA 1
NOTA 81
ELSE if(MCU_RD3==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=80;
}//CASA 16 CORDA 1 NOTA 80
ELSE
if(MCU_RD2==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=79; }//CASA 15 CORDA 1 NOTA 79
ELSE
if(MCU_RD1==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=78; }//CASA 14 CORDA 1 NOTA 78
ELSE
if(MCU_RD0==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=77; }//CASA 13 CORDA 1 NOTA 77
ELSE
if(MCU_RC5==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=76; }//CASA 12 CORDA 1 NOTA 76
ELSE
if(MCU_RC4==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=75; }//CASA 11 CORDA 1 NOTA 75
ELSE
if(MCU_RC3==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=74; }//CASA 10 CORDA 1 NOTA 74
ELSE
if(MCU_RC2==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=73; }//CASA 9 CORDA 1 NOTA 73
ELSE
if(MCU_RC1==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=72; }//CASA 8
CORDA 1 NOTA 72
ELSE
if(MCU_RC0==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=71; }//CASA 7 CORDA 1 NOTA 71
ELSE
if(MCU_RB7==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=70; }//CASA 6 CORDA 1 NOTA 70
ELSE
if(MCU_RB6==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=69; }//CASA 5 CORDA 1 NOTA 69

64

ELSE
if(MCU_RB5==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=68; }//CASA 4 CORDA 1 NOTA 68
ELSE
if(MCU_RB4==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=67; }//CASA 3 CORDA 1 NOTA 67
ELSE
IF(MCU_RB3==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=66; MCU_RB3=1;}//CASA 2 CORDA 1 NOTA 66
ELSE
if(MCU_RB2==0&&MCU_RC7==1&&MCU_RA5==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=65; MCU_RB2=1;}//CASA 1 CORDA 1 NOTA 65
}
ELSE if((MCU_RC7==1)&&(MCU_RA5==1)){NOTA=64;} //CORDA 1 TOCADA NOTA 64
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
VOID CORDA2(VOID){//CORDA 2
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 2
IF((MCU_RB1==1)&&(MCU_RA4==0)){
if(MCU_RD7==0&&MCU_RB1==1&&MCU_RA4==0) {NOTA=79; }//CASA 20 CORDA 2 NOTA 79
ELSE if(MCU_RD6==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1) {NOTA=78; }//CASA 19 CORDA 2 NOTA 78
ELSE if(MCU_RD5==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=77; }//CASA 18 CORDA 2 NOTA 77
ELSE if(MCU_RD4==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=76; }//CASA 17 CORDA 2
NOTA 76
ELSE if(MCU_RD3==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=75;
}//CASA 16 CORDA 2 NOTA 75
ELSE
if(MCU_RD2==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=74; }//CASA 15 CORDA 2 NOTA 74
ELSE
if(MCU_RD1==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=73; }//CASA 14 CORDA 2 NOTA 73
ELSE
if(MCU_RD0==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=72; }//CASA 13 CORDA 2 NOTA 72
ELSE
if(MCU_RC5==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=71; }//CASA 12 CORDA 2 NOTA 71
ELSE
if(MCU_RC4==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=70; }//CASA 11 CORDA 2 NOTA 70
ELSE
if(MCU_RC3==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=69; }//CASA 10 CORDA 2 NOTA 69
ELSE
if(MCU_RC2==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=68; }//CASA 9 CORDA 2 NOTA 68
ELSE
if(MCU_RC1==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=67; }//CASA 8
CORDA 2 NOTA 67
ELSE
if(MCU_RC0==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=66; }//CASA 7 CORDA 2 NOTA 66
ELSE
if(MCU_RB7==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=65; }//CASA 6 CORDA 2 NOTA 65
ELSE
if(MCU_RB6==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=64; }//CASA 5 CORDA 2 NOTA 64
ELSE
if(MCU_RB5==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=63; }//CASA 4 CORDA 2 NOTA 63
ELSE
if(MCU_RB4==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=62; }//CASA 3 CORDA 2 NOTA 62
ELSE
if(MCU_RB3==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=61; MCU_RB3=1;}//CASA 2 CORDA 2 NOTA 61

65

ELSE
if(MCU_RB2==0&&MCU_RB1==1&&MCU_RA4==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=60; MCU_RB2=1;}//CASA 1 CORDA 2 NOTA 60
}
ELSE if((MCU_RB1==1)&&(MCU_RA4==1)){NOTA=59;} //CORDA 2 TOCADA NOTA 59
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
VOID CORDA3(VOID){//CORDA 3
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 3
IF((MCU_RB0==1)&&(MCU_RA3==0)){
if(MCU_RD7==0&&MCU_RB0==1&&MCU_RA3==0) {NOTA=75; }//CASA 20 CORDA 3 NOTA 75
ELSE if(MCU_RD6==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1) {NOTA=74; }//CASA 19 CORDA 3 NOTA 74
ELSE if(MCU_RD5==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=73; }//CASA 18 CORDA 3 NOTA 73
ELSE if(MCU_RD4==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=72; }//CASA 17 CORDA 3
NOTA 72
ELSE if(MCU_RD3==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=71;
}//CASA 16 CORDA 3 NOTA 71
ELSE
if(MCU_RD2==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=70; }//CASA 15 CORDA 3 NOTA 70
ELSE
if(MCU_RD1==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=69; }//CASA 14 CORDA 3 NOTA 69
ELSE
if(MCU_RD0==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=68; }//CASA 13 CORDA 3 NOTA 68
ELSE
if(MCU_RC5==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=67; }//CASA 12 CORDA 3 NOTA 67
ELSE
if(MCU_RC4==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=66; }//CASA 11 CORDA 3 NOTA 66
ELSE
if(MCU_RC3==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=65; }//CASA 10 CORDA 3 NOTA 65
ELSE
if(MCU_RC2==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=64; }//CASA 9 CORDA 3 NOTA 64
ELSE
if(MCU_RC1==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=63; }//CASA 8
CORDA 3 NOTA 63
ELSE
if(MCU_RC0==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=62; }//CASA 7 CORDA 3 NOTA 62
ELSE
if(MCU_RB7==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=61; }//CASA 6 CORDA 3 NOTA 61
ELSE
if(MCU_RB6==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=60; }//CASA 5 CORDA 3 NOTA 60
ELSE
if(MCU_RB5==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=59; }//CASA 4 CORDA 3 NOTA 59
ELSE
if(MCU_RB4==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=58; }//CASA 3 CORDA 3 NOTA 58
ELSE
if(MCU_RB3==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=57; MCU_RB3=1;}//CASA 2 CORDA 3 NOTA 57
ELSE
if(MCU_RB2==0&&MCU_RB0==1&&MCU_RA3==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=56; MCU_RB2=1;}//CASA 1 CORDA 3 NOTA 56
}
ELSE if((MCU_RB0==1)&&(MCU_RA3==1)){NOTA=55;} //CORDA 3 TOCADA NOTA 55
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
VOID CORDA4(VOID){//CORDA 4
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 4
IF((MCU_RE2==1)&&(MCU_RA2==0)){

66

if(MCU_RD7==0&&MCU_RE2==1&&MCU_RA2==0) {NOTA=70; }//CASA 20 CORDA 4 NOTA 70


ELSE if(MCU_RD6==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1) {NOTA=69; }//CASA 19 CORDA 4 NOTA 69
ELSE if(MCU_RD5==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=68; }//CASA 18 CORDA 4 NOTA 68
ELSE if(MCU_RD4==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=67; }//CASA 17 CORDA 4
NOTA 67
ELSE if(MCU_RD3==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=66;
}//CASA 16 CORDA 4 NOTA 66
ELSE
if(MCU_RD2==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=65; }//CASA 15 CORDA 4 NOTA 65
ELSE
if(MCU_RD1==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=64; }//CASA 14 CORDA 4 NOTA 64
ELSE
if(MCU_RD0==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=63; }//CASA 13 CORDA 4 NOTA 63
ELSE
if(MCU_RC5==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=62; }//CASA 12 CORDA 4 NOTA 62
ELSE
if(MCU_RC4==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=61; }//CASA 11 CORDA 4 NOTA 61
ELSE
if(MCU_RC3==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=60; }//CASA 10 CORDA 4 NOTA 60
ELSE
if(MCU_RC2==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=59; }//CASA 9 CORDA 4 NOTA 59
ELSE
if(MCU_RC1==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=58; }//CASA 8
CORDA 4 NOTA 58
ELSE
if(MCU_RC0==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=57; }//CASA 7 CORDA 4 NOTA 57
ELSE
if(MCU_RB7==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=56; }//CASA 6 CORDA 4 NOTA 56
ELSE
if(MCU_RB6==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=55; }//CASA 5 CORDA 4 NOTA 55
ELSE
if(MCU_RB5==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=54; }//CASA 4 CORDA 4 NOTA 54
ELSE
if(MCU_RB4==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=53; }//CASA 3 CORDA 4 NOTA 53
ELSE
if(MCU_RB3==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=52; MCU_RB3=1;}//CASA 2 CORDA 4 NOTA 52
ELSE
if(MCU_RB2==0&&MCU_RE2==1&&MCU_RA2==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=51; MCU_RB2=1;}//CASA 1 CORDA 4 NOTA 51
}
ELSE if((MCU_RE2==1)&&(MCU_RA2==1)){NOTA=50;} //CORDA 4 TOCADA NOTA 50
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
VOID CORDA5(VOID){//CORDA 5
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 5
IF((MCU_RE1==1)&&(MCU_RA1==0)){
if(MCU_RD7==0&&MCU_RE1==1&&MCU_RA1==0) {NOTA=65; }//CASA 20 CORDA 5 NOTA 65
ELSE if(MCU_RD6==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1) {NOTA=64; }//CASA 19 CORDA 5 NOTA 64
ELSE if(MCU_RD5==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=63; }//CASA 18 CORDA 5 NOTA 63
ELSE if(MCU_RD4==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=62; }//CASA 17 CORDA 5
NOTA 62
ELSE if(MCU_RD3==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=61;
}//CASA 16 CORDA 5 NOTA 61
ELSE
if(MCU_RD2==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=60; }//CASA 15 CORDA 5 NOTA 60

67

ELSE
if(MCU_RD1==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=59; }//CASA 14 CORDA 5 NOTA 59
ELSE
if(MCU_RD0==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=58; }//CASA 13 CORDA 5 NOTA 58
ELSE
if(MCU_RC5==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=57; }//CASA 12 CORDA 5 NOTA 57
ELSE
if(MCU_RC4==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=56; }//CASA 11 CORDA 5 NOTA 56
ELSE
if(MCU_RC3==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=55; }//CASA 10 CORDA 5 NOTA 55
ELSE
if(MCU_RC2==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=54; }//CASA 9 CORDA 5 NOTA 54
ELSE
if(MCU_RC1==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=53; }//CASA 8
CORDA 5 NOTA 53
ELSE
if(MCU_RC0==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=52; }//CASA 7 CORDA 5 NOTA 52
ELSE
if(MCU_RB7==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=51; }//CASA 6 CORDA 5 NOTA 51
ELSE
if(MCU_RB6==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=50; }//CASA 5 CORDA 5 NOTA 50
ELSE
if(MCU_RB5==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=49; }//CASA 4 CORDA 5 NOTA 49
ELSE
if(MCU_RB4==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=48; }//CASA 3 CORDA 5 NOTA 48
ELSE
if(MCU_RB3==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=47; MCU_RB3=1;}//CASA 2 CORDA 5 NOTA 47 //
ELSE
if(MCU_RB2==0&&MCU_RE1==1&&MCU_RA1==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=46; MCU_RB2=1;}//CASA 1 CORDA 5 NOTA 46 //
}
ELSE if((MCU_RE1==1)&&(MCU_RA1==1)){NOTA=45;} //CORDA 5 TOCADA NOTA 45
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
VOID CORDA6(VOID){//CORDA 6
INT NOTA; //DECLARA VARIVEL NOTA
//CORDA 6
IF((MCU_RE0==1)&&(MCU_RA0==0)){
if(MCU_RD7==0&&MCU_RE0==1&&MCU_RA0==0) {NOTA=60; }//CASA 20 CORDA 6 NOTA 60
ELSE if(MCU_RD6==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1) {NOTA=59; }//CASA 19 CORDA 6 NOTA 59
ELSE if(MCU_RD5==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1) {NOTA=58; }//CASA 18 CORDA 6 NOTA 58
ELSE if(MCU_RD4==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1) {NOTA=57; }//CASA 17 CORDA 6
NOTA 57
ELSE if(MCU_RD3==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1)
{NOTA=56;
}//CASA 16 CORDA 6 NOTA 56
ELSE
if(MCU_RD2==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1)
{NOTA=55; }//CASA 15 CORDA 6 NOTA 55
ELSE
if(MCU_RD1==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1) {NOTA=54; }//CASA 14 CORDA 6 NOTA 54
ELSE
if(MCU_RD0==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1) {NOTA=53; }//CASA 13 CORDA 6 NOTA 52
ELSE
if(MCU_RC5==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1) {NOTA=52; }//CASA 12 CORDA 6 NOTA 52
ELSE
if(MCU_RC4==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) {NOTA=51; }//CASA 11 CORDA 6 NOTA 51

68

ELSE
if(MCU_RC3==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1) {NOTA=50; }//CASA 10 CORDA 6 NOTA 50
ELSE
if(MCU_RC2==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1) {NOTA=49; }//CASA 9 CORDA 6 NOTA 49
ELSE
if(MCU_RC1==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1) {NOTA=48; }//CASA 8
CORDA 6 NOTA 48
ELSE
if(MCU_RC0==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1)
{NOTA=47; }//CASA 7 CORDA 6 NOTA 47
ELSE
if(MCU_RB7==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1) {NOTA=46; }//CASA 6 CORDA 6 NOTA 46
ELSE
if(MCU_RB6==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1) {NOTA=45; }//CASA 5 CORDA 6 NOTA 45
ELSE
if(MCU_RB5==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1) {NOTA=44; }//CASA 4 CORDA 6 NOTA 44
ELSE
if(MCU_RB4==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RD7==1&&MCU_RD6==1&&MCU_RD5==1&&MCU_RD4==1&&MCU_RD3==1&&M
CU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1&&MCU_RC4==1&&MCU_RC3==1&&MCU_RC2==1&&MCU_RC1==1&&MCU_
RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1) {NOTA=43; }//CASA 3 CORDA 6 NOTA 43
ELSE
if(MCU_RB3==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RC1==1&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&M
CU_RB4==1) {NOTA=42; MCU_RB3=1;}//CASA 2 CORDA 6 NOTA 42 //
ELSE
if(MCU_RB2==0&&MCU_RE0==1&&MCU_RA0==0&&MCU_RC0==1&&MCU_RB7==1&&MCU_RB6==1&&MCU_RB5==1&&MCU_RB4==1&&M
CU_RB3==1) {NOTA=41; MCU_RB2=1;}//CASA 1 CORDA 6 NOTA 41
}
ELSE if((MCU_RE0==1)&&(MCU_RA0==1)){NOTA=40;} //CORDA 6 TOCADA NOTA 40
ENVIA(NOTA);
NOTA=0XFF; // NOTA RECEBE O VALOR INICIAL 0XFF
}
void main()
{
INT1 C1=0,C2=0,C3=0,C4=0,C5=0,C6=0;
//CONFIGURAO UART
MCU_SYNC=0; //MODO ASSNCRONO
MCU_BRGH=1; //AJUSTE PARA ALTA INTENSIDADE
MCU_SPBRG=79; //BR=31250 BPS
MCU_SPEN=1; //HABILITA PINOS TX E RX PARA USART
MCU_TX9=0;
//TRANSMISSO EM 8 BITS
MCU_RX9=0;
//MCU_RECEPO EM 8 BITS
MCU_TXEN=1; //ATIVA A TRANSMISSO DE DADOS
MCU_CREN=1; //ATIVA A RECEPO DE DADOS NO MODO CONTNUO
//CONFIGURAO DAS PORTS
MCU_TRISA=0XFF;// 1 - ENTRADA
MCU_TRISB=0XFF;// 1 - ENTRADA
MCU_TRISC=0b10111111;// 0 - SADA
MCU_TRISD=0XFF;// 1 - ENTRADA
MCU_TRISE=0XFF;// 1 - ENTRADA
//VALOR INICIAL DAS PORTS
MCU_PORTA=0XFF;
MCU_PORTB=0b11111100;
MCU_PORTC=0b01111111;
MCU_PORTD=0XFF;
MCU_PORTE=0X00;
while(true){ //MODO CONTNUO DE ENVIO DAS NOTAS
//PRIORIDADE CASA 20 -> CASA 1
IF(C1!=MCU_RC7){C1=MCU_RC7;CORDA1();}
IF(C2!=MCU_RB1){C2=MCU_RB1;CORDA2();}
IF(C3!=MCU_RB0){C3=MCU_RB0;CORDA3();}
IF(C4!=MCU_RE2){C4=MCU_RE2;CORDA4();}
IF(C5!=MCU_RE1){C5=MCU_RE1;CORDA5();}
IF(C6!=MCU_RE0){C6=MCU_RE0;CORDA6();}
}
}

69

ANEXO II FOTOS DO CORPO E DO CONTROLADOR PRONTO

70

Você também pode gostar