70
UNIVERSIDADE DE PASSO FUNDO FACULDADE DE ENGENHARIA E ARQUITETURA CURSO DE ENGENHARIA ELÉTRICA CONTROLADOR MIDI EM FORMA DE GUITARRA Disciplina: Projeto de Graduação Professor: Dr. Paulo Sérgio Corrêa Molina Acadêmico: Julio Chagas Pitthan Passo Fundo, janeiro de 2010.

Relatório Final - PFG - Julio - 2010

Embed Size (px)

DESCRIPTION

Relatório Final - PFG - Julio - 2010 (CONTROLADOR MIDI EM FORMA DE GUITARRA)

Citation preview

Page 1: Relatório Final - PFG - Julio - 2010

UNIVERSIDADE DE PASSO FUNDO

FACULDADE DE ENGENHARIA E ARQUITETURA

CURSO DE ENGENHARIA ELÉTRICA

CONTROLADOR MIDI EM FORMA DE GUITARRA

Disciplina: Projeto de Graduação

Professor: Dr. Paulo Sérgio Corrêa Molina

Acadêmico: Julio Chagas Pitthan

Passo Fundo, janeiro de 2010.

Page 2: Relatório Final - PFG - Julio - 2010

2

Julio Chagas Pitthan

Controlador MIDI em forma de guitarra

Projeto de graduação apresentado ao curso de

Engenharia Elétrica com Ênfase em Eletrônica

da Faculdade de Engenharia e Arquitetura, da

Universidade de Passo Fundo, como requisito

parcial para obtenção do título de Engenheiro

Eletricista com Ênfase em Eletrônica, sob

orientação do Professor Dr. Paulo Sérgio

Corrêa Molina.

Passo Fundo

2010

Page 3: Relatório Final - PFG - Julio - 2010

3

Julio Chagas Pitthan

Controlador MIDI em forma de guitarra

Banca Examinadora:

Prof. Doutor Paulo Sérgio Corrêa Molina – UPF – Orientador

Prof. Mestre Adriano Luís Toazza – UPF – Examinador

Professora Dra. Blanca Maquera Sosa – UPF – Examinadora

Passo Fundo

2010

Page 4: Relatório Final - PFG - Julio - 2010

4

Dedico a realização deste projeto a meus pais, Julio (in memoriam) e Isabel, que sempre me apoiaram e encorajaram, com carinho e atenção. Dedico também ao professor Paulo Sérgio Corrêa Molina, não só pelos ensinamentos durante o curso, mas também por acreditar neste projeto. E principalmente a quem não 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 situação." -- Julio Chagas Pitthan

Page 5: Relatório Final - PFG - Julio - 2010

5

Agradecimentos

Agradeço a Deus pela vida, aos familiares pelo apoio inclusive financeiro, e ajuda

nas dificuldades. Aos amigos, que mesmo longe me apóiam e incentivam. Aos professores

que me transmitiram conhecimentos para minha formação acadêmica e os professores dos

ensinos técnico, médio, fundamental, pré-escola e jardim de infância. 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 cobrança, amizade e ensinamentos. Aos meus

colegas da Eng. Biomédica do HC pelo apoio, os amigos Anselmo Pires, Cleciane Rosato,

David Povala, Flávio 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, João Mossinni,

Marcelo Fantinatti, Marcelo da Silva, Mauren Zardo, Paulo Venturini, Pedro Bruxel, Ricardo

Frosi, Rodrigo Busato, Rômulo Mânica, Thales Marafon, Tiago Rosado e Vinícius Ebone

com quem compartilhei esta caminhada, entre tantos outros com quem convivi neste período.

Agradeço em especial aos integrantes e amigos da minha banda Thunder Force pelo

apoio e incentivo principalmente na questão de aprender a não desistir dos objetivos traçados

diante das dificuldades e também no gosto pela música, especialmente o Metal, estilo

trabalhado e estruturado que nos estimula e agrega valores como músico e como pessoa.

Agradeço também 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 “violão eletrônico” se

tornasse um controlador MIDI em forma de guitarra, Eduardo Kurtz, meu aluno de violão que

reclamava dos instrumentos como guitarra e violão serem “muito grandes” e Amanda Vilar

Lago, por me inspirar a acrescentar a preocupação 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 inglês deste trabalho, além do companheirismo

inclusive musical e dos momentos bons e difíceis que compartilhamos.

Page 6: Relatório Final - PFG - Julio - 2010

6

RESUMO

Instrumentos musicais e seus acessórios eletrônicos estão hoje ganhando espaço na

rotina diária da maior parte das bandas, profissionais da área da música e mesmo pessoas em

geral. Uma guitarra convencional deve ter suas cordas trocadas com freqüência, 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 graduação desenvolveu-se o

protótipo de um controlador MIDI em forma de guitarra com sensores de toque no lugar das

cordas e com comunicação wireless-USB para o computador. O protótipo serve também para

músicos iniciantes aprenderem guitarra de forma divertida com o auxílio de um software

editor de partituras já existente como, por exemplo, o Guitar Pro. Isto enriquece a prática do

desenvolvimento musical, principalmente das crianças que se interessam pelo controlador e

conseqüentemente pela arte da música, o que auxilia no crescimento da parte artística dessas

pessoas.

Palavras-chave: música, guitarra, MIDI, controlador MIDI.

Page 7: Relatório Final - PFG - Julio - 2010

7

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.

Page 8: Relatório Final - PFG - Julio - 2010

8

LISTA DE ILUSTRAÇÕES

Figura 1.1 – Guitarra Elétrica. [3] ............................................................................................16

Figura 1.2 – Exemplo de Partitura. [4] .....................................................................................21

Figura 1.3 – Exemplo de Tablatura. [5] ...................................................................................22

Figura 1.4 – Esquema de uma típica mensagem MIDI. [9]......................................................25

Figura 1.5 – Conectores de passagem (THRU), de saída (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 – Transmissão / Recepção. [8] ................................................................................28

Figura 1.10 – Transmissão / Recepção 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 – Módulo XBee Pro e Microcontrolador. [15]........................................................54

Figura 2.9 – Circuito Elétrico 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 – Bome’s 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 – Distância Mínima.................................................................................................60

Figura 3.3 – Distância Máxima. ...............................................................................................60

Figura 3.4 – Conexões Destro ou Canhoto...............................................................................61

Figura 3.5 – Introdução da música Pour Elise de Beethoven...................................................61

Page 9: Relatório Final - PFG - Julio - 2010

9

LISTA DE TABELAS

Tabela 1.1 – Descrição dos pinos dos módulos XBee/XBee-Pro™. [15]................................ 38

Tabela 1.2 – Comandos dos módulos XBee/XBee-Pro™ 1. [15]] .......................................... 39

Tabela 1.3 – Comandos dos módulos XBee/XBee-Pro™ 2. [15]............................................ 40

Tabela 1.4 – Comandos dos módulos XBee/XBee-Pro™ 3. [15]............................................ 40

Page 10: Relatório Final - PFG - Julio - 2010

10

LISTA DE ABREVIATURAS E SIGLAS

API: Application Programming Interface (Interface para Programação de Aplicação)

I/O: Input/Output (Entrada/Saída)

ISM: Industrial, Scientific and Medical (Médica, Científica e Industrial)

LDR: Light Dependent Resistor (Resistor Dependente de Luz)

MDF: Medium Density Fiberboard (Placa de Fibra de Madeira de Média Densidade)

MIDI: Musical Instrument Digital Interface (Interface Digital para Instrumentos

Musicais)

RF: Radio Fequency (Freqüência de Rádio)

SMF: Standard MIDI Files (Arquivos MIDI Padrão)

UART: Universal Asyncrhronous Receiver Transmiter (Transmissão e Recepção

Assíncrona Universal)

USB: Universal Serial Bus (“Comunicação Serial Universal”)

Page 11: Relatório Final - PFG - Julio - 2010

11

SUMÁRIO

INTRODUÇÃO.............................................................................................................................13

1. Estudo Teórico.......................................................................................................................14

1.1 Teoria Físico-Musical...............................................................................................14

1.2 Guitarra Elétrica .......................................................................................................16

1.2.1 Braço.....................................................................................................................17

1.2.2 Mão 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 Transmissão das Mensagens MIDI.......................................................................25

1.6.2.2 Controladores .......................................................................................................26

1.6.3 A Conexão MIDI ..................................................................................................26

1.6.3.1 Tipos de Conexão .................................................................................................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 Limitações do MIDI .............................................................................................30

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

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

1.9 LDR ..........................................................................................................................33

1.10 Fotodiodos ................................................................................................................33

Page 12: Relatório Final - PFG - Julio - 2010

12

1.11 Fototransistores.........................................................................................................34

1.12 Módulos ZigBee/XBee.............................................................................................35

2. 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 Módulo Transmissor.......................................................................................................54

2.4 Fonte de Alimentação.....................................................................................................54

2.5 Módulo Receptor ............................................................................................................55

2.6 Computador ....................................................................................................................55

2.6.1 Softwares .....................................................................................................................57

2.7 Corpo do Controlador.....................................................................................................58

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

CONSIDERAÇÕES FINAIS ........................................................................................................62

REFERÊNCIAS BIBLIOGRÁFICAS ..........................................................................................63

ANEXO I – FIRMWARE DO CONTROLADOR .......................................................................64

ANEXO II – FOTOS DO CORPO E DO CONTROLADOR PRONTO .....................................70

Page 13: Relatório Final - PFG - Julio - 2010

13

INTRODUÇÃO

O protocolo de comunicação MIDI é principalmente utilizado no mundo da música,

em diversas aplicações como, por exemplo, em estúdios de gravação de áudio, em

apresentações de bandas e artistas de diversos estilos musicais, em aulas de vários tipos de

instrumentos e também por pessoas em geral. O ponto forte desse tipo de comunicação é a

padronização de hardware e software envolvidos na mesma, que permite que um equipamento

produzido por um fabricante possa se comunicar com vários outros de todas as marcas

diferentes que utilizam o mesmo padrão, sem necessidade de conversores e adaptadores, que

encareceriam essa troca de dados.

O controlador MIDI, que é o dispositivo que envia as informações de como e qual nota

deve ser executada, pode ficar relativamente longe do equipamento que irá executar o som

desejado. Neste projeto de graduação foi projetado e construído um protótipo de controlador

MIDI prevendo a extinção do gasto na troca de cordas, diminuição de volume e peso em

comparação com uma guitarra MIDI comum, que se difere da guitarra convencional pelo uso

de captadores MIDI. Este trabalho também incentiva o aprendizado da música com a

utilização de um editor de partituras já existente como, por exemplo, o Guitar Pro. O protótipo

é composto por sensores táteis que fazem o papel de “braço” da guitarra e outros que

detectam qual “corda” foi tocada, microcontrolador, para processar as informações referentes

às notas, que são executados por um microcomputador. O envio de dados do

microprocessador ao microcomputador se dá via módulos transceiver wireless - USB.

No primeiro capítulo temos um estudo teórico a respeito dos temas envolvidos neste

projeto, no segundo capítulo é abordado o desenvolvimento do sistema e do protótipo

confeccionado, e no terceiro capítulo encontramos os resultados obtidos com esse trabalho.

Page 14: Relatório Final - PFG - Julio - 2010

14

1. Estudo Teórico

1.1 Teoria Físico-Musical

1.1.1 Série Harmônica

Em física, série harmônica é o conjunto de ondas composto da freqüência

fundamental e seus múltiplos inteiros, resultado da vibração de um oscilador harmônico como

pêndulos, corpos rotativos (motores e geradores elétricos) e maior parte dos corpos produtores

de som dos instrumentos musicais. As principais aplicações práticas de seu estudo estão

na música e na análise de espectros eletromagnéticos, como ondas de rádio e sistemas

de corrente alternada. Em matemática, refere-se a uma série infinita. Também podem ser

utilizadas as transformadas de Fourier e as séries de Fourier para estudar este fenômeno. [1]

1.1.2 História

Muitas civilizações perceberam que um corpo em vibração produz sons em diferentes

freqüências. Os gregos há mais de seis mil anos estudavam este fenômeno através de um

instrumento experimental, o monocórdio. Os textos mais antigos sobre o assunto foram

escritos pelo filósofo e matemático grego, Pitágoras. Na mesma época, os chineses realizavam

pesquisas com harmônicos em flautas. [1]

Page 15: Relatório Final - PFG - Julio - 2010

15

Pitágoras percebeu que ao colocar uma corda em vibração ela não vibra apenas em sua

extensão total, mas forma uma série de nós, que a divide em seções menores, os ventres, que

vibram em freqüências mais altas que a fundamental. Se o monocórdio for longo o suficiente,

estes são visíveis. Estes nós se formam em pontos que dividem a corda em duas, três partes

iguais e assim sucessivamente. Em uma corda real se sobrepõem, gerando um desenho

complexo, semelhante à forma de onda do instrumento. Se colocarmos o dedo sobre um dos

nós, isso provoca a divisão da corda em seções menores e torna os ventres mais visíveis. Esta

experiência pode ser feita com um violão, ao pousar um dedo sobre o 12º traste e dedilhar a

corda. Isso divide a corda em duas seções iguais e permite ver dois ventres distintos em

vibração. [1]

Pela relação entre os comprimentos das seções e as freqüências produzidas por cada

uma das subdivisões, conclui-se que a corda soa simultaneamente, na freqüência fundamental

(F) e em todas as múltiplas inteiras (2F, 3F, 4F, etc.) onde cada uma é um harmônico.

A altura da nota produzida pela corda é determinada pela freqüência fundamental. As demais,

embora ouvidas, não são percebidas como alturas discretas, mas como parte

do timbre característico da corda. [1]

Devido à limitação da elasticidade da corda, os primeiros harmônicos soam com

maior intensidade que os posteriores e exercem um papel mais importante na determinação da

forma de onda e no timbre do instrumento. O mesmo resultado pode ser obtido ao colocar

uma coluna de ar em vibração, embora não seja possível ver os nós e ventres da onda. [1]

O conhecimento da série harmônica permitiu à maior parte das civilizações do mundo,

escolher, dentre todas as freqüências audíveis, um conjunto reduzido de notas que soasse

agradável ao ouvido. Pitágoras percebeu, por exemplo, que o segundo harmônico (a nota com

o dobro da freqüência da fundamental) soava como se fosse a mesma nota, apenas

mais aguda. Esta relação de freqüências (F/2F, ou 1/2 considerando os comprimentos das

cordas), a oitava, é percebida como neutra (nem consonante nem dissonante). [1]

Page 16: Relatório Final - PFG - Julio - 2010

16

1.2 Guitarra Elétrica

É um instrumento cordofone, onde o som é produzido manualmente pela vibração

das cordas e é transformado em sinal elétrico devido à ação de captadores magnéticos. Os

sinais elétricos são amplificados e emitidos por um alto-falante que os converte em ondas

sonoras, ou são modificados antes de serem convertidos em som pelo alto-falante. Pela

potência sonora e possibilidade de alteração eletrônica de diversas características de seu

timbre, as guitarras elétricas são utilizadas principalmente no heavy metal, rock, música

pop, blues e jazz, podendo ser encontradas ainda em outros gêneros musicais. [2]

A Figura 1.1 abaixo mostra uma guitarra elétrica com suas partes indicadas. [3]

1. Mão ou paleta

2. Pestana

3. Tarrachas ou Cravelhas

4. Trastes

5. Tirante ou Tensor (“Alma”)

6. Marcação

7. Braço

8. Tróculo (Junta do Braço)

9. Corpo

10. Captadores

11. Potenciômetros

12. Ponte

13. Escudo

14. Cordas

Figura 1.1 – Guitarra Elétrica. [3]

Page 17: Relatório Final - PFG - Julio - 2010

17

1.2.1 Braço

O braço da guitarra (Figura 1.1) é composto de uma barra maciça e rígida de um tipo

de madeira diferente da utilizada no corpo, onde é fixado. Madeiras de grande resistência à

tração são preferíveis e uma das mais utilizadas é o mogno. É responsável pela fixação de

uma das extremidades das cordas e para permitir a execução das notas através da variação do

comprimento das mesmas. Fazem parte do braço: a “mão”, a pestana, a escala, os trastes e

alguns elementos decorativos (de madrepérola, marfim ou ébano) utilizados na marcação. [3]

O braço pode ser fixado ao corpo por parafusos. Em alguns casos, um tirante é

utilizado para se opor à curvatura provocada pela tensão das cordas. A fixação do braço é

crítica para a afinação do instrumento, pois a variação no ângulo do braço em relação ao

corpo pode provocar variações na altura das notas. Indesejável na guitarra clássica, este efeito

pode ser usado para obter certas inflexões na altura (bends), sobretudo no blues. [3]

1.2.2 Mão e Tarrachas

A mão ou paleta é responsável pela fixação das tarrachas, usadas para afinar o

instrumento, fixada na extremidade do braço formando um pequeno ângulo para facilitar o

posicionamento das cordas sobre a pestana. Em geral é feita da mesma madeira do braço 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 tensão correta de cada corda. As engrenagens garantem uma relação de forças tal que

impeça o afrouxamento das cordas durante a execução. Na maior parte das guitarras há três

tarrachas de cada lado da mão. Em algumas guitarras elétricas é utilizada a configuração de

seis cravelhas em linha em um dos lados da mão. [3]

Page 18: Relatório Final - PFG - Julio - 2010

18

1.2.3 Pestana

A pestana é uma pequena barra de osso, plástico ou madrepérola, fixada entre o início

do braço e a mão. Possui um pequeno sulco entalhado para passagem de cada corda que

permite o posicionamento correto das mesmas. Apóia as cordas na extremidade do braço. É o

ponto de origem do comprimento das cordas (traste zero). Hoje, em alguns modelos de

guitarras elétricas, há pestanas especiais que possuem travas, como parafusos, que impedem

que o instrumento seja desafinado na execução de alavancadas (vibratos artificiais). [3]

1.2.4 Escala

Feita de uma madeira diferente do resto do braço, como ébano, a escala é a parte do

instrumento onde as cordas são apoiadas quando o músico quer dividí-la. É sobre ela que os

trastes são montados. Possui marcas em forma de círculo, losangos ou triângulos, incrustadas

por marchetaria que são de madrepérola, marfim ou ébano. Às vezes são pintadas e servem

para ajudar o músico 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 idéia de uma onda fluindo, muito utilizado

em alguns ritmos agitados, porém é principalmente usado no heavy metal e no rock. [3]

Page 19: Relatório Final - PFG - Julio - 2010

19

1.2.6 Trastes

Os trastes são pequenas barras (alpaca ou ligas de níquel) montadas na escala que

definem os pontos em que a corda deve ser dividida para obter cada nota. Quando o músico

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 são montados para permitir que as guitarras tenham temperamento igual. A

razão entre as distâncias de dois trastes consecutivos é = 1,059463, aplicada

sucessivamente a cada intervalo. As casas próximas à pestana são mais largas que as próximas

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

equação: onde d é o comprimento total da corda entre a ponte e a pestana. [3]

1.2.7 Encordoamento

O som da guitarra é produzido pela vibração das cordas de aço, tensionadas e

montadas de forma que vibrem livremente sem bater no instrumento. As mais finas usadas

para as notas mais agudas, são constituídas de um fio único. As grossas são cabos de nylon,

de aço ou de seda envoltos por uma espiral de um fio fino feito de aço que permite maior

resistência à tração, estabilidade de afinação e flexibilidade do que seria possível. [3]

As cordas são fixadas aos furos da ponte através de um nó ou uma pequena esfera

fixada a uma de suas extremidades, que por ser mais larga que o furo não consegue passar por

ele, prendendo a corda. Em algumas guitarras as cordas passam por furos através do corpo do

instrumento e são fixadas na sua parte posterior. A altura da ponte é importante para definir a

Page 20: Relatório Final - PFG - Julio - 2010

20

distância entre as cordas e a escala, pois a afinação do instrumento pode sofrer variações se a

distância das cordas for muito grande. Cordas muito próximas da escala podem encostar-se

aos trastes ao vibrar, o que produz um ruído desagradável (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 são mais altas que o braço e o corpo do instrumento, as

cordas ficam estendidas e tensionadas entre essas duas peças e podem vibrar livremente

quando dedilhadas ou tangidas por uma palheta. [3]

As guitarras são construídas para serem tocadas com o braço na mão esquerda e o

corpo na direita onde os sulcos da pestana são dispostos de forma que a corda mais grossa

fique em cima e as mais finas embaixo. A distância 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 tensão aumenta ligeiramente a afinação da nota.

Mesmo tênue esse efeito pode causar desafinações em alguns acordes. [3]

Essas assimetrias obrigam a construção de versões diferentes para destros e canhotos.

Muitos músicos adaptam o instrumento para execução invertida, outros viram os instrumentos

e tocam com técnica espelhada, onde os bordões, 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 afinação. Estilos como o blues,

o rock, o folk e o heavy metal, que utilizam muitos bends e vibratos não sofrem tanto com

esses problemas de afinação, mas a execução erudita com as mãos trocadas, sim. [3]

1.3 Partitura

Uma partitura é uma representação escrita de música padronizada mundialmente que

dispõe de símbolos próprios (notas musicais) que se associam a sons. Na música assistida

por computador, a partitura, ao contrário das tablaturas, desempenha um papel crucial. [4]

Page 21: Relatório Final - PFG - Julio - 2010

21

Através de tecnologias como MIDI é possível traduzir uma partitura integralmente

para um formato legível pelo computador ou instrumentos eletrônicos para posterior

reprodução. Uma partitura não exprime apenas um instrumento. Pode incluir vários, cada um

designado por voz e mesmo a letra da música. 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 são: 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 notação musical padrão representa o ritmo e a duração de cada nota e a sua

altura relativa à escala baseada em uma divisão 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 símbolos rítmicos da tablatura dizem quando

iniciar uma nota, mas quase nunca há uma indicação precisa de quanto tempo ela deve durar,

a duração fica a critério do intérprete. Por isso é comum dizer que a tablatura é uma notação

prescritiva e a notação convencional (em pauta), descritiva. [5]

Page 22: Relatório Final - PFG - Julio - 2010

22

A tablatura para cordas pinçadas é baseada sobre uma representação 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 introdução da música "Stairway to

Heaven", da banda Led Zeppelin, as linhas representam as cordas da guitarra (da mais aguda

para a mais grave) e os números 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 usuário inserir, editar e imprimir notação

musical, em variados graus de sofisticação. Variam de programas que escrevem uma simples

canção, peças para piano ou tablatura, até aqueles que podem lidar com a complexidade de

obras orquestrais, notação especial e editoração musical de alta qualidade. [6]

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

controlador MIDI. Muitos programas também permitem inserção por meio de sistemas

de reconhecimento óptico de caracteres, ou ainda tocando ou cantando ao microfone. [6]

Page 23: Relatório Final - PFG - Julio - 2010

23

Muitos editores de partitura também permitem que a música seja reproduzida via

MIDI ou, em alguns casos, por programas sintetizadores. Isso significa que os editores de

partitura têm algo em comum com os seqüenciadores - muitos dos quais podem também, até

certo ponto, escrever notação musical - embora editores de partitura sejam usados

primordialmente para isso, enquanto os seqüenciadores o são para gravar e tocar música. [6]

Alguns editores permitem que o trabalho seja personalizado e ajustado de acordo com

as exigências dos editores para produzir editoração musical de alta qualidade e adequá-lo ao

estilo específico de cada estabelecimento. Outros permitem aos usuários publicarem seus

trabalhos na Internet, onde podem ser reproduzidos, transpostos e impressos, em certos casos,

cobrando-se uma taxa. [6]

Muitos editores oferecem outras funções como transposição, produção de partes

cavadas de uma partitura ou aplicação de transformações como retrocesso. Alguns podem

criar automaticamente exercícios instrumentais e folhas de estudo. Alguns dão suporte a

plugins, frequentemente desenvolvidos por usuários ou outras empresas. [6]

Quase todos os editores de partituras usam seus próprios formatos de arquivo. A fim

de compartilhar arquivos entre diferentes editores (ou com outros tipos de programas,

como seqüenciadores), muitos editores podem também importar e exportar um ou mais

padrões de formato de arquivo de intercâmbio, como: [6]

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

MusicXML: tem se tornado o formato padrão de intercâmbio para notação. [6]

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

Há formatos textuais de edição de partitura, como ABC e Tablatura ASCII. [6]

Page 24: Relatório Final - PFG - Julio - 2010

24

1.6 MIDI

1.6.1 Protocolo MIDI

MIDI é um protocolo; mas o termo é usado também para os diversos componentes do

sistema, como adaptadores, conectores, arquivos, cabos, etc. Diferente de outros formatos

(como WAV e MP3), o arquivo MIDI não contém áudio, e sim instruções para produzí-lo. É

uma partitura digitalizada, que define os instrumentos, notas, timbres, ritmos, efeitos e outras

características utilizadas para um sintetizador gerar eventos musicais. Até a década de 70, a

comunicação entre instrumentos musicais era impraticável. 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 eletrônicos digitais ou

analógicos. Esse protocolo foi introduzido no mesmo ano, equipando o sintetizador Prophet-

600, fabricado pela Sequential Circuits (empresa que apresentou a proposta original, que foi

revisada e aprovada por todos). A partir daí, a indústria eletrônica musical passou a ter um

padrão de comunicação, que viabilizou o surgimento de inúmeros instrumentos e

equipamentos compatíveis entre si. A importância de um padrão como o MIDI é enorme.

Antes disso, vários fabricantes tentaram comercializar sistemas semelhantes, que só eram

compatíveis com eles mesmos. Como o MIDI não tem "dono", qualquer empresa pode usá-lo

em seus produtos, não tendo que pagar e a gratuidade do uso do MIDI foi um fator essencial

para a sua disseminação. [7] [8]

1.6.2 Mensagens MIDI

Cada mensagem MIDI é, geralmente, composta por três palavras e é enviada/recebida

serialmente entre duas UART. Cada palavra é composta de 10 bits, sendo uma comunicação

assíncrona entre dispositivos, necessita ter dois bits de sinalização de início e final de palavra,

e como característica da transmissão deve-se observar a manutenção do sinal em 1 entre

palavras e mensagens. Uma analogia usada é à comunicação de dois computadores via

modem. Em cada mensagem enviada é transmitido primeiro o bit menos significativo. [7]

Page 25: Relatório Final - PFG - Julio - 2010

25

1.6.2.1 Transmissão das Mensagens MIDI

Para transmissão, cada mensagem MIDI é recebida em paralelo por uma UART que

converte em um formato serial. Essa comunicação serial é utilizada entre os dispositivos a

uma taxa de transmissão de 31.250 bits por segundo (31,25 kbps). O primeiro e o último bit

são start e stop e são usados para sinalizar os dispositivos antes e após 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 interpretação das

mensagens MIDI que são 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 máquina. [7] [9]

Figura 1.4 – Esquema de uma típica mensagem MIDI. [9] As interfaces de MIDI são utilizadas quando o computador utilizado não possui portas

MIDI acopladas. Existem três tipos de interfaces MIDI: serial, paralela e multiline. Na serial

os bits são enviados um a um para a interface MIDI que fica responsável por repassar a

mensagem aos outros dispositivos. A paralela envia todos os 10 bits de uma mensagem para a

interface MIDI. Por possuir esta característica, 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, também

chamada multiport, conecta o computador a diversas linhas MIDI independentes. Cada linha

pode ser abstraída como uma rede de 16 canais MIDI que possibilita ao usuário usar mais do

que as 16 portas MIDI definidas pelo protocolo. [9]

Page 26: Relatório Final - PFG - Julio - 2010

26

1.6.2.2 Controladores

Controladores são dispositivos que geram mensagens MIDI. [7]

1.6.3 A Conexão MIDI

Uma das maiores preocupações dos idealizadores do MIDI, foi de sua inclusão não

produzir um aumento no custo de fabricação que foi conseguido devido aos circuitos de

interfaceamento, e às facilidades para o usuário 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 transmissão de dados MIDI se dá de forma unidirecional e

designamos os instrumentos como "transmissor" ou "mestre" aquele de onde a informação sai

e "receptor" ou "escravo" aquele aonde a informação chega. Pode-se operar o MIDI em modo

bidirecional, de forma que os equipamentos tanto recebem quanto transmitem informações.

Os instrumentos MIDI possuem conexões apropriadas para as ligações MIDI, que são MIDI

In, MIDI Out e MIDI Thru conforme Figura 1.5. A primeira serve para o instrumento receber

informações; ela é a entrada de dados para o instrumento receptor. A conexão MIDI Out,

serve para o instrumento transmitir informações; ela é a saída de dados para o instrumento

transmissor. A terceira conexão, que em alguns instrumentos pode não existir, é uma saída de

dados serve para retransmitir para outros as informações recebidas pelo instrumento, e serve

para fazer encadeamentos múltiplos de instrumentos. [8]

Figura 1.5 – Conectores de passagem (THRU), de saída (OUT) e entrada (IN) MIDI. [7]

Page 27: Relatório Final - PFG - Julio - 2010

27

Nos circuitos eletrônicos de interfaceamento MIDI mesmo que o usuário faça a

conexão errada entre as conexões MIDI, os circuitos apenas não funcionam. Em um único

cabo pode haver informações simultâneas para diversos instrumentos diferenciados,

conseguido pela canalização das informações, e se os canais de MIDI do transmissor e do

receptor não estiverem ajustados adequadamente, a comunicação não poderá acontecer. [8]

1.6.3.1 Tipos de Conexão

A forma mais simples e comum de interligação MIDI (Figura 1.6) é a saída 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 encadeá-

los usando a conexão MIDI Thru (Figura 1.7). As informações geradas pelo instrumento

transmissor chegam ao primeiro teclado receptor e são usadas por ele e as mesmas

informações passam através do teclado receptor e chegam à entrada do módulo sintetizador,

que usará as informações, desde que o canal de recepção esteja selecionado corretamente. [8]

Figura 1.7 – Teclado / MIDI Thru. [8]

Page 28: Relatório Final - PFG - Julio - 2010

28

O computador pode funcionar tanto como receptor (quando você toca a música no

teclado e o computador armazena as informações MIDI), quanto como transmissor (quando

ele re-executa a música no teclado, a partir das informações MIDI armazenadas) (Figura 1.8).

Há duas ligações In - Out: uma do computador para o teclado; outra do teclado para o

computador. As interfaces MIDI dos computadores não possuem conexão MIDI Thru. [8]

Figura 1.8 – Teclado / Computador. [8]

1.6.4 Os canais MIDI

Para transmitir informações de notas e outros eventos musicais, o sistema MIDI dispõe

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 informações se

estiver ajustado para o mesmo canal MIDI (no caso canal 1). Os equipamentos atuais possuem

ajustes separados de canal de transmissão e recepção, onde um sintetizador pode estar

configurado para transmitir MIDI pelo canal 2, e receber pelo canal 4. Como os instrumentos

mais modernos são "multitimbrais" podem receber em vários canais simultâneos,

independentemente do ajuste do seu canal de transmissão. [8]

Figura 1.9 – Transmissão / Recepção. [8]

Page 29: Relatório Final - PFG - Julio - 2010

29

Ao se conectar dois ou mais equipamentos MIDI deve-se verificar se estão

configurados os canais de transmissão e recepção. O número máximo de canais de MIDI

"trafegando" pelo cabo é 16. Nos estúdios profissionais, para se ultrapassar esse limite, usam-

se equipamentos (ex: interfaces MIDI) com múltiplas portas de saída MIDI Out, de forma que

por cada uma são transmitidos simultaneamente 16 canais MIDI. Um sistema com oito saídas

pode trabalhar com até 128 canais de MIDI. Alguns canais são usados para controlar

processadores de efeitos, mesas de mixagem e outros recursos de estúdio. [8]

1.6.4.1 Sintetizadores Multitimbrais

Num equipamento multitimbral é como se existissem vários 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 música (bateria, baixo, piano, cordas, sax, etc.). Cada parte timbral atua como um

instrumento "receptor", operando em seu próprio canal de recepção MIDI (o canal 10 é

reservado para bateria e percussão). Se duas partes timbrais estiverem configuradas para

receber pelo mesmo canal de MIDI, executarão juntas as mesmas notas. A multitimbralidade

viabilizou uma redução muito grande de custo nos estúdios MIDI, pois um sintetizador

multitimbral pode fazer sozinho o que antes só era possível com vários equipamentos

separados. [8]

Figura 1.10 – Transmissão / Recepção em 16 canais. [8]

Page 30: Relatório Final - PFG - Julio - 2010

30

1.6.5 Standard MIDI Files

Apesar da especificação original do MIDI padronizar a linguagem para controle

musical, não descreveu padrão para a formatação dos arquivos de dados. Tinham-se vários

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 especificação chamada SMF. Os dispositivos continuam com seu

funcionamento interno específico, porém a padronização dos arquivos MIDI tornou tais

dispositivos mais portáveis e possibilitou a troca de informações musicais de maneira mais

fácil. A principal diferença 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

rótulo que pode ser de 8 ou 32 bits, especificando em que momento do pulso de clock ela

deverá ser executada. [9]

1.6.6 Limitações do MIDI

A limitação de largura de banda se dá devido à quantidade de dados de controle que

são necessários durante a execução de uma música. A utilização de vibrato em apenas uma

voz pode consumir praticamente toda a largura de banda MIDI. Algumas formações de acorde

também podem parecer arpejos (execução sucessiva das notas de um acorde) ao invés de um

som harmônico, mais especificamente quando o tempo das notas que formam o acorde é

muito pequeno. Isto se deve à característica seqüencial de MIDI, em que as notas são enviadas

em mensagens diferentes, uma de cada vez. Cada via de comunicação MIDI exige seu próprio

canal, onde a comunicação em um único cabo não é full-duplex. Na comunicação entre dois

dispositivos MIDI em duas vias, são necessários dois cabos. A quantidade de cabos é duas

vezes igual à quantidade de dispositivos e em um ambiente como um estúdio isso pode se

tornar uma barreira. As mensagens MIDI não especificam nada em relação ao timbre que a

nota que está sendo enviada terá. O resultado é que uma mesma nota pode soar como um

baixo acústico em um sintetizador ou como um piano em outro. Isto se deve ao fato de MIDI

ser um protocolo de representação de música que procura ser independente do dispositivo que

Page 31: Relatório Final - PFG - Julio - 2010

31

irá utilizá-lo. Da mesma forma, a representação de pitch (alteração na freqüência da nota) de

MIDI é fraca. Apesar de possibilitar a utilização 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, são intercaladas e isoladas como dois

garfos com os dentes encaixados um dentro do outro, sem se encostarem. Quando o usuário

tocar em qualquer parte da placa com o dedo, ambas as trilhas de circuito impresso são

tocadas ao mesmo tempo e haverá uma diminuição da resistência entre as duas trilhas em

virtude da pele do dedo apresentar uma resistência. [10]

Figura 1.11 – Placa de Toque. [10]

A resistência entre as duas trilhas na placa de toque (quando não é tocada) é de

milhões de Ohms. Quando tocada, a resistência se reduz para aproximadamente 100kΩ.

Quando o dedo atua com mais firmeza a resistência 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 resistência. Esta placa pode ser usada como um sensor de toque

ou de chuva. Quando a placa de toque é conectada ao circuito, a mudança da resistência é

sentida pelo mesmo através da corrente que por ela passa. O padrão de garfo intercalado serve

para multiplicar a área de contato do dedo, que se comporta como diversos resistores em

paralelo, diminuindo a resistência efetiva do circuito. [10]

Page 32: Relatório Final - PFG - Julio - 2010

32

O tipo de contato utilizado na placa de toque foi uma das formas utilizadas como

interruptor de toque em diversos dispositivos eletrônicos em lugar de um botão de empurrar.

Porém se tornou menos utilizado pela diminuição da confiabilidade de seu funcionamento,

pois em condições de extremos como pele muito seca, excesso de óleo, manteiga ou outros

resíduos ou mesmo a utilização de luvas impedia os circuitos de funcionarem adequadamente,

por isso as placas de toque foram substituídas por interruptores de membrana na maioria dos

dispositivos eletrônicos já que as membranas requerem apenas uma leve pressão e nenhuma

sujeira pode entrar no interruptor que está lacrado. [10]

1.8 Teclado de Membrana

É um conjunto de teclas não móveis, com contornos e símbolos impressos em

superfície plana e flexível (Figura 1.12), e contatos elétricos entre a superfície e os circuitos

subjacentes quando pontos-chave são pressionados. Foram usados em alguns computadores

do início da década de 1980 e desde então são usados em dispositivos eletrônicos, barato

quando produzido em massa, de fácil manutenção, longa vida útil e mais resistente à sujeira e

líquidos derramados do que quaisquer outros teclados. É utilizado em equipamentos

hospitalares, industriais e outros dispositivos que exijam limpeza fácil e constante. Devido ao

baixo retorno táctil, 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 não foram bem aceitos no mercado como se esperava e

seu uso ficou restrito à eletrônica de baixo custo (como controles remotos). [11]

Figura 1.12 – Teclado de Membrana. [12]

Page 33: Relatório Final - PFG - Julio - 2010

33

1.9 LDR

LDR é um transdutor (sensor) que converte a luz em valores de resistência. É feito de

sulfeto de cádmio (CdS) ou seleneto de cádmio (CdSe). Sua resistência diminui (resistência

mínima, 100Ω) quando a luz que incide sobre ele aumenta, e quando a luz diminui, a

resistência no LDR aumenta (resistência máxima, 1MΩ) (Figura 1.13). [13]

Um LDR é sensível das faixas: Infravermelho (IR), Luz visível e Ultravioleta (UV),

pode ser soldado de maneira simples e é muito frequentemente utilizado nas chamadas

fotocélulas que controlam o acendimento de poste de iluminação e luzes em residências.

Também é utilizado em sensores foto-elétricos 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 elétrica. 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 ausência de luz incidente.

Como os tempos de subida e de queda (parâmetros de mudança de estado) são da ordem de

nanossegundos, o dispositivo pode ser usado na aplicação de contagem ou comutação de alta

velocidade. O germânio é mais adequado para luz incidente na região infravermelha,

abrangendo um espectro mais amplo de comprimentos de onda do que o silício, apesar de sua

corrente negra maior. O nível de corrente gerada pela luz incidente sobre um fotodiodo não é

suficiente para ser usado em controle direto, sendo necessário estágio de amplificação. [14]

Page 34: Relatório Final - PFG - Julio - 2010

34

1.11 Fototransistores

O fototransistor pode detectar a incidência de luz e fornecer um ganho. Como o

transistor convencional, o fototransistor é uma combinação de dois diodos de junção, porém,

associado ao efeito transistor aparece o efeito fotoelétrico. Em geral, possui apenas dois

terminais acessíveis, o coletor e o emissor, sendo a base incluída apenas para eventual

polarização ou controle elétrico. Como nas outras células fotocondutivas, a incidência de luz

(fótons) provoca o surgimento de lacunas na vizinhança da junção base-coletor. Esta tensão

conduz as lacunas para o emissor, enquanto os elétrons passam do emissor para a base, o que

provoca um aumento da corrente de base, o que implica numa variação 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 variação 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 ausência de luz, a corrente de base é zero e o

fototransistor está cortado, resultando na tensão do coletor igual à tensão de polarização Vcc.

Quando há luz, a tensão no coletor irá diminuir devido ao aumento da corrente. A aplicação

mais usual é a de um interruptor. Enquanto não há luz incidindo no fototransistor, não haverá

uma corrente no emissor, e a tensão de saída será zero, estando ele em corte. Com a

incidência de luz, teremos uma corrente no emissor, provocando uma tensão igual à IeRe. [14]

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

(corrente sem incidência de luz) dobrará. Para elevadas temperaturas, essa corrente terá um

valor significativo em relação à corrente total. Utilizando dois fototransistores compensamos

esse erro. Sua base é sensível à luz, quando há presença da mesma o transistor conduz,

entretanto quando não há presença de luminosidade, o transistor fica cortado. Quando um

facho de luz é apontado para o receptor, este conduz, logo a saída estará em nível lógico "0".

No entanto, quando não há presença de luz, o receptor não está conduzindo, logo a saída

estará em nível lógico "1". [14]

Page 35: Relatório Final - PFG - Julio - 2010

35

1.12 Módulos ZigBee/XBee

A ZigBee permite comunicações robustas e opera na freqüência 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 não requerem licença para funcionamento. As Redes

ZigBee oferecem uma excelente imunidade contra interferências, e a capacidade de hospedar

milhares de dispositivos numa Rede (mais que 65 mil), com taxas de transferências de dados

variando entre 20kbps a 250kbps. O Protocolo ZigBee é destinado a aplicações industriais,

portanto, o fator velocidade não é crítico numa implementação ZigBee. [15]

XBee™:

Performance

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

- Alcance ambientes internos/zonas

urbanas: 30m; [15]

- Alcance de RF em linha visível para

ambientes externos: 100m; [15]

- Sensibilidade receptor: -92 dBm; [15]

Alimentação

- Itx (típico): 45 mA @ 3.3 V; [15]

- Irx (típico): 50 mA @ 3.3 V; [15]

Propriedades físicas:

- Dimensões: (2.438cm x 2.761cm); [15]

XBee-Pro™:

Performance

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

- Alcance em ambientes internos/zonas

urbanas: 100m; [15]

- Alcance de RF em linha visível para

ambientes externos: 1,6Km; [15]

- Sensibilidade receptor: -100 dBm; [15]

Alimentação

- Itx (típico): 215 mA @ 3.3 V; [15]

- Irx (típico): 55 mA @ 3.3 V; [15]

Propriedades físicas

- Dimensões: (2.438cm x 3.294cm); [15]

Page 36: Relatório Final - PFG - Julio - 2010

36

XBee™ e XBee-Pro™:

Performance

- Freq.operação: ISM 2.4GHz; [15]

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

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

Alimentação

- Tensão de alimentação: 2.8 à 3.4v;

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

Propriedades físicas

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

- Temp. de operação: -40 to 85º C; [15]

- Opções de antena: Conector U.FL RF,

Chip ou Chicote (whip); [15]

Rede

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

- Manipulação de erro: Retransmite novamente & reconhecimento; [15]

- Topologia de Rede: (Par-a-par), ponto-a-ponto, ponto-a-multiponto e malha; [15]

- Endereçamento: 65 mil endereços de rede disponíveis para cada canal; [15]

- Opções de filtros: PAN ID, canais e endereços; [15]

- Criptografia: 128-bit AES; [15]

- Número de canais selecionáveis via software: 16 canais seqüência direta; [15]

Geral

- Faixa de freqüência: 2,4000 – 2,4835 GHz; [15]

Os módulos XBee/XBee-Pro™ operam em dois modos diferentes: [15]

Page 37: Relatório Final - PFG - Julio - 2010

37

Modo Transparente

Os dados recebidos da UART pelo pino DI (RX) são colocados na fila para transmissão

via RF. Os dados recebidos do canal de RF são transmitidos através do pino DO (TX) e

recebidos como uma comunicação Serial RS232 padrão (Figura 1.14). [15]

Figura 1.14 – Frame de dado padrão RS232 (8-N-1). [15]

Modo API

É baseado em frame e assim estende o nível para o qual uma aplicação de Host pode

interagir com as capacidades de Rede do módulo. No modo API (Figura 1.15) os dados

transmitidos e recebidos estão contidos em frames, que definem operações ou eventos dentro

do módulo. Através desse modo de operação é possível um determinado módulo enviar

endereço fonte, endereço 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 módulos

XBee/XBee-pro™. [15]

Page 38: Relatório Final - PFG - Julio - 2010

38

Tabela 1.1 - Descrição dos pinos dos módulos XBee/XBee-Pro™. [15] Pino

# Nome Direção Descrição

1 VCC - Alimentação 3,3v 2 DOUT Saída Saída de dados da UART

3 DIN / Entrada Entrada de dados da UART

4 DO8* Saída Saída digital 8

5 Entrada Inicializa módulo (um pulso nível 0 de

pelo menos 200ms)

6 PWM0 / RSSI Saída Saída do PWM 0 / Indicador de Força do

sinal de RF (RX) 7 PWM1 Saída Saída do PWM 1

8 (Reservado) - Ainda não tem uma função definida

(futura implementação)

9 /

SLEEP_IRQ / DI8

Entrada Linha de Controle da Função Sleep ou

Entrada digital 8

10 GND - Terra

11 AD4 / DIO4 Entrada/Saída Só Entrada Analógica 4 ou Entrada/Saída

Digital 4

12 / DIO7 Entrada/Saída Controle de Fluxo CTS ou Entrada/Saída

Digital 7 13 ON / SLEEP Saída Indicador de Estado do Módulo

14 VREF Entrada Voltagem de Referência para as Entradas

A/D

15 Associação / AD5 / DIO5

Entrada/Saída Indicador de Associação, só Entrada

Analógica 5 ou Entrada/Saída Digital 5

16 / AD6 / DIO6

Entrada/Saída Controle de Fluxo RTS, só Entrada

Analógica 6 ou Entrada/Saída Digital 6

17 AD3 / DIO3 Entrada/Saída Só Entrada Analógica 3 ou Entrada/Saída

Digital 3

18 AD2 / DIO2 Entrada/Saída Só Entrada Analógica 2 ou Entrada/Saída

Digital 2

19 AD1 / DIO1 Entrada/Saída Só Entrada Analógica 1 ou Entrada/Saída

Digital 1

20 AD0 /DIO0 Entrada/Saída Só Entrada Analógica 0 ou Entrada/Saída

Digital 0

Os módulos XBee/XBee-Pro são configurados através de comandos AT (Figura

1.16), parecidos com os usados para configurar modems. Nos módulos XBee/XBee-Pro Série

1 os comandos ATs servem para configurar ou ler parâmetros no módulo local. Já na Série 2 é

possível enviar comandos ATs remotamente de um módulo para outro. Para configurar um

XBee/XBee-Pro, precisamos usar somente os pinos 2-TX, 3-RX e o GND do módulo. Com a

placa CON-USBBEE é possível configurar um módulo através do programa X-CTU, tanto a

partir da Aba "Terminal", digitando os comandos manualmente, como também através da Aba

Page 39: Relatório Final - PFG - Julio - 2010

39

"Modem Configuration", ou mesmo através de um programa como o HyperTerminal do

Windows ou outro similar. Para fazer o módulo XBee/XBee-Pro entrar no modo comando,

digite três caracteres "+++" (não pressione a tecla <ENTER>) na janela "Terminal" do X-

CTU ou no HyperTerminal do windows. Se o módulo recebeu o comando corretamente, ele

confirma enviando a mensagem "OK". Após o OK o módulo está apto para receber comandos

de escrita ou leitura. [15]

Figura 1.16 – Formato para enviar comandos ATs ao módulo XBee/XBee-Pro. [15]

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

Tabela 1.2 – Comandos dos módulos XBee/XBee-Pro™ 1. [15]

Comando digitado Resposta do

XBee/XBee-Pro Significado

+++ OK<CR>

Faz o módulo XBee/XBee-Pro entrar no modo comando (os caracteres "+++" devem ser digitados num intervalo de 1 segundo). Após o OK, se nenhum comando for digitado num intervalo de +/- 10 segundos, o módulo volta ao estado idle (pronto para transmitir ou

receber). ATDL 5001<ENTER> OK<CR> Altera o endereço destino (DL) do módulo local para 5001.

ATDL <ENTER> 5001<CR> Lê o endereço destino (DL) do módulo local. ATMY 5000<ENTER> OK<CR> Altera o endereço fonte (MY) do módulo local para 5000.

ATMY <ENTER> 5000<CR> Lê o endereço fonte (MY) do módulo local.

ATWR <ENTER> OK<CR> Grava as modificações efetuadas, na memória não volátil (Flash) do

módulo.

ATCN<ENTER> OK<CR> Fecha o modo comando e volta ao estado idle (pronto para

transmitir ou receber).

Page 40: Relatório Final - PFG - Julio - 2010

40

Observação:

*Se o comando WR não for executado, as modificações permanecerão na

memória do módulo, somente enquanto o mesmo estiver recebendo alimentação da fonte de

energia elétrica; [15]

*Todos os parâmetros numéricos de configuração do módulo devem ser entrados

em hexadecimal (não digitando o prefixo 0x); [15]

É possível enviar comandos para configurar o módulo em uma única linha: [15]

Tabela 1.3 – Comandos dos módulos XBee/XBee-Pro™ 2. [15]

Comando digitado Resposta do XBee/XBee-Pro

Significado

ATDL 5001,MY 5000,WR,CN<ENTER> OK , OK , OK<CR> Altera o endereço DL para 5001, o MY para 5000, grava os dados na memória

Flash e sai do modo comando.

ATNI Sensor_Temp_01<ENTER> OK<CR>

Dá um nome para o módulo XBee-XBee-Pro - "Sensor_Temp_01".

Pode usar até 20 caracteres ASCII para nomear o módulo.

ATNI <ENTER> Sensor_Temp_01<CR> Retorna o nome do módulo XBee/XBee-

Pro.

ATVR <ENTER> 10C0<CR> Retorna a versão do firmware gravado no

módulo XBee/XBee-Pro.

ATHV <ENTER> 180B<CR> Retorna a versão do hardware do módulo

XBee/XBee-Pro.

Velocidades válidas para a interface serial de um módulo XBee/XBee-Pro: [15]

1200bps; 2400bps; 4800bps; 9600bps; 19200bps; 38400bps; 57600bps; 115200bps; [15]

Tabela 1.4 – Comandos dos módulos XBee/XBee-Pro™ 3. [15]

Comando digitado Resposta do XBee/XBee-Pro

Significado

ATBD4<ENTER> ATWR <ENTER> ATCN<ENTER>

OK<CR> OK<CR> OK<CR>

Muda a velocidade do módulo para trabalhar com 19200bps, e salva

mudança na memória Flash.

Page 41: Relatório Final - PFG - Julio - 2010

41

Observação:

Após alterar a velocidade, é preciso mudar a velocidade da interface Serial do X-

CTU, na Aba " PC Settings", para que possamos nos comunicar com ele. [15]

Se as configurações a serem feitas forem muitas, o método mais fácil é alterar os

parâmetros através da Aba "Modem Configuration" do programa X-CTU, com os passos

abaixo: [15]

1) Conecte um módulo XBee ou XBee-Pro através 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 botão "Read"; se não for possível ler o módulo por incompatibilidade da versão

do firmware, clique no botão "Download New Versions" (é preciso estar conectado à

Internet). Após a atualização, feche o X-CTU e abra-o novamente. Repita todos os passos

anteriores. [15]

5) Se houve sucesso no passo anterior, modifique os parâmetros que deseja e depois clique no

botão "Write" para gravar na memória Flash do módulo XBee/XBee-Pro. [15]

Siga os passos abaixo para colocar segurança nos módulos XBee/XBee-Pro. Para

esses exemplos atualize a versão do firmware com a 10C0. [15]

1) Conecte um módulo XBee ou XBee-Pro através 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]

Page 42: Relatório Final - PFG - Julio - 2010

42

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

4) Clique no botão "Read"; se não for possível ler o módulo, por incompatibilidade da versão

do firmware, clique no botão "Download New Versions" (é preciso estar conectado à

Internet). Após a atualização, feche o X-CTU e abra-o novamente. Repita todos os passos

anteriores. [15]

5) Se houve sucesso no passo anterior, modifique os seguintes parâmetros: [15]

EE: 1 (o parâmetro 1 habilita a segurança no módulo). [15]

KY: ABABABABABABABABABABABABABABABAB (são 16 bytes hexadecimal de

dois dígitos cada, ou seja, 8 x 16 = 128 bits de encriptação AES). [15]

A chave acima é um exemplo, substitua a mesma por uma chave secreta, que só você

conheça.

6) Clique no botão "Write" para gravar na memória Flash do módulo XBee/XBee-Pro. [15]

7) Repita os passos acima para todos os módulos que deseje que trabalhe de forma segura.

Somente os módulos que tiverem a mesma chave saberão decodificar os dados recebidos. [15]

Nota:

Os módulos que não fazem parte da Rede criptografada, só enxergam os dados a

seguir, que podem ser requisitados através do comando ND (Node Discover): [15]

MY - (endereço fonte do módulo remoto); [15]

SH - (parte alta (32 bits) do número serial do módulo remoto); [15]

SL - (parte baixa (32 bits) do número serial do módulo remoto); [15]

DB - (Nível do sinal recebido - RSSI). [15]

NI - (String contendo o nome do módulo remoto, se nele constar). [15]

Page 43: Relatório Final - PFG - Julio - 2010

43

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 usuário a posição de cada

dedo no braço e no corpo do controlador, atuando na formação de notas e acordes.

2. Microcontrolador : Recebe as informações de nível lógico provindas dos sensores de

toque, identifica a quais eventos as combinações recebidas correspondem e envia

através do módulo transmissor as informações pertinentes ao computador.

3. Módulo Transmissor: Recebe as informações de forma serial do microcontrolador e as

envia através de RF para o módulo receptor.

4. Fonte de Alimentação: Fornece energia para o funcionamento dos blocos 2 e 3.

5. Módulo Receptor: Recebe as informações por RF do módulo transmissor e as envia de

forma serial através da porta USB para o computador.

Page 44: Relatório Final - PFG - Julio - 2010

44

6. Computador: Recebe as informações de forma serial através da porta USB, e as

transforma em eventos MIDI (como comando nota pressionada e quais notas serão

tocadas), executando os respectivos sons através de um software compatível.

7. Corpo do Controlador: Feito em MDF, onde são 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 três opções principais para a utilização da mão que compõe notas e

acordes no braço do controlador: micro-chaves, placa de toque e teclado de membrana. Dentre

as três, para uma das mãos foram testadas duas placas de toque matriciais, confeccionadas

especialmente para este trabalho e foi feito um teclado de membrana. Já para a mão que toca

as “cordas virtuais” testou-se o uso de LDRs e pares de LED-infravermelho/fototransistor,

que apresentaram melhor desempenho em relação 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 intersecção 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(nível lógico baixo), com dimensões de 40cm

de largura, 5cm de altura e espessura desprezível (Figura 2.2). Ao serem colocados os dedos

nas intersecções dessas trilhas de “cordas” e “casas”, em cada uma delas é fechado o contato

com o terra. O microcontrolador recebe as informações através de seus pinos de I/O ligados a

essas trilhas e configurados como entrada de sinal digital, identificando a que nota

corresponde cada posição pressionada.

Page 45: Relatório Final - PFG - Julio - 2010

45

Figura 2.2 – Última Casa da Primeira Placa de Toque Matricial.

Essa primeira tentativa de placa de toque matricial não proporcionou um resultado

satisfatório, por apresentar muitos maus contatos devido ao fato de não ter-se eliminado o

cobre excedente através de corrosão á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 são

tocadas as “cordas invisíveis”, o som que escutamos é aparentemente aleatório, não

correspondendo sempre à mesma nota que deveria ser executada pelo computador.

2.1.2 Teclado de Membrana

Foi confeccionado com três partes principais que são:

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

dimensões 41,13cm de largura, 5,61cm de altura e espessura desprezível;

2) Três camadas de um adesivo de mesmo tamanho da placa de cobre com seis

aberturas retangulares em cada casa, de dimensões 1,63cm de largura, 0,5cm de altura e

espessura desprezível afastados por uma distância de 0,4cm com espaçamento de

aproximadamente 0,475cm entre casas, (totalizando 120 retângulos), grudados na placa com

intuito de isolar suas trilhas da próxima parte;

Page 46: Relatório Final - PFG - Julio - 2010

46

3) Seis tiras de um papel alumínio especial retirado do interior de uma espécie de cano

de proteção e isolação que envolve os fios de telefone utilizados nas montagens de circuitos

em protoboard, que possui uma camada de um material plástico isolante de cor azul que serve

para melhorar a resistência física do mesmo, de dimensões 41,13cm de largura,

aproximadamente 0,65cm de altura e espessura desprezível colocados sobre as camadas de

adesivo isolante.

As outras partes consistem em tiras de adesivo utilizadas para prender as tiras de papel

alumínio no adesivo isolante superior e um plástico 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 alumínio com as respectivas vias do cabo flat

utilizado para ligar o teclado de membrana nos pinos correspondentes do microcontrolador foi

necessário utilizar uma espécie de abraçadeira confeccionada com duas tiras de plástico de

dimensões 1cm x 9,5cm x 0,3cm presas por dois pares rosca/parafuso. Como infelizmente as

tiras de papel alumínio não tinham o comprimento necessário de acordo com a necessidade do

projeto, foi necessário fazer uma emenda em cada tira entre a quarta e a quinta casas com o

lado bom de sinalizar a posição da quinta casa, sinalização normalmente feita em guitarras

através de marcações decorativas no braço do instrumento.

Page 47: Relatório Final - PFG - Julio - 2010

47

As trilhas correspondentes as casas são soldadas a um cabo flat de 20 vias que é

conectado a placa do microcontrolador e também um fio soldado na trilha que corresponde ao

terra é conectado no pino da placa que recebe o terra da fonte de alimentação. 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

comércio, com a diferença de possuir três contatos (duas trilhas e cada tira de papel alumínio)

em cada ponto-chave ao invés dos dois comumente encontrados. Pressionando os retângulos

desejados para as intersecções correspondentes fecharem contato entre si, sem interferirem no

restante dos contatos disponíveis, 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, porém com as trilhas mais espessas em relação à

primeira placa de toque confeccionada e testada anteriormente, também com dupla-face.

Figura 2.4 – Última Casa da Segunda Placa de Toque Matricial.

Page 48: Relatório Final - PFG - Julio - 2010

48

A vantagem é que essa versão pôde ser corroída e assim foi eliminado o problema do

mau contato devido ao cobre excedente. Por outro lado descobriu-se que a pressão do dedo

nas trilhas precisa ser muito forte se comparada à pressão exercida no teclado de membrana,

para que seja fechado o contato entre as trilhas de cada ponto de intersecção, o que torna mais

difícil o usuário conseguir executar a(s) nota(s) que quer ouvir. Outro problema encontrado

foi a possibilidade do usuário 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 aceitação dessa placa de toque para o protótipo.

2.1.4 Teste com LDR

Utilizou-se seis LDRs, um para cada “corda invisível” de forma que o usuário 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 nível lógico alto e

quando não incide recebe nível lógico baixo, enviando assim as mensagens MIDI

correspondentes a “corda” tocada. As desvantagens são de não funcionar no escuro e o fato do

usuário ter que ser muito preciso para conseguir obter o funcionamento adequado pretendido.

2.1.5 Pares LED/Fototransistor

Para a criação das “cordas invisíveis”, 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 usuário, que faz com que o pino do microcontrolador receba uma tensão

próxima de 5V (nível lógico alto) que indica “corda tocada”, acionando assim o som

correspondente no computador.

Page 49: Relatório Final - PFG - Julio - 2010

49

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 implementação em relação à tentativa

com LDR são de poder funcionar no escuro, pois a luz dos LEDs infravermelho continua

incidindo nos fototransistores e o usuário 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 características: 36 pinos de I/O

configuráveis pelo programador (33 foram utilizados), comunicação através da UART e clock

máximo de 40MHz (utilizado). A Figura 2.6 mostra o circuito do microcontrolador.

Page 50: Relatório Final - PFG - Julio - 2010

50

Figura 2.6 – Circuito com o Microcontrolador.

Na figura ainda podemos observar os componentes ligados ao microcontrolador na

placa onde as demais são conectadas através de cabos flat nos conectores: J4 e/ou J6 a placa

das “cordas”, J8, J9 e/ou J10, J11 os pinos do braço correspondentes as “casas”, J3 e/ou J5 os

pinos do braço correspondentes às cordas e J12 o módulo transmissor. É nela que é inserida a

alimentação 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

execução dos sons e maior velocidade na utilização da taxa de transmissão necessária ao

funcionamento do protocolo MIDI, 31,25kbps.

Antes da escolha do título deste trabalho foi desenvolvida uma forma de o próprio

microcontrolador gerar o som de cada nota musical necessária para o projeto, ainda quando se

pretendia confeccionar um violão ou guitarra eletrônica onde seriam gerados os sons no

próprio protótipo, idéia que foi amadurecida até se optar por construir um controlador MIDI,

Page 51: Relatório Final - PFG - Julio - 2010

51

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 além de um amplo leque de possíveis aplicações futuras Inicialmente

estudou-se a entrada conversora analógico-digital interna do microcontrolador PIC16F877 e

em seguida programou-se uma rotina no firmware de modo que ao ser variada a tensão em

cada um dos seis pinos configurados como entrada analógica em aproximadamente 0,2V por

nota. Totalizando 23 divisões e com o primeiro valor de 0,5V não utilizado e 23 notas por

corda (corda solta e 22 notas do braço), gerava-se cada nota musical de forma muito simples,

intercalando nível lógico alto e nível lógico baixo no pino de saída numa determinada

freqüência de acordo com a(s) nota(s) tocada(s) gerando assim um somatório de até seis ondas

quadradas na saída e produzindo, portanto um som não tão agradável ao ouvido e sem um

timbre parecido com o de violão ou guitarra. O hardware dessa etapa do projeto não foi

montado em circuito impresso, sendo realizadas simulações no computador e montagens em

protoboard usando botões da resistência em série para o terra para obter a tensão

correspondente à nota do botão 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 precisão na relação da tensão

fornecida aos pinos da entrada analógica, pois mesmo com todos os ajustes feitos em

decorrência da utilização de resistores com tolerância de 10%, alguns botões enviavam

tensões com diferenças inferiores aos 0,2V estipulados, o que acarretava em um mesmo botão

fazer o microcontrolador executar alternadamente de uma a 3 notas diferentes, a nota correta,

a anterior e a próxima nota.

No protótipo do controlador MIDI em forma de guitarra o firmware atua de forma que

o microcontrolador recebendo nível lógico 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 nível lógico alto (5V), todos configurados como

entrada de sinal digital, envia mensagens MIDI pertinentes através da UART para o módulo

transmissor que por sua vez envia ao módulo receptor ligado ao computador (Figura 2.7). O

firmware completo encontra-se no Anexo I.

Page 52: Relatório Final - PFG - Julio - 2010

52

Figura 2.7 – Diagrama da Rotina Principal do Firmware.

Para programar o microcontrolador com as tarefas a serem realizadas por ele, foi

necessário o estudo prévio do protocolo MIDI e a relação 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 compatível com esse protocolo e executará a nota Mi

solicitada. Como o protocolo MIDI permite apenas 128 posições para as notas e com 22 casas

teríamos 138, optou-se por reduzir o número de casas para 20 que nos fornece 126 posições

distintas, que continua sendo um número razoável se comparado com um violão que

normalmente possui 19 casas totalizando 120 posições. Com essas informações foi criada a

Tabela 2.1 abaixo que nos mostra a relação das 45 notas diferentes que o controlador pode

executar com suas respectivas freqüências e o valor da mensagem MIDI enviada ao

computador que irá executá-las.

Início

Configurações Iniciais

Laço Infinito Testa Corda Tocada Chama Função da Corda Tocada

Corda 1 Testa Casa

Tocada Chama

Função de Envio

Corda 2 Testa Casa

Tocada Chama

Função de Envio

Corda 3 Testa Casa

Tocada Chama

Função de Envio

Corda 4 Testa Casa

Tocada Chama

Função de Envio

Corda 5 Testa Casa

Tocada Chama

Função de Envio

Corda 6 Testa Casa

Tocada Chama

Função de Envio

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

Page 53: Relatório Final - PFG - Julio - 2010

53

Tabela 2.1 - Relação das Mensagens MIDI com as Notas Musicais.

Frequência Nota Cordas e Casas Correspondentes da Guitarra Código (Hz) Musical 6ª 5ª 4ª 3ª 2ª 1ª MIDI 329,5 MI 0 40 349 FÁ 1 41 370 FÁ# 2 42 392 SOL 3 43

415,5 SOL# 4 44 440 LÁ 5 0 45 466 LÁ# 6 1 46 494 SI 7 2 47 523 DÓ 8 3 48 554 DÓ# 9 4 49 587 RÉ 10 5 0 50 622 RÉ# 11 6 1 51 659 MI 12 7 2 52 698 FÁ 13 8 3 53 740 FÁ# 14 9 4 54 784 SOL 15 10 5 0 55 831 SOL# 16 11 6 1 56 880 LÁ 17 12 7 2 57 932 LÁ# 18 13 8 3 58 988 SI 19 14 9 4 0 59 1046 DÓ 20 15 10 5 1 60 1108 DÓ# 16 11 6 2 61 1174 RÉ 17 12 7 3 62 1244 RÉ# 18 13 8 4 63 1318 MI 19 14 9 5 0 64 1396 FÁ 20 15 10 6 1 65 1480 FÁ# 16 11 7 2 66 1568 SOL 17 12 8 3 67 1662 SOL# 18 13 9 4 68 1760 LÁ 19 14 10 5 69 1864 LÁ# 20 15 11 6 70 1976 SI 16 12 7 71 2092 DÓ 17 13 8 72 2216 DÓ# 18 14 9 73 2348 RÉ 19 15 10 74 2488 RÉ# 20 16 11 75 2636 MI 17 12 76 2792 FÁ 18 13 77 2966 FÁ# 19 14 78 3136 SOL 20 15 79 3324 SOL# 16 80 3520 LÁ 17 81 3728 LÁ# 18 82 3952 SI 19 83 4184 DÓ 20 84

Page 54: Relatório Final - PFG - Julio - 2010

54

2.3 Módulo Transmissor

Enviou-se informações com o módulo XBee ligado ao microcontrolador (Figura 2.8).

Figura 2.8 – Módulo XBee Pro e Microcontrolador. [15]

Devido à diferença entre as tensões de trabalho do microcontrolador e do módulo

XBee, 5V e 3V respectivamente, há um divisor de tensão na saída do pino TX do

microcontrolador para a tensão enviada ser compatível com a tensão aceita pelo módulo.

Como o espaçamento entre o centro dos pinos do módulo XBee é de 2mm, foi necessário a

confecção de uma placa separada para o módulo transmissor. Por não serem encontrados os

barramentos de pinos necessários, foram utilizados como soquete para o módulo transmissor,

barramentos fêmea de 10 pinos cada, retirados da conexão da placa de ajustes de imagem de

um monitor de computador.

2.4 Fonte de Alimentação

Uma tensão de 5V é necessária para alimentar o microcontrolador. Para obtenção

desta tensão, uma fonte de alimentação (Figura 2.9) foi construída. O consumo de corrente

do microcontrolador e do módulo transmissor juntos é de aproximadamente 100mA. Como

a tensão eficaz de saída do transformador é de 6V, a tensão de pico disponível é de:

(6V x 1.4142) – 0.7V = 7.78V, onde 0.7V é a queda de um diodo. Como na entrada do 7805

são necessários no mínimo 7V, o ripple máximo é de 0.78V. Sendo retificação de onda

completa, o capacitor C1 é calculado utilizando-se tempo máximo de descarga de 8ms:

C1 = (I x 0.008)/ ripple; C1 = (0.1 x 0.008)/0.78; C1= 1000µF

Page 55: Relatório Final - PFG - Julio - 2010

55

Figura 2.9 – Circuito Elétrico da Fonte de 5V.

Também foi utilizada como alternativa à fonte uma bateria de 9V para alimentar o

circuito do controlador sem a necessidade de conexão à rede elétrica.

2.5 Módulo Receptor

Foi utilizado outro módulo 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 módulo.

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

2.6 Computador

Para poder trabalhar na taxa de transmissão de dados necessária para o funcionamento

do protocolo MIDI (31250bps) foi necessário utilizar um mecanismo que “engana” o

computador, que possui um dos valores fixos de taxa de transferência mais próxima da

necessária de 38400bps. Para isso foi utilizado o software “FTDI Clean Utility V1.0” (Figura

2.11) que ao ser executado limpa as instalações referentes ao funcionamento da porta COM

do computador relacionada à USB e as referentes ao programa utilizado pelos módulos XBee.

Page 56: Relatório Final - PFG - Julio - 2010

56

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

Em seguida é necessário que se instale novamente os arquivos apagados, dessa vez,

provindos de outra pasta “MIDIfied FTDI driver” devidamente salva no computador, que

contém o necessário para o funcionamento esperado.

Para a utilização adequada dos módulos ZigBee/XBee neste projeto é necessário

conectar cada um deles na placa CON-USBBEE, abrir o programa X-CTU(disponível no site

do fabricante da placa CON-USBBEE) e na aba Terminal digitar cada seqüência 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 opção “USB Serial Port (COMx)” (nesse caso x = 3) na

aba “PC Settings”, clicar no botão “Test/Query” e aguardar a mensagem mostrada na Figura

2.13. Caso a mensagem não confirme o funcionamento correto da comunicação, deve-se

repetir os procedimentos anteriores até se conseguir a confirmação de comunicação.

Page 57: Relatório Final - PFG - Julio - 2010

57

Figura 2.13 - X-CTU. [16]

2.6.1 Softwares

Para testar o funcionamento do protótipo na fase de recepção das informações e

execução das notas utilizou-se o software “Bome’s 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 – Bome’s Mouse Keyboard.

Com o Guitar Pro 5 v5.2(Figura 2.15) foi possível a criação de partituras e tablaturas

em tempo real utilizando o protótipo do controlador.

Page 58: Relatório Final - PFG - Julio - 2010

58

Figura 2.15 – Guitar Pro 5 v5.2.

2.7 Corpo do Controlador

Projetado no programa AutoCAD 2010, o corpo do protótipo (Figura 2.16) foi

confeccionado em MDF com 8 retângulos de acrílico 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

usuário. Já na parte de trás foi pregado o maior dos retângulos de acrílico para servir como

tampa da abertura feita para acondicionar a placa principal do protótipo. As fotos do corpo em

MDF e acrílico, 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.

Page 59: Relatório Final - PFG - Julio - 2010

59

3. Resultados Obtidos

Com o protótipo do controlador devidamente finalizado (Figura 3.1), foi possível a

realização de testes que demonstram o funcionamento do mesmo.

Figura 3.1 – Controlador MIDI em Forma de Guitarra.

Page 60: Relatório Final - PFG - Julio - 2010

60

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

cordas invisíveis, conseguindo variar a distância 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

usuário interromper os feixes dos LEDs tanto com objetos de pequena espessura ou mesmo

um de seus dedos da mão como utilizando a mão inteira ou outros objetos entre as duas

placas.

Figura 3.2 – Distância Mínima.

Figura 3.3 – Distância Máxima.

É possível se utilizar o controlador tanto por destros quanto por canhotos, bastando

para isso inverter fisicamente as conexões da placa dos fototransistores e da placa do

microcontrolador referentes às tiras de papel alumínio que fazem o papel das cordas do

teclado de membrana, de acordo com a escolha do usuário (Figura 3.4).

Page 61: Relatório Final - PFG - Julio - 2010

61

Figura 3.4 – Conexões Destro ou Canhoto.

Na execução de notas isoladas uma de cada vez o controlador respondeu muito bem e

foi possível escrever em tempo real tanto a partitura como a tablatura do início da introdução

de Pour Elise do grande compositor clássico Ludwig Van Beethoven, música escolhida para

exemplificar o funcionamento do protótipo do controlador utilizando para isso o software

compatível com a comunicação MIDI, o Guitar Pro 5 v5.2 (Figura 3.5). Percebeu-se apenas

que o tempo de cada nota é padronizado devido às configurações prévias do editor utilizado.

Figura 3.5 – Introdução da música Pour Elise de Beethoven.

Page 62: Relatório Final - PFG - Julio - 2010

62

CONSIDERAÇÕES FINAIS

Para facilitar a vida dos estudantes de guitarra, neste projeto de graduação

desenvolveu-se um controlador MIDI em forma de guitarra com sensores de toque no lugar

das cordas com comunicação wireless-USB para o computador.

Implementou-se o protótipo 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 módulo transmissor. O

computador, conectado ao módulo receptor através da USB, executa os sons correspondentes

às “casas” e “cordas” tocadas, através do software compatível com o protocolo MIDI.

Constatou-se um bom funcionamento do protótipo, confirmando sua utilidade didática,

podendo ser acessório para contribuir no ensino musical de alunos iniciantes em aulas de

violão e guitarra, despertando o interesse pela música principalmente em crianças, que são

atraídas 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 possível apenas fazer acordes na mesma casa, o que por outro lado

estimula o raciocínio e a agilidade do usuário, pois funciona normalmente para arpejos.

Outros problemas ocorreram como atraso nas atividades previstas devido à situação da saúde

pública na região de Passo Fundo, o atraso no recebimento do material necessário para a

confecção do protótipo o que impossibilitou a confecção do braço com botões pelo fato do

material vir errado por duas vezes seguidas após 2 meses de espera e o fato de ter que montar

e desmontar o protótipo diariamente na fase de testes “pré-placas” em protoboard, pois na sala

destinada aos projetos de graduação também ocorriam aulas e outros projetos.

Entre as possíveis melhorias futuras pode-se destacar a implementação de uma

alavanca virtual, confecção de um braço utilizando botões, alteração do tom das notas

musicais via firmware e criação de um software de jogo para interagir com o controlador.

Page 63: Relatório Final - PFG - Julio - 2010

63

REFERÊNCIAS BIBLIOGRÁFICAS [1] Série Harmônica. Disponível em: <http://pt.wikipedia.org/wiki/Série_harmônica_(música)>. Acesso em: 7 dezembro 2009. [2] Guitarra Elétrica. Disponível em: <http://pt.wikipedia.org/wiki/Guitarra_elétrica>. Acesso em: 7 dezembro 2009. [3] Guitarra. Disponível em: <http://pt.wikipedia.org/wiki/Guitarra>. Acesso em: 7 dezembro 2009. [4] Partitura. Disponível em: <http://pt.wikipedia.org/wiki/Partitura>. Acesso em: 31 dezembro 2009. [5] Tablatura. Disponível em: <http://pt.wikipedia.org/wiki/Tablatura>. Acesso em: 31 dezembro 2009. [6] Editor de Partitura. Disponível em: <http://pt.wikipedia.org/wiki/Editor_de_partitura>. Acesso em: 7 dezembro 2009.

[7] MIDI. Disponível em: <http://pt.wikipedia.org/wiki/MIDI>. Acesso em: 1 setembro 2009. [8] RATTON, Miguel. MIDI: o princípio de tudo. Disponível em: < http://www.erpires.com.br/Artigos_e_Tutoriais.html >. Acesso em: 9 setembro 2009. [9] COSTA, Marcelo. Solfeggiare – Um compilador para Partituras Musicais. Disponível em: < http://dsc.upe.br/~tcc/20061/MarceloCosta.pdf>. Acesso em: 10 setembro 2009.

[10] MIRANDA, José Carlos. Nova Eletrônica. Disponível em: < http://www.novaeletronica.net/q/n1/5_projetos/pag.11.html>. Acesso em: 2 setembro 2009. [11] Teclado de Membrana. Disponível em: <http://pt.wikipedia.org/wiki/Teclado_de_membrana>. Acesso em: 2 setembro 2009. [12] MTD Teclados de Membrana. O que é teclado de membrana. Disponível em: < http://www.mtd.ind.br/art_7.htm>. Acesso em: 2 setembro 2009. [13] LDR. Disponível em: <http://pt.wikipedia.org/wiki/LDR>. Acesso em: 20 novembro 2009. [14] DE SOUZA, Uilian Lucas; PEREIRA, Thiago Ramos. Fotodiodos e Fototransistores. Disponível em:< www.etb.com.br/professor/materialdeapoio/transistor.pdf>. Acesso em: 20 novembro 2009. [15] MESSIAS, Antônio Rogério. Controle remoto e aquisição de dados via XBee/ZigBee (IEEE 802.15.4). Disponível 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. Disponível em: < http://www.ladyada.net/make/xbee/midibee.html>. Acesso em: 9 outubro 2009.

Page 64: Relatório Final - PFG - Julio - 2010

64

ANEXO I – FIRMWARE DO CONTROLADOR //PROJETO DE GMCU_RADUAÇÃO JANEIRO 2010 - CONTROLADOR MIDI EM FORMA DE GUITARMCU_RA //ACADÊMICO: JULIO CHAGAS PITTHAN; ORIENTADOR: PAULO SÉRGIO CORRÊA MOLINA #include <18F4620.h> //Arquivo cabeçalho do PIC18F4620 #include <PIC18F4620_REgisters.h>//Arquivo cabeçalho 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 função 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 MÍNIMO NECESSÁRIO PARA ENVIO CORRETO DAS MENSAGENS MIDI MCU_TXREG=127; //TXREG RECEBE A INTENSIDADE = 127 (MÁXIMA) 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 VARIÁVEL 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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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

Page 65: Relatório Final - PFG - Julio - 2010

65

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&&MCU_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&&MCU_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&&MCU_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&&MCU_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 VARIÁVEL 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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_RB4==1) NOTA=61; MCU_RB3=1;//CASA 2 CORDA 2 NOTA 61

Page 66: Relatório Final - PFG - Julio - 2010

66

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&&MCU_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 VARIÁVEL 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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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 VARIÁVEL NOTA //CORDA 4 IF((MCU_RE2==1)&&(MCU_RA2==0))

Page 67: Relatório Final - PFG - Julio - 2010

67

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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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 VARIÁVEL 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

Page 68: Relatório Final - PFG - Julio - 2010

68

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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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 VARIÁVEL 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&&MCU_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&&MCU_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&&MCU_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&&MCU_RD2==1&&MCU_RD1==1&&MCU_RD0==1&&MCU_RC5==1) NOTA=51; //CASA 11 CORDA 6 NOTA 51

Page 69: Relatório Final - PFG - Julio - 2010

69

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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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&&MCU_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; //CONFIGURAÇÃO UART MCU_SYNC=0; //MODO ASSÍNCRONO 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; //TRANSMISSÃO EM 8 BITS MCU_RX9=0; //MCU_RECEPÇÃO EM 8 BITS MCU_TXEN=1; //ATIVA A TRANSMISSÃO DE DADOS MCU_CREN=1; //ATIVA A RECEPÇÃO DE DADOS NO MODO CONTÍNUO //CONFIGURAÇÃO DAS PORTS MCU_TRISA=0XFF;// 1 - ENTRADA MCU_TRISB=0XFF;// 1 - ENTRADA MCU_TRISC=0b10111111;// 0 - SAÍDA 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 CONTÍNUO 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();

Page 70: Relatório Final - PFG - Julio - 2010

70

ANEXO II – FOTOS DO CORPO E DO CONTROLADOR PRONTO