Índice:

Noções básicas de interface do Arduino TFT: 10 etapas (com imagens)
Noções básicas de interface do Arduino TFT: 10 etapas (com imagens)

Vídeo: Noções básicas de interface do Arduino TFT: 10 etapas (com imagens)

Vídeo: Noções básicas de interface do Arduino TFT: 10 etapas (com imagens)
Vídeo: Curso de Arduino Para Iniciantes: Aula 1 (2023) 2024, Novembro
Anonim
Noções básicas de interface TFT do Arduino
Noções básicas de interface TFT do Arduino

As telas sensíveis ao toque TFT são a incrível interface gráfica que pode ser usada com microcontroladores como Atmel, PIC, STM, pois possui uma ampla gama de cores, boa capacidade gráfica e um bom mapeamento de pixels.

Hoje, faremos a interface do escudo TFT LCD de 2,4 polegadas com o Arduino.

Esse escudo é para o Arduino UNO, mas vou ensinar como usá-lo com o Arduino Mega por um motivo muito lógico, a "Memória de programa".

Usando este escudo TFT LCD colorido, podemos mostrar caracteres, strings, interface de botão, imagens de bitmap, etc. no LCD TFT colorido.

Etapa 1: Requisitos de Hardware e Software

Requisitos de Hardware e Software
Requisitos de Hardware e Software
Requisitos de Hardware e Software
Requisitos de Hardware e Software

Para fazer a interface do escudo com o Arduino mega, precisamos do seguinte.

HARDWARE:

• Arduino mega

• LCD TFT 2,4 / 2,8 / 3,2 polegadas

• Cabo USB

PROGRAMAS

• IDE Arduino

• Biblioteca UTFT / Biblioteca spfd5408

O escudo é originalmente feito para as placas Arduino UNO, que podem ser usadas com o Arduino mega.

Existem dois problemas principais ao usá-lo com o Arduino UNO: "Memória de armazenamento" e uso de pinos.

É difícil usar os pinos não usados que estão disponíveis no UNO, ao passo que é melhor com o Arduino MEGA, já que temos mais pinos de I / O restantes.

Na próxima etapa, mostrarei como editar a biblioteca UTFT para usar o escudo TFT

Etapa 2: Ajustando UTFT Lib

Ajustando UTFT Lib
Ajustando UTFT Lib

Esta biblioteca é a continuação das minhas bibliotecas ITDB02_Graph, ITDB02_Graph16 e RGB_GLCD para Arduino e chipKit. À medida que o número de módulos de exibição e controladores com suporte começou a aumentar, senti que era hora de fazer uma única biblioteca universal, pois será muito mais fácil de manter no futuro.

O Arduino MEGA tem 256kb de memória de programa. Além disso, existem 54 pinos.

A maioria deles é de uso gratuito, e o analógico apenas 5 foi extraído de 16.

Esta biblioteca suporta uma série de monitores gráficos de 8 bits, 16 bits e seriais e funcionará com placas Arduino, chipKit e lançadores de TI selecionados.

NOTA: Devido ao tamanho da biblioteca, não recomendo usá-la no ATmega328 (Arduino Uno) e no ATmega32U4 (Arduino Leonardo), pois eles possuem apenas 32 KB de memória flash. Isso funcionará, mas você estará severamente limitado na memória flash disponível para o seu aplicativo

Passos

  • Baixe a biblioteca UTFT
  • Descompacte a biblioteca
  • Abra UTFT / hardware / avr no caso do Arduino ou dependendo do microcontrolador usado
  • Abra HW_AVR_defines usando o Notepad
  • Remova o comentário da linha 7 para habilitar a proteção UNO para MEGA
  • Salve o arquivo e adicione esta biblioteca ao Arduino IDE

Agora terminamos esta etapa! Na próxima etapa, mostrarei como usar a biblioteca e definir os pinos para o Arduino Mega.

Etapa 3: inicializando o escudo TFT

Inicializando o escudo TFT
Inicializando o escudo TFT

Após editar a biblioteca, adicione-a ao diretório Arduino.

A seguir, vou mostrar como definir o módulo TFT certo que você tem

devemos encontrar seu nome de módulo na biblioteca.

  • abra o arquivo da biblioteca
  • vá para a documentação

Você pode ver esses arquivos na documentação

• UTFT:

Este arquivo mostra todas as funções e comandos incluídos nesta biblioteca.

• UTFT_Requirement

Este arquivo contém informações sobre os módulos e como está relacionado à biblioteca, como configurações de pinos

• UTFT_Supported_display_modules _ & _ controller

Este é o nosso alvo, este arquivo tem os nomes dos módulos e escudos que são suportados por esta biblioteca, você pode ver nele uma lista de nomes de módulos e nomes de módulos para o UTFT que você deve usar para definir seu módulo.

Passos para definir o TFT:

Abra UTFT_Supported_display_modules _ & _ arquivo do controlador da biblioteca

  • Abra UTFT_Supported_display_modules _ & _ arquivo do controlador da biblioteca
  • Encontre os modelos de UTFT para os módulos (blindagem) que você possui.
  • Agora, para definir uma função UTFT no IDE do Arduino, usamos o comando:

Nome UTFT (módulo, Rs, Wr, Cs, Rst);

Abra o arquivo UTFT_Requirement da biblioteca

Pelo documento, sabemos que os pinos estão localizados nos pinos A5, A4, A3 e A2.

usamos o comando:

UTFT myGLCD (ITDB28, 19, 18, 17, 16); # observe que os pinos 19, 18, 17, 16 no Arduino Mega

UTFT myGLCD (ITDB28, A5, A4, A3, A2); # observe que os pinos A5, A4, A3, A2 no Arduino UNO

E feito! Agora você pode usar os exemplos de biblioteca no IDE do Arduino com as seguintes alterações.

Etapa 4: Hello World básico

Hello World básico
Hello World básico

#include // Declare quais fontes usaremos

extern uint8_t BigFont ; extern uint8_t SevenSegNumFont ; // Lembre-se de alterar o parâmetro do modelo para se adequar ao seu módulo de exibição! UTFT myGLCD (ITDB28, A5, A4, A3, A2); void setup () {myGLCD. InitLCD (); myGLCD.clrScr (); myGLCD.setFont (BigFont); } void loop () {myGLCD.setColor (0, 255, 0); // verde myGLCD.print ("OLÁ, MUNDO", 45, 100); while (verdadeiro) {}; }

Etapa 5: Fontes UTFT

Fontes UTFT
Fontes UTFT

#include // Declare quais fontes usaremos

extern uint8_t SmallFont ; extern uint8_t BigFont ; extern uint8_t SevenSegNumFont ; // Defina os pinos corretos para seu escudo de desenvolvimento // ----------------------------------- ------------------------- // Arduino Uno / 2009: // ---------------- --- // Escudo Arduino Uno / 2009 padrão:, A5, A4, A3, A2 // DisplayModule Arduino Uno escudo TFT:, A5, A4, A3, A2 // // Arduino Mega: // ----- -------------- // Escudo Arduino Mega / Devido padrão:, 38, 39, 40, 41 // Escudo CTE TFT LCD / SD para Arduino Mega:, 38, 39, 40, 41 // // Lembre-se de alterar o parâmetro do modelo para se adequar ao seu módulo de exibição! UTFT myGLCD (ITDB32S, 38, 39, 40, 41); void setup () {myGLCD. InitLCD () myGLCD.clrScr (); } void loop () {myGLCD.setColor (0, 255, 0); myGLCD.setBackColor (0, 0, 0); myGLCD.setFont (BigFont); myGLCD.print ("! \" # $% & '() * +, -. / ", CENTER, 0); myGLCD.print (" 0123456789:;? ", CENTER, 16); myGLCD.print (" @ ABCDEFGHIJKLMNO ", CENTER, 32); myGLCD.print (" PQRSTUVWXYZ ^ _ ", CENTER, 48); myGLCD.print (" `abcdefghijklmno", CENTER, 64); myGLCD.print ("pqrstuvwxyz {|} ~ ", CENTER, 80); myGLCD.setFont (SmallFont); myGLCD.print ("! / "# $% & '() * +, -. / 0123456789:;?", CENTER, 120); myGLCD.print ("@ ABCDEFGHIJKLMNOPQRSTUVWXYZ ^ _", CENTRO, 132); myGLCD.print ("` abcdefghijklmnopqrstuvwxyz {|} ~ ", CENTER, 144); myGLCD.setFont (SevenSegNumFont); myGLCD.print ("0123456789", CENTER, 190); enquanto (1) {}; }

Etapa 6: formas, linhas e padrões UTFT

Formas, linhas e padrões UTFT
Formas, linhas e padrões UTFT

#include "UTFT.h" // Declare quais fontes usaremosextern uint8_t SmallFont ; // Defina os pinos para os corretos para seu escudo de desenvolvimento // -------------- ---------------------------------------------- // Arduino Uno / 2009: // ------------------- // Escudo Arduino Uno / 2009 padrão:, A5, A4, A3, A2 // Escudo TFT do DisplayModule Arduino Uno:, A5, A4, A3, A2 // // Arduino Mega: // ------------------- // Arduino Mega padrão / Escudo devido:, 38, 39, 40, 41 // CTE TFT LCD / SD Shield para Arduino Mega:, 38, 39, 40, 41 // // Lembre-se de alterar o parâmetro do modelo para se adequar ao seu módulo de exibição! UTFT myGLCD (ITDB32S, 38, 39, 40, 41); configuração de void () {randomSeed (analogRead (0)); // Configurar o LCD myGLCD. InitLCD (); myGLCD.setFont (SmallFont); }

void loop ()

{int buf [318]; int x, x2; int y, y2; int r; // Limpar a tela e desenhar o quadro myGLCD.clrScr (); myGLCD.setColor (255, 0, 0); myGLCD.fillRect (0, 0, 319, 13); myGLCD.setColor (64, 64, 64); myGLCD.fillRect (0, 226, 319, 239); myGLCD.setColor (255, 255, 255); myGLCD.setBackColor (255, 0, 0); myGLCD.print ("* Biblioteca Universal Color TFT Display *", CENTER, 1); myGLCD.setBackColor (64, 64, 64); myGLCD.setColor (255, 255, 0); myGLCD.print ("", CENTER, 227); myGLCD.setColor (0, 0, 255); myGLCD.drawRect (0, 14, 319, 225); // Desenhar retículos myGLCD.setColor (0, 0, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.drawLine (159, 15, 159, 224); myGLCD.drawLine (1, 119, 318, 119); para (int i = 9; i <310; i + = 10) myGLCD.drawLine (i, 117, i, 121); for (int i = 19; i <220; i + = 10) myGLCD.drawLine (157, i, 161, i); // Desenhe as linhas sin-, cos- e tan-myGLCD.setColor (0, 255, 255); myGLCD.print ("Sin", 5, 15); para (int i = 1; i <318; i ++) {myGLCD.drawPixel (i, 119+ (sin (((i * 1,13) * 3,14) / 180) * 95)); } myGLCD.setColor (255, 0, 0); myGLCD.print ("Cos", 5, 27); para (int i = 1; i <318; i ++) {myGLCD.drawPixel (i, 119+ (cos (((i * 1,13) * 3,14) / 180) * 95)); } myGLCD.setColor (255, 255, 0); myGLCD.print ("Tan", 5, 39); para (int i = 1; i <318; i ++) {myGLCD.drawPixel (i, 119+ (tan (((i * 1,13) * 3,14) / 180))); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); myGLCD.setColor (0, 0, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.drawLine (159, 15, 159, 224); myGLCD.drawLine (1, 119, 318, 119); // Desenhe uma onda senoidal móvel x = 1; para (int i = 1; i319) {if ((x == 159) || (buf [x-1] == 119)) myGLCD.setColor (0, 0, 255); else myGLCD.setColor (0, 0, 0); myGLCD.drawPixel (x, buf [x-1]); } myGLCD.setColor (0, 255, 255); y = 119 + (sin (((i * 1,1) * 3,14) / 180) * (90- (i / 100))); myGLCD.drawPixel (x, y); buf [x-1] = y; } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns retângulos preenchidos para (int i = 1; i <6; i ++) {switch (i) {case 1: myGLCD.setColor (255, 0, 255); pausa; caso 2: myGLCD.setColor (255, 0, 0); pausa; caso 3: myGLCD.setColor (0, 255, 0); pausa; caso 4: myGLCD.setColor (0, 0, 255); pausa; caso 5: myGLCD.setColor (255, 255, 0); pausa; } myGLCD.fillRect (70+ (i * 20), 30+ (i * 20), 130+ (i * 20), 90+ (i * 20)); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns retângulos arredondados preenchidos para (int i = 1; i <6; i ++) {switch (i) {case 1: myGLCD.setColor (255, 0, 255); pausa; caso 2: myGLCD.setColor (255, 0, 0); pausa; caso 3: myGLCD.setColor (0, 255, 0); pausa; caso 4: myGLCD.setColor (0, 0, 255); pausa; caso 5: myGLCD.setColor (255, 255, 0); pausa; } myGLCD.fillRoundRect (190- (i * 20), 30+ (i * 20), 250- (i * 20), 90+ (i * 20)); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns círculos preenchidos para (int i = 1; i <6; i ++) {switch (i) {case 1: myGLCD.setColor (255, 0, 255); pausa; caso 2: myGLCD.setColor (255, 0, 0); pausa; caso 3: myGLCD.setColor (0, 255, 0); pausa; caso 4: myGLCD.setColor (0, 0, 255); pausa; caso 5: myGLCD.setColor (255, 255, 0); pausa; } myGLCD.fillCircle (100+ (i * 20), 60+ (i * 20), 30); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe algumas linhas em um padrão myGLCD.setColor (255, 0, 0); para (int i = 15; i <224; i + = 5) {myGLCD.drawLine (1, i, (i * 1,44) -10, 224); } myGLCD.setColor (255, 0, 0); para (int i = 224; i> 15; i- = 5) {myGLCD.drawLine (318, i, (i * 1,44) -11, 15); } myGLCD.setColor (0, 255, 255); para (int i = 224; i> 15; i- = 5) {myGLCD.drawLine (1, i, 331- (i * 1,44), 15); } myGLCD.setColor (0, 255, 255); para (int i = 15; i <224; i + = 5) {myGLCD.drawLine (318, i, 330- (i * 1,44), 224); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns círculos aleatórios para (int i = 0; i <100; i ++) {myGLCD.setColor (random (255), random (255), random (255))); x = 32 + aleatório (256); y = 45 + aleatório (146); r = aleatório (30); myGLCD.drawCircle (x, y, r); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns retângulos aleatórios para (int i = 0; i <100; i ++) {myGLCD.setColor (random (255), random (255), random (255)); x = 2 + aleatório (316); y = 16 + aleatório (207); x2 = 2 + aleatório (316); y2 = 16 + aleatório (207); myGLCD.drawRect (x, y, x2, y2); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); // Desenhe alguns retângulos arredondados aleatórios para (int i = 0; i <100; i ++) {myGLCD.setColor (random (255), random (255), random (255)); x = 2 + aleatório (316); y = 16 + aleatório (207); x2 = 2 + aleatório (316); y2 = 16 + aleatório (207); myGLCD.drawRoundRect (x, y, x2, y2); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); para (int i = 0; i <100; i ++) {myGLCD.setColor (random (255), random (255), random (255)); x = 2 + aleatório (316); y = 16 + aleatório (209); x2 = 2 + aleatório (316); y2 = 16 + aleatório (209); myGLCD.drawLine (x, y, x2, y2); } atraso (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); para (int i = 0; i <10000; i ++) {myGLCD.setColor (random (255), random (255), random (255)); myGLCD.drawPixel (2 + aleatório (316), 16 + aleatório (209)); } atraso (2000); myGLCD.fillScr (0, 0, 255); myGLCD.setColor (255, 0, 0); myGLCD.fillRoundRect (80, 70, 239, 169); myGLCD.setColor (255, 255, 255); myGLCD.setBackColor (255, 0, 0); myGLCD.print ("É isso!", CENTER, 93); myGLCD.print ("Reiniciando em a", CENTER, 119); myGLCD.print ("alguns segundos…", CENTER, 132); myGLCD.setColor (0, 255, 0); myGLCD.setBackColor (0, 0, 255); myGLCD.print ("Runtime: (msegs)", CENTER, 210); myGLCD.printNumI (millis (), CENTER, 225); atraso (10000); }

Etapa 7: Bitmap UTFT

Bitmap UTFT
Bitmap UTFT

#incluir

#include // Declara quais fontes usaremos extern uint8_t SmallFont ; // Defina os pinos para os corretos para seu escudo de desenvolvimento // ------------------ ------------------------------------------ // Arduino Uno / 2009: / / ------------------- // Escudo Arduino Uno / 2009 padrão:, A5, A4, A3, A2 // Escudo TFT do DisplayModule Arduino Uno:, A5, A4, A3, A2 // // Arduino Mega: // ------------------- // Arduino Mega padrão / escudo devido:, 38, 39, 40, 41 // CTE TFT LCD / SD Shield para Arduino Mega:, 38, 39, 40, 41 // // Lembre-se de alterar o parâmetro do modelo para se adequar ao seu módulo de exibição! UTFT myGLCD (ITDB32S, A5, A4, A3, A2); extern unsigned int info [0x400]; ícone externo não assinado int [0x400]; extern unsigned int tux [0x400]; void setup () {myGLCD. InitLCD (); myGLCD.setFont (SmallFont); } void loop () {myGLCD.fillScr (255, 255, 255); myGLCD.setColor (255, 255, 255); myGLCD.print ("*** Uma grade de 10 por 7 de um ícone de 32x32 ***", CENTRO, 228); for (int x = 0; x <10; x ++) for (int y = 0; y <7; y ++) myGLCD.drawBitmap (x * 32, y * 32, 32, 32, info); atraso (5000); myGLCD.fillScr (255, 255, 255); myGLCD.setColor (255, 255, 255); myGLCD.print ("Dois ícones diferentes na escala 1 a 4", CENTRO, 228); int x = 0; para (int s = 0; s0; s--) {myGLCD.drawBitmap (x, 224- (s * 32), 32, 32, ícone, s); x + = (s * 32); } atraso (5000); }

Etapa 8: Interface do botão

Interface de botão
Interface de botão

#include #include // Inicializar display // ------------------ // Defina os pinos corretos para sua placa de desenvolvimento // ------- -------------------------------------------------- - // Escudo Arduino Uno / 2009 padrão:, 19, 18, 17, 16 // Escudo Mega / Devido Arduino padrão:, 38, 39, 40, 41 // Escudo CTE TFT LCD / SD para Arduino Devido:, 25, 26, 27, 28 // Teensy 3.x TFT Test Board:, 23, 22, 3, 4 // ElecHouse TFT LCD / SD Shield para Arduino Due:, 22, 23, 31, 33 // // Lembre-se de altere o parâmetro do modelo para se adequar ao seu módulo de exibição! UTFT myGLCD (ITDB32S, 38, 39, 40, 41); // Inicializar a tela de toque // ---------------------- // Definir os pinos corretos uns para a sua placa de desenvolvimento // ------------------------------------------- ---------------- // Escudo Arduino Uno / 2009 padrão: 15, 10, 14, 9, 8 // Escudo Mega / Devido Arduino padrão: 6, 5, 4, 3, 2 // CTE TFT LCD / SD Shield para Arduino Prazo: 6, 5, 4, 3, 2 // Teensy 3.x TFT Test Board: 26, 31, 27, 28, 29 // ElecHouse TFT LCD / SD Shield para Arduino Due: 25, 26, 27, 29, 30 // URTouch myTouch (6, 5, 4, 3, 2); // Declara quais fontes usaremos extern uint8_t BigFont ; int x, y; char stCurrent [20] = ""; int stCurrentLen = 0; char stLast [20] = ""; / ************************* ** Funções personalizadas ** ********* ***************** / void drawButtons () {// Desenhe a linha superior de botões para (x = 0; x <5; x ++) {myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (10+ (x * 60), 10, 60+ (x * 60), 60); myGLCD.setColor (255, 255, 255); myGLCD.drawRoundRect (10+ (x * 60), 10, 60+ (x * 60), 60); myGLCD.printNumI (x + 1, 27+ (x * 60), 27); } // Desenhe a linha central de botões para (x = 0; x <5; x ++) {myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (10+ (x * 60), 70, 60+ (x * 60), 120); myGLCD.setColor (255, 255, 255); myGLCD.drawRoundRect (10+ (x * 60), 70, 60+ (x * 60), 120); if (x <4) myGLCD.printNumI (x + 6, 27+ (x * 60), 87); } myGLCD.print ("0", 267, 87); // Desenhe a linha inferior de botões myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (10, 130, 150, 180); myGLCD.setColor (255, 255, 255); myGLCD.drawRoundRect (10, 130, 150, 180); myGLCD.print ("Clear", 40, 147); myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (160, 130, 300, 180); myGLCD.setColor (255, 255, 255); myGLCD.drawRoundRect (160, 130, 300, 180); myGLCD.print ("Enter", 190, 147); myGLCD.setBackColor (0, 0, 0); } void updateStr (int val) {if (stCurrentLen = 10) && (y = 10) && (x = 70) && (x = 130) && (x = 190) && (x = 250) && (x = 70) && (y = 10) && (x = 70) && (x = 130) && (x = 190) && (x = 250) && (x = 130) && (y = 10) && (x = 160) && (x0) {para (x = 0; x

Etapa 9: Flappy Bird

Flappy Bird
Flappy Bird

#include #include #include // ==== Criando objetos UTFT myGLCD (SSD1289, 38, 39, 40, 41); // Os parâmetros devem ser ajustados ao seu modelo Display / Schield UTouch myTouch (6, 5, 4, 3, 2); // ==== Definindo fontes extern uint8_t SmallFont ; extern uint8_t BigFont ; extern uint8_t SevenSegNumFont ; extern unsigned int bird01 [0x41A]; // Bird Bitmapint x, y; // Variáveis para as coordenadas onde o display foi pressionado // Floppy Bird int xP = 319; int yP = 100; int yB = 50; int MovingRate = 3; int fallRateInt = 0; float fallRate = 0; pontuação int = 0; int lastSpeedUpScore = 0; int higherScore; boolean screenPressed = false; boolean gameStarted = false; void setup () {// Iniciar exibição myGLCD. InitLCD (); myGLCD.clrScr (); myTouch. InitTouch (); myTouch.setPrecision (PREC_MEDIUM); maior pontuação = EEPROM.read (0); // Lê a pontuação mais alta do EEPROM InitteGame (); // Inicia o jogo} void loop () {xP = xP-movingRate; // xP - coordenada x dos pilares; intervalo: 319 - (-51) drawPilars (xP, yP); // Desenha os pilares // yB - coordenada y do pássaro que depende do valor da variável fallingRate yB + = fallRateInt; fallRate = fallRate + 0,4; // A cada entrada, a taxa de queda aumenta para que possamos o efeito da aceleração / gravidade fallRateInt = int (fallRate); // Verifica a colisão if (yB> = 180 || yB <= 0) {// superior e inferior gameOver (); } if ((xP = 5) && (yB <= yP-2)) {// pilar superior gameOver (); } if ((xP = 5) && (yB> = yP + 60)) {// pilar inferior gameOver (); } // Desenha o pássaro drawBird (yB); // Após o pilar ter passado pela tela if (xPRESET = 250) && (x = 0) && (y = 0) && (x = 30) && (y = 270) {myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318, 0, x, y-1); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, 0, x-1, y); myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318, y + 81, x, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, y + 80, x-1, 204); } else if (x maior pontuação) {maior pontuação = pontuação; EEPROM.write (0, maior pontuação); } // Reinicia as variáveis para os valores da posição inicial xP = 319; yB = 50; fallRate = 0; pontuação = 0; lastSpeedUpScore = 0; MovingRate = 3; gameStarted = false; // Reinicia o jogo InitteGame (); }

Etapa 10: Trabalho do Projeto

Você pode encontrar o código-fonte em meu repositório Github.

Link:

Dê um joinha se realmente te ajudou e siga meu canal para projetos interessantes:)

Compartilhe este vídeo se quiser.

Fico feliz por você ter se inscrito:

Obrigado por ler!

Recomendado: