
Índice:
- Etapa 1: conecte a tela (sensível ao toque)
- Etapa 2: familiarize-se com as bibliotecas
- Etapa 3: Projete uma interface gráfica do usuário / menu principal
- Etapa 4: Conecte os dois controladores
- Etapa 5: iniciar a fiação da conexão sem fio
- Etapa 6: enlouqueça! Experimente várias coisas
- Etapa 7: Design
- Etapa 8: impressão 3D do gabinete
- Etapa 9: Solda e finalização
- Etapa 10: visualizar
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03



O que eu usei
- Arduino MEGA
- 2 Arduino UNO
- Adafruit 3,5 TFT 320x480 Touchscreen HXD8357D
- Buzzer
- Alto-falante 4Ohm 3W
- Luzes LED de 5 mm
- Impressora Ultimaker 2+ com filamento PLA preto
- Lasercutter c / madeira MDF
- Tinta spray preta (para a madeira)
- 3 transceptores sem fio nRF24L01 +
- 2 botões de 16 mm
- 2 sensores de pressão
- 3 porta-baterias de 9V
- breadboard
- 2 telas OLED I2C de 0,96 ''
- Macho - fios fêmea
- Estação de solda
- Super Cola
- 2x módulo de toque de um canal (VERMELHO / AZUL)
Etapa 1: conecte a tela (sensível ao toque)


Portanto, faremos este console portátil, com dois controladores sem fio.
Portanto teremos uma unidade principal (a maior parte, com a tela LCD)
A unidade principal será executada com o Arduino MEGA.
Os dois controladores separados irão, cada um, executar um Arduino UNO.
Posteriormente faremos com que os Arduinos se comuniquem entre si para enviar dados do controlador.
Comece conectando a tela 320x480 corretamente à sua unidade de tela principal (Arduino MEGA), como neste tutorial. (Adafruit tem um ótimo tutorial detalhado para fiação e código).
Para o som, conectei uma campainha e um alto-falante 3W 4Ohm para separar os pinos digitais e GND.
com o tom (pino, frequência, duração); Você pode criar alguns sons monofônicos básicos.
Etapa 2: familiarize-se com as bibliotecas


A tela Adafruit 320x480 oferece suporte às bibliotecas Adafruit_GFX e Adafruit_TFTLCD correspondentes.
Leia a documentação. Acho que está bem explicado lá.
Certifique-se de colocar as configurações corretas no IDE do Arduino:
Ferramentas -> Placa -> Arduino / Genuino MEGA ou MEGA 2560
Ferramentas -> Porta -> [A porta com '' Arduino MEGA '' nele]
Esta biblioteca de telas em particular oferece suporte a fontes personalizadas, formas básicas e uma variedade de cores.
Algo digno de nota pode ser que a taxa de atualização é muito baixa para uma animação suave. Se você quiser atualizar a tela a cada tique, será muito lento para lidar com o redesenho de cada pixel e ele irá piscar
Então, eu sugeriria trabalhar de forma criativa em torno disso, como alguns dos computadores de mão mais antigos lidavam com a animação: com quadros-chave. Menos é mais! E em vez de redesenhar tudo a cada segundo, se você quiser mover um retângulo para a esquerda ou para a direita, você pode simplesmente apagar o rastro que ele deixa para trás, em vez de apagar o objeto inteiro e redesenhar.
Por exemplo, usei a oscilação da tela como um efeito de piscar para o personagem na sequência de introdução.
Da biblioteca Adafruit_GFX, usei principalmente o tft.fillRect (x, y, largura, altura, cor); e tft.print (texto); funções.
Experimentar é a chave.
Etapa 3: Projete uma interface gráfica do usuário / menu principal


Depois de adquirir conhecimento dentro da biblioteca e conhecer suas limitações / poderes, você pode começar a projetar uma tela do Menu Principal.
Novamente, pense em retângulos. Pelo menos foi o que eu fiz.
Este é o meu código para a IU
pastebin.com/ubggvcqK
Você pode criar controles deslizantes para o brilho da tela, para controlar o pino '' Lite '' em sua tela Touchscreen Adafruit, através de um pino analógico.
Etapa 4: Conecte os dois controladores



Para a parte do controlador, é você quem decide que tipo de sensores deseja usar, dependendo do jogo que está planejando fazer
Ok, então para os controladores que decidi usar:
- Um sensor de pressão
- Uma tela OLED
- Módulo de toque de um canal que liga ou desliga
- Sensor de gestos (RobotDyn APDS9960)
- nRFL01 + Transceptor (para comunicação sem fio)
- Um botão de pressão
Nota: O sensor Gesture e o OLED usam conexões SCL / SDA. Demorei para perceber que o Arduino só tem dois: A4 e A5. Mas você pode simplesmente conectá-los paralelamente na placa de ensaio e funcionará bem
Etapa 5: iniciar a fiação da conexão sem fio



A cablagem dos módulos nRF24L01 + demorou algum tempo a funcionar.
Tive que recorrer à biblioteca TMRh20 RF24, depois de não conseguir obter os dados corretos do sensor transmitidos para a tela.
Para que vários Arduinos se comuniquem entre si, temos que nos certificar de que pelo menos um dos UNOs está ligado, assim como o MEGA.
Use o console serial do MEGA para imprimir os resultados que você obtém do UNO e veja se funciona.
Aqui está o código
Aqui está a biblioteca
Etapa 6: enlouqueça! Experimente várias coisas

Uma parte crucial do meu processo de desenvolvimento foi apenas experimentar muitas coisas!
Que tipo de botão você deseja usar?
O que você coloca em seus controladores?
Nos sites, você encontrará muitos componentes além dos botões '' A / B '' usuais ou joysticks analógicos. Inspire-se e fique motivado para tentar!
Depois de ter uma ideia clara e funcional do que deseja colocar nos controladores, conecte os componentes.
Dependendo de como elas funcionam, você precisará usar entradas digitais ou analógicas.
NOTA: Alguns componentes podem precisar de pinos SCL / SDA para funcionar corretamente. E se você tiver dois ou mais sensores que precisam do mesmo, provavelmente terá um ataque de pânico como eu. Mas você não precisa se preocupar
Você pode colocar os pinos SDA e SCL dos sensores em série um com o outro, indo para A4 e A5 e funcionará
Etapa 7: Design



Depois de ter uma ideia legal para os sensores que deseja usar, esboce algumas ideias para um design de que goste.
Depois disso, entre em alguns programas de modelagem como Blender, Maya, Cinema 4D.
Eu usei o Blender para criar um modelo (bruto).
Para obter medições claras no Blender, você pode alterar a unidade do tamanho da grade para milímetros.
Depois de fazer um modelo, certifique-se de não ter vértices duplos e recalculou seus normais.
Exporte o arquivo como.stl, se quiser usar uma impressora 3D como a minha.
NOTA: No Blender, você terá que definir a escala de exportação para 0,1, se quiser o tamanho exato em Cura na próxima etapa
Etapa 8: impressão 3D do gabinete



Este modelo foi impresso com filamento PLA preto de 2,85 mm em uma impressora Ultimaker 2+.
Baixar CURA
Carregue seu. STL no Cura e ele mostrará quanto tempo isso levará.
Para um estojo portátil, pode levar até 10 horas para imprimir, dependendo do tamanho.
No entanto, para modelos com poucos detalhes, você pode acelerar o processo, que é o que eu fiz.
Aqui estão minhas configurações:
Altura da camada: 0,2
Espessura da parede: 0,8
Espessura superior / inferior: 0,8
Bico: 0,4
Temperatura: 60 graus Celsius
Fluxo: 100%
Borda: qualquer lugar tocando a placa de construção
Densidade de enchimento: 20%
Gradual: 0
Temperatura do bico: 220 C
Velocidade de impressão: 120%
Etapa 9: Solda e finalização



Você percorreu um longo caminho.
A etapa final é adquirir um perfboard / veroboard e traduzir suas conexões de breadboard para uma parte de uma placa de prototipagem.
Certifique-se de que os componentes eletrônicos cabem dentro dos invólucros impressos e, talvez, corte um pouco de MDF de madeira para fazer as partes onde os botões / entradas do controlador fiquem presos.
Usei um corta-laser para isso.
O mais importante é se divertir, experimentar algumas coisas que você nunca fez de outra forma e se divertir!
Espero que este tutorial tenha sido claro o suficiente… Foi um projeto bem difícil, que rendeu um ótimo resultado!:)
Etapa 10: visualizar
Recomendado:
Sistema de alarme sem fio Arduino usando sensores existentes: 9 etapas (com imagens)

Sistema de alarme sem fio Arduino usando sensores existentes: Este projeto pode ser construído em cerca de meia hora a um custo de cerca de US $ 20,00 se você tiver sensores de alarme sem fio de 433 MHz ou 315 MHz. Também pode ser um novo projeto completo com sensores de alarme sem fio, como detectores de movimento infravermelho e reed s
Robô Arduino sem fio usando módulo sem fio HC12: 7 etapas

Robô Arduino sem fio usando módulo sem fio HC12: Olá pessoal, bem-vindos de volta. Em meu post anterior, eu expliquei o que é um circuito de ponte H, L293D motor driver IC, pegando carona L293D Motor driver IC para dirigir drivers de motor de alta corrente e como você pode projetar e fazer sua própria placa de driver de motor L293D
Controlador de jogo sem fio com Arduino e NRF24L01 + (suporte para um ou dois controladores): 3 etapas

Wireless Gamecontroller com Arduino e NRF24L01 + (suporte para um ou dois controladores): Você pode encontrar o projeto completo em meu site (em finlandês): https://teukka.webnode.com/l/langaton-ohjain-atmega-lla- ja-nrf24l01-radiomoduulilla / Este é um breve briefing sobre o projeto. Eu só queria compartilhar se alguém gostasse
Ponto de acesso sem fio com alcance de cinquenta metros com adaptador sem fio TP Link WN7200ND USB no trecho Raspbian: 6 etapas

Ponto de acesso sem fio com alcance de cinquenta metros com adaptador sem fio USB TP Link WN7200ND no Raspbian Stretch: Raspberry Pi é ótimo para criar pontos de acesso sem fio seguros, mas não tem um bom alcance, usei um adaptador sem fio USB TP Link WN7200ND para estendê-lo. Quero compartilhar como fazer por que quero usar um pi de framboesa em vez de um roteador?
Faça você mesmo de microfone sem fio para sistema de guitarra sem fio: 4 etapas

Faça você mesmo de microfone sem fio para sistema de guitarra sem fio: Tenho assistido a alguns vídeos e bandas e quase todas usam um sistema sem fio na guitarra. Enlouquecer, mover-se, caminhar e fazer o que quiserem sem o cabo, então sonho em ter um .. Mas .. para mim agora é muito caro então eu vim para isso