Escolar Documentos
Profissional Documentos
Cultura Documentos
201408OliveiraKolk PDF
201408OliveiraKolk PDF
TuKolk:
Um jogo de console utilizando a plataforma Arduino
Orientador
Leila Cristina Vasconcelos de Andrade
1
TuKolk:
Um jogo de console utilizando a plataforma Arduino
Aprovada por:
__________________________________________________
Leila Cristina Vasconcelos de Andrade (UNIRIO)
__________________________________________________
Luiz Amncio Machado de Sousa Jnior (UNIRIO)
__________________________________________________
Gleison dos Santos Souza (UNIRIO)
2
Agradecimentos
Fabrcio gostaria de agradecer as professores Geiza e Leila por toda a ajuda durante
o perodo acadmico, em inmeras situaes. Gostaria tambm de agradecer a minha
famlia. Em especial mame Lilian que sempre me deu fora e amor, tia Tet, vov
Snia, e a inesquecvel e sempre presente Renata. Agradecimentos ao amigo Andr, grande
Tuka, parceiro de muitas aventuras, e ao Fbio pela amizade quntica. Aos amigos
distantes das estrelas, Landell, Eduardo e Antonella.
3
RESUMO
Tendo por objetivo ser uma introduo ao desenvolvimento de jogos, este estudo
analisa cada nvel com saberes e competncias vistas no ambiente acadmico, relacionando
de forma ldica conceitos tericos com um projeto prtico.
4
ABSTRACT
The present work is the result of the mentees research, that through various
obstacles, programmed and manufactured a video game console based on Arduino. Using
touch screen and LCD display, the console is used in a gameplay of an addictive game
programmed by the mentees.
5
ndice
1 - Introduo.................8
1.1 - Motivao..............8
1.2 - Objetivos...........................9
1.3 - Organizao do texto.........9
2 - Background Tecnolgico....10
2.1 - Eltrons e eletricidade.....10
2.2 - Eletrnica digital.12
2.3 - Blocos lgicos ........13
2.4 - Arquitetura de computadores......15
2.5 - Arduino.......17
2.6 - Programao...........21
2.7 - Engine.............23
2.8 - Computao grfica e matemtica..........23
2.9 - Fsica...........26
2.10 - Inteligncia artificial.........27
2.11 - Mquina de estados finitos........28
2.12 - Jogos Digitais....29
3 - Tecnologias utilizadas.........30
3.1 - Arduino Mega.........30
3.2 - TFT LCD MEGA Shield V2.2............31
3.3 - Display LCD / Touch screen...................33
3.4 - Bibliotecas...................37
4 - Desenvolvimento do projeto...............39
4.1 - O primeiro contato..............39
4.2 - Aventuras e novas experincias..............40
4.3 - Viso geral jogo..........................................42
4.4 - Viso geral do cdigo em alto nvel...............43
4.5 - O cdigo completo..............44
4.51 - Importao de bibliotecas, declarao de variveis e de fontes...................44
4.52 - Funes auxiliares............45
4.53 - Funes principais - Setups..............47
4.54 - Funes principais - Loop com game states.........49
4.6 - Etapas do desenvolvimento do cdigo............50
4.7 - Menu...................51
4.8 - O jogo..............52
4.9 - Game Over:.....................55
6
5 - Concluso............................................56
5.1 Limitaes.............................................56
5.2 Contribuies.............................................................................................................56
5.3 Trabalhos Futuros......................................................................................................56
6 - Referncias..............57
7 - Anexos............60
7.1 Diagrama do Arduino Mega..................60
7.2 Diagrama do Arduino Mega melhor detalhado.........................................................60
7.3 Diagrama eletrnico do Shield..................................................................................61
7.4 Pinagens do Shield....................................................................................................62
7.5 Diagrama do LCD.....................................................................................................63
7.6 Diagrama de blocos da tela LCD...............................................................................64
7.7 Funes da biblioteca UTouch..................................................................................65
7.8 Funes da biblioteca UTFT.....................................................................................66
7
1 Introduo
1.1 Motivao
O nosso projeto se prope a ser um console de jogos porttil, que ter jogos por ns
programados, utilizando tela LCD. Esse projeto ir demonstrar capacidades de
desenvolvimento de software j tradicionalmente esperadas, alm de acrescentar o
diferencial da confeco da plataforma dos jogos, que so um trao cultural do sculo 21 e
que esto na vanguarda da indstria tecnolgica no mundo contemporneo.
Portanto, o projeto de console com o uso do Arduino nos permitir ter uma viso
diferenciada sobre inovao, fazendo uso no s as habilidades tradicionalmente
esperadas, como tambm demonstrando um potencial de abstrao aliado como uma viso
concreta de solues via hardware.
8
1.2 Objetivos
Captulo II: Nesta seo ser explorado o background tecnolgico do projeto, estudando
todos os conceitos eletrnicos, fsicos, matemticos e programveis relevantes.
Captulo III: Nesta seo as tecnologias efetivamente utilizadas sero apresentadas,
ressaltando os dados tcnicos que sejam relevantes para o projeto.
Captulo IV: Nesta seo ser demonstrado o passo a passo do desenvolvimento do
projeto, com as dificuldades encontradas e as solues desenvolvidas.
Captulo V: Concluses Rene as consideraes finais, assinala as contribuies da
pesquisa e sugere possibilidades de aprofundamento posterior.
9
2 Background Tecnolgico
Nesta seo, abordaremos a infra-estrutura do Arduino, as unidades fundamentais
da eletrnica e seus componentes (transistores, portas lgicas), a formao de blocos
lgicos e organizao de computadores. Falaremos sobre microcontrolares e
microprocessadores, de forma a situar o background tcnico sobre o arduino e o seu
sistema computacional.
Nesta seo abordaremos tpicos que giram em torno de eltrons, corrente eltrica,
medidas eltricas e alguns componentes como resistores, capacitores e transistores.
10
Outra equao importante para o estudo da eletrnica a de potncia, que
compreendida como a capacidade de se realizar trabalho. Matematicamente usa-se a
equao: P = V * I.
11
2.2 Eletrnica digital
- AND: A porta AND realiza uma multiplicao lgica de suas 2 entradas, de forma
que apenas obtm um valor true quando as duas entradas so true.
- NAND: A porta NAND a negao lgica da porta AND, de forma que apenas
obtm o valor false quando as suas duas entradas so true.
- NOR: A porta NOR a negao lgica da porta OR, portanto a nica forma de se
obter um valor true a partir de duas entradas false.
- XOR: A porta XOR retorna valores true quando as suas entradas so opostas, ou
seja, possui uma entrada true e a outra false.
- Aritmtica
As propriedades aritmticas garantem a lei aditiva (operao OR) e a lei
multiplicativa (operao AND).
- Identidades algbricas
12
Identidades aditivas:
Identidades multiplicativas:
- Propriedades avanadas:
13
Os blocos funcionais aritmticos que so importantes para o nosso tipo de projeto
so os comparadores, somadores e ALUs, melhor detalhados abaixo:
Flip-Flops so circuitos que possuem dois estados estveis que podem ser usados
para armazenar a informao. A memria a base de toda lgica sequencial.
Com base nos conceitos descritos acima, podemos compreender melhor como o
nosso console funciona em baixo nvel. Um microprocessador apenas uma mquina de
estados que busca, decodifica e executa instrues. As entranhas de um processador so
apenas portas lgicas, buffers, flip flops, ALUs e conectores. Todos estes controlados por
sinais, que so binrios, TRUE ou FALSE, que controlam o fluxo de dados, que nos
permitem controlar a execuo de um programa. Estes programas nada mais so do que
drivers de mquinas de estados que so mutveis via memria.
(Lamothe, Andr. 2005.)
14
2.4 Arquitetura de computadores
A maior parte dos processadores tem uma arquitetura baseada na chamada mquina
de Von Neumann. Nessa arquitetura, temos 3 segmentos interligados:
15
As tarefas que um processador executa so as seguintes:
- Registros e memria
- As operaes dos registros
- Unidade de controle
16
2.5 Arduino
O Arduino possui preos acessveis, porm no Brasil estes preos so inflados por
conta dos custos de importao, frete, impostos, cmbio e demais taxas. Uma lista
completa e tecnicamente detalhada dos Arduinos disponveis, pode ser encontrada no link
a seguir: https://www.sparkfun.com/arduino_guide
17
Figura 1 - Foto do Arduno UNO, visto de cima.
Fonte: Arduino a quick-start guide, Maik Schmidt, p 26.
Cada Arduno precisa estar conectado uma fonte de energia. O Arduino UNO
pode ser energizado por um cabo USB vindo do computador e se conectar ao USB
Connector do aparelho, ou utilizar uma entrada de energia especfica que conecte ao Power
Jack. Lembrando que a energia utilizada no pode passar dos 20 Volts, seno poder
danificar os componentes da placa Arduino. A voltagem recomendada para a maioria dos
modelos Arduino de 6 a 12 Volts.
18
Um shield uma extenso de hardware de arduino, que se acopla modularmente a
ele de forma a converter sua pinagem original, traduzindo seus bits e ampliando suas
capacidades, permitindo diversos usos.
19
Figura 3 - Tela de compilao do IDE Arduino.
20
2.6 Programao
Como foi dito em outra seo, o Arduino possui muitas estruturas derivadas da
linguagem C/C++. Os programas criados so chamados de Sketchs. Existem duas funes
principais, a setup() e a loop(), que precisam estar presentes, mesmo que no sejam usadas.
- setup() - A funo setup() apenas executada uma vez, logo aps o seu Sketch ter
sido carregado, ou quando voc energiza o seu Arduino. Essa funo utilizada para
inicializar variveis, pinagens, bibliotecas, etc.
- Blocos de funes: So blocos de cdigo que tem como objetivo completar uma tarefa.
21
Todo programa pode ser dividido em 5 passos:
- Inicializao
- Inputs
- Processamento
- Outputs
- Trmino
Em C++, existem dois tipos de arquivos principais, quando lidamos com classes, o
.cpp e o .h. Os arquivos .h so arquivos de definio, onde declaramos as nossas
classes. Implementamos as nossas classes nos arquivos .cpp.
22
Outro conceito importante o de herana. Na herana, uma classe herda os seus
atributos e mtodos de uma outra classe, adicionando a classe original seus prprios
atributos e mtodos, se assim o quiser.
C++ tambm nos permite usar ponteiros e referncias. Referncias nos permitem
enderear e trabalhar diretamente com regies de memria, acessando os bytes salvos
naquela regio endereada. Ponteiros nos permitem apontar para regies de memria,
possuindo um tipo. Quando criamos vetores, estamos trabalhando com ponteiros, pois um
vetor nada mais do que um ponteiro para uma seo da memria ou um ponteiro para
vrios outros ponteiros. O vetor em si apenas um ponteiro para a localizao na memria
para a qual o primeiro elemento do vetor armazenado.
2.7 Engine
Nesta seo abordaremos sobre o que uma engine, como funciona e como ser
aplicada no jogo em questo.
23
Muito da computao grfica utiliza a lgebra Linear, a manipulao de matrizes,
a projeo de imagens, entre outras tcnicas. Esses estudos de lgebra linear foram depois
implementados em APIs (um conjunto de rotinas e padres estabelecidos por um software
para a utilizao das suas funcionalidades por aplicativos que no pretendem envolver-se
em detalhes da implementao do software, mas apenas usar seus servios (WIKIPEDIA,
API. Disponvel em: http://pt.wikipedia.org/wiki/API . Acesso em: 30 set 2014)), como a
OpenGL. Faz-se vlido portanto estudar um pouco mais esse assunto, para termos uma
viso mais aprofundada sobre como so geradas as imagens que produzimos nos consoles,
e sua implementao no nvel de instruo de mquina.
24
Existe um conjunto de sistemas de coordenadas para nos orientar em computao
grfica. Temos circunscrito a esses sistemas de coordenadas o sistema de referncia do
Universo, o sistema de referncia do objeto (piv), o sistema de referncia normalizado
(0<=x<=1 e 0<=y<=1) e o sistema de referncia do dispositivo (geralmente referentes aos
sistemas de vdeo).
- Transformao de Escala:
Para escalonarmos (relativo a escala) um objeto, devemos multiplicar cada um de seus
elementos por um fator. Isso pode ser entendido pela seguinte operao matemtica:
x'= x . Sx
y' = y . Sy
- Na forma matricial:
|x y| |Sx 0|
|0 Sy|
- No espao 3d:
|Sx 0 0|
|x' y' Z'| = |x y z| * |0 Sy 0| = |xSx ySy zSz|
|0 0 Sz|
25
- Transformao de rotao
Rotacionar significa "girar" um objeto. Matematicamente temos as equaes abaixo.
2.9 Fsica
26
2.10 Inteligncia artificial
- Percepo
Na fase de percepo estipulamos quais informaes os agentes percebem no
mundo a sua volta. Pode ser com base em distncias fsicas do campo de visualizao dos
agentes, ou com base em outras lgicas.
- Pensamento
A partir do momento que os agentes so alimentados com informaes do
ambiente, precisam tomar aes. Para que uma ao seja tomada, precisa haver uma
estratgia inteligente para essa ao, que decidida na fase de pensamento. Dentre as
tcnicas mais consagradas, temos a pr-programao de respostas de acordo com certas
situaes ou a utilizao de algoritmos de busca para solues ideais. Na tcnica da pr-
programao so utilizados mquina de estados finitos, rvores de deciso, entre outras. Na
tcnica de busca, utiliza-se um algoritmo de busca para descobrir uma sequncia de passos
que gere uma soluo ideal.
- Ao
nessa etapa que o resultado da percepo e pensamento exteriorizado em uma
ao percebida pelo jogador, de acordo com a natureza do jogo.
27
2.11 Mquina de estados finitos
28
2.12 Jogos
29
3 Tecnologias utilizadas
Iremos utilizar no projeto a tecnologia arduino, conhecida como Arduino Mega,
associada a um display LCD com touchscreen utilizando o shield apropriado, alm das
IDES, bibliotecas e demais funes que o arduino nos prov para programarmos a nossa
aplicao. Vejamos abaixo cada um dos mdulos empregados:
30
Figura 8 - Diagrama do Arduino Mega.
Fonte: Fonte Arduino Cookbook - Margolis, Michael
31
Figura 10 - Diagrama do TFT LCD Mega Shield V2.2.
Fonte: ITDB02 Arduino MEGA Shield. Acesso em 2014.
32
3.3 Display LCD / Touch Screen
Adquirimos para o projeto o Display LCD TFT01-2.4 v1.2. Nele, temos uma tela
LCD com funcionalidades touchscreen, que utiliza o driver display S6D1121.
Possui 40 pinos, carto SD, tela de cristal lquido QVGA TFT LCD display,
resoluo de 240 X 320 RGB, possibilitando 262.144 cores. Possui dimenses de 530mm
por 750mm. Regulador de tenso de 2.8 V / 3.3 V, com alimentao de 5V. Suporta
formato 8/16 bits RGB565, Controlador touchscreen ADS7843 e controlador LCD TFT
S6D1121.
33
Do ponto de vista fsico, as telas LCD funcionam como isolantes eltricos, que
separam materiais condutores transparentes como o ITO(Indium tin oxide), de outros
condutores. O corpo humano condutor, ento, quando encostamos na superfcie da tela,
geramos uma distoro no campo eletroesttico da tela, gerando uma mudana no efeito
capacitivo, formado entre o ITO, o dedo humano e o isolante de vidro. Pode-se ento
determinar a posio do toque, pela variao da capacitncia, e essa posio enviada a
um controlador que a processa.
34
Figura 13 - Esquema LCD.
Fonte: ElecFreaks Wiki, TFT01 LCD. Acesso em: 2014.
35
Figura 15 - Pinagem do ADS7843
Fonte: Texas Instruments, TFT01 LCD. Acesso em: 2014.
36
3.4 Bibliotecas
- UTouch:
37
- UTFT:
A biblioteca UTFT responsvel pelas funes da tela LCD. Vejamos as suas funes:
38
4 Desenvolvimento do projeto
Nessa seo iremos discorrer sobre o desenvolvimento do projeto, a construo
fsica do hardware, a programao do software, problemas encontrados, desafios e as
solues desenvolvidas.
O primeiro contato com a tecnologia Arduino veio aps as aulas da disciplina Tarc
I ministradas pelo professor Leonardo Rocha, na Unirio. Houve uma dificuldade inicial em
se conseguir os Kits, de forma que utilizamos o Kit do professor.
Aps um rodzio com outros alunos, conseguimos por intermdio de um colega em
comum um Arduino Uno, para prossegurimos o desenvolvimento do nosso projeto da
disciplina. Realizamos um projeto de manipulao de texto em um display, conforme
mostrado na foto abaixo, utilizando a tela LCD do professor, assim como a sua fiao,
protoboard e demais perifricos. A experincia com a disciplina nos motivou a aprofundar
os estudos e a desenvolver um projeto final utilizando essa tecnologia.
39
4.2 Aventuras e novas experincias
Decidimos, ento, investir em outra aquisio, dessa vez que viesse agregada a tela
LCD com as funcionalidades touchscreen, busca que nos levou a compra do display LCD
TFT01-2.4 v1.2, melhor descrito no captulo 3. Esta tela por sua vez se demonstrou
incompatvel com o Arduino Uno e as nossas pesquisas indicaram que para se encaixar
perifricos ao Arduino, iramos precisar dos chamados Shields, que j foram melhor
explicados no captulo 3. Alm disso, o nosso modelo de tela no era compatvel com o
Arduino Uno, necessitando a compra de um outro modelo de Arduino, no caso, da linha
Mega.
40
Resolvemos pesquisar os Shields e o Arduino Mega no Edifcio Avenida Central,
referncia de eletrnicos na cidade do Rio de Janeiro, porm ningum sabia nem o que
significava a palavra Arduino, ignorncia que nos surpreendeu. Depois dessa negativa
nas lojas fsicas e tradicionais, fomos procurar em lojas virtuais. Alguns sites
internacionais possuam diversos produtos e com preos competitivos, porm os longos
prazos de entrega nos fizeram descartar essas opes.
Aps termos em mos todo o hardware necessrio, houve uma posterior frustrao,
pois junto com o hardware no veio qualquer tipo de manual, especificaes ou detalhes
tcnicos. O Arduino possui diversos modelos e uma infinidade de Shields, que possuem
por sua vez diversas verses, de forma que achar as informaes para o nosso caso
especfico consumiu uma parcela significativa de tempo, tanto em pesquisas em sites
nacionais quanto em sites internacionais.
41
4.3 Viso geral do jogo
42
4.4 Viso geral do cdigo em alto nvel
Vejamos agora uma viso em alto nvel da programao do jogo, para depois
analisarmos o desenvolvimento de seu cdigo.
Temos 3 possveis estados de jogo, definidos por 3 funes diferentes de Setup, que
so selecionados dentro do corpo do Loop() do cdigo de acordo com as variveis
gameState. So elas setup(), setupGame() e setupGameOver().
43
4.5 O cdigo completo
44
4.52 Funes auxiliares
- updateScore()
- updateTimer()
- grow()
45
- waitForIt()
46
4.53 Funes principais - Setups.
- setup()
47
- setupGame()
- setupGameOver()
48
4.54 Funes principais - Loop com game states
- game State 1
- game State 2
49
- game State 3
Abrimos uma sketch nova (arquivo do arduino) para testar as funes vistas nas
libraries de exemplo. Estudamos especialmente as funes drawCircle() - que desenha
crculos a partir da edio de seus parmetros X, Y e de raio - e setColor() - que muda a
cor de toda a renderizao da tela.
50
4.7 Menu
Para se criar o menu inicial do jogo, a primeira etapa foi testar as fontes de texto do
site citado nas referncias, compatveis com a biblioteca UTFT, como as funes setFont()
e print(). Para se utilizar uma fonte de texto, precisa-se adicion-la ao Sketch, utilizando a
funo extern uint8_t arial_bold[];. Cada fonte diferente possui um tamanho X e Y de
pixels, alm de definies de posio X, Y da tela, escritas pela funo Print().
51
4.8 O jogo
52
Figura 23- Teste da funo drawCircle().
Constatamos ento que no haviam mais exemplos teis nas bibliotecas (Libraries),
de forma que daqui para frente as funes teriam que ser desenvolvidas do zero.
Foi criada ento uma funo nomeada grow(), que chamada a cada segundo e
faz o crculo crescer a partir de seu raio em 10 pixels, no ultrapassando 25 pixels de raio.
Mapeou-se a posio do crculo criado para que a sua rea fosse transformada em boto.
No criou-se uma funo especfica para isso pois esta tarefa foi implementada dentro do
loop().
Com a criao de crculos, cada vez que um crculo selecionado com a funo de
toque, so chamadas duas funes cruciais, que so a waitForIt() e updateScore(). Vejamos
cada uma delas abaixo.
53
Figura 24 - Processo de implementao de Score.
O prximo passo foi criar uma contagem regressiva para o nosso jogo. Como no
existe uma funo pr-definida de clculo de tempo, foi necessrio usar a funo
delay(1000), que atrasa a execuo do programa em 1000 milisegundos, e criar uma
vriavel timerTotal, para armazenar 1 unidade a mais para cada segundo.
Porm, a funo delay(1000) faz com que se paralise por 1 segundo quaisquer
outras atividades. Ou seja, o toque s seria reconhecido aps 1 segundo, o que atrapalharia
a jogabilidade. Para no atrapalhar a funo de toque, criamos um mtodo que divide a
funo delay() em pequenas partes, para que o toque possa ser reconhecido dentre estas
pequenas divises de tempo. Ou seja, o delay(1000) que antes era de 1 segundo, passou a
ser delay(100) de 0,1 segundo e a varivel chamada timerTotal passou a armazenar 10
unidades para cada 1 segundo. Logo, a expresso final para a contagem regressiva ficou:
timeLeft = 60 - (timerTotal/10). Assim que o tempo chega a zero, chamada a funo
setupGameOver().
54
Figura 25 - Processo de implementao de Timer.
Por fim, temos a tela de game over que sobrepe a tela do jogo com a impresso do
highscore e mais 2 botes, reset e menu, acima da tela de jogo. Se a pontuao for
maior que a pontuao anterior, este ser o novo high score do jogo. Como pode ser
visualizado na Figura 26:
55
5 Concluso
O presente trabalho tem como objetivo realizar um estudo, terico e prtico, sobre
os consoles de video games e seus jogos. Com a monografia pronta e o projeto
implementado, acreditamos que os objetivos foram alcanados.
5.1 Limitaes:
Passamos por diversas dificuldades para podermos comear a realizar o projeto,
assim como muitas dificuldades durante o desenvolvimento do mesmo. Por ser um projeto
pouco usual, dentro do seu contexto, as informaes sobre jogos no universo do Arduino
so escassas, para no dizer inexistentes. Portanto, a persistncia empregada durante todo o
projeto talvez seja uma das maiores lies que essa experincia nos traz, entendida aqui
como a habilidade de no desanimar de um projeto frente as dificuldades encontradas,
acreditando que a soluo vir a partir do momento que se adicionar trabalho, pesquisa e
disciplina essa persistncia. Fora isso, a oportunidade de mexer em uma tecnologia em
asceno, o Arduino, que nos permite desenvolver mltiplos projetos em diversas reas, j
em si uma habilidade valiosa e muito relevante para o mercado, em um mundo cada vez
mais automatizado. Vale tambm citar a experincia com o desenvolvimento de uma
aplicao touchscreen, presente nos smarthphones e na criao e manipulao de grficos
em uma tela LCD, tambm presente hoje em dia em qualquer interface.
5.1 Contribuies:
Falando sobre o mercado de jogos em particular, este tambm se apresenta como
um mercado em asceno, com o crescimento e surgimento de diversas empresas. Esses
conhecimentos portanto, vem muito a agregar para quem tem interesses profissionais com
os jogos, pois desvendam a caixa preta que so os consoles, abrangendo o estudo alm do
alto nvel da programao, at o baixo nvel dos bits, portas lgicas, componentes
eletrnicos e leis da eletricidade.
O trabalho deixa um estudo terico e prtico para quem tiver interesse na rea, que
poder partir de um conhecimento acumulado significativo para expandir as possibilidades
e melhor aproveitar as capacidades e poder do Arduino ou de outras tecnologias que
venham a surgir.
5.1 Limitaes:
Deste estudo, outros trabalhos podem ser derivados. Destacamos a possibilidade de
se utilizar o jogo criado como uma ferramenta para se pesquisar as curvas de
aprendizagem, estudos relativos a reflexos, coordenao motora, cognio e nveis de
ateno.
56
6 Referncias
Lamothe, Andr. The Black Art of Video Game Console Design. Sams
Publishing. Indianpolis: Indiana, December 2005. cap. 7, p. 380.
Melgar, Enrique Ramos e Diez, Ciriaco Castro - Arduino and Kinect projects:
Design, Build, blow their minds. Apress; 1 edition (April 17, 2012)
57
Arduino, Bibliotecas. Acesso em: 30 set 2014. Disponvel em:
http://arduino.cc/en/Reference/Libraries
58
UTFT Fonts. Outubro de 2014. Disponvel em:
http://www.henningkarlsen.com/electronics/r_fonts.php
LCD TFT01 Arduino Mega Shield v2.0 SHD10. Outubro de 2014. Disponvel
em:
http://www.elecfreaks.com/store/lcd-tft01-arduino-mega-shield-v10-p-214.html
59
7 Anexos
7.1 Diagrama do Arduino Mega
60
7.3 Diagrama eletrnico do Shield
ftp://imall.iteadstudio.com/IM120417024_ITDB02_Arduino_MEGA_Shield/SCH_IM120
417024_ITDB02ArduinoMEGAShield.pdf
61
7.4 Pinagens do Shield
62
7.5 Diagrama do LCD
63
7.6 Diagrama de blocos da tela LCD
64
7.7 Funes da biblioteca UTouch
- UTouch:
65
7.8 Funes da biblioteca UTFT
- UTFT:
A biblioteca UTFT responsvel pelas funes da tela LCD. Vejamos as suas funes:
66
67
68
69
70