Projeto Paragon: DOOM num Arduino Nano ESP32
Há uma pergunta clássica no universo dos jogos de computador - mas será que consegue correr o Crysis? No entanto, no mundo dos jogos de microcomputador e dos microcontroladores, temos uma pergunta ligeiramente diferente - mas será que consegue correr o DOOM?
Bem, finalmente temos a resposta para o Arduino Nano. E a resposta é: sim!
De facto, é possível jogar DOOM num Arduino Nano ESP32, embora com alguns ajustes necessários.
Mas no final deste pequeno projeto, terás uma consola DOOM totalmente portátil.
Um grande aplauso para Naveen, que criou isto e depois carregou os detalhes no hackster.io para mostrar como se pode fazer isto sozinho!
E, na verdade, isto é incrivelmente simples. Tudo o que precisa de fazer é ligar os componentes e depois configurar e atualizar o firmware para que o DOOM funcione.
Na página hacker.io, estima-se que este projeto demorará 5 horas. Mas eu diria que, com as fantásticas instruções de Naveen, poderias fazê-lo muito mais depressa do que isso.
Hardware
Portanto, como já foi referido, este projeto gira em torno de um Arduino Nano ESP32. O Naveen optou por um Ecrã tátil capacitivo TFT de 2,8″ da Adafruit como ecrã, mas se tiver outro ecrã à mão, este serve certamente.
Além disso, Naveen optou por uma placa de ensaio para manter tudo unido. Para a prova de conceito, como devem ter reparado, esta consola também foi feita com restos de plástico. Claro que uma coisa destas só servirá como solução temporária.
Se quiser ligá-lo permanentemente, poderá ter de ser criativo com uma caixa impressa em 3D e um ferro de soldar.
De qualquer forma, para além disso, se olharem para a imagem abaixo, verão que Naveen também utilizou um Joystick M5Stack e um botão duplo Seeed Studio Grove. Mais uma vez, se tiveres outro joystick ou outros botões por aí, eles serão suficientes.
Por fim, como é óbvio, vai precisar de alguns fios de ligação para ligar tudo através da placa de ensaio.
Como explica Naveen, a ligação entre o Nano e o ecrã TFT baseia-se em a interface periférica de série (SPI). Entretanto, o joystick e os botões são ligados através de o barramento de circuitos integrados (I2C).
Software
Naveen esclarece que, para portar DOOM, o jogo requer algumas modificações, porque o jogo original exige mais RAM e espaço em disco do que o Arduino Nano oferece.
Por conseguinte, a configuração baseia-se em O repositório Retro-Go muito fixe da Ducalex no GitHub, que é um firmware que modifica jogos clássicos para dispositivos ESP32.
Especificamente para este projeto, Naveen configurou-o para funcionar com os joysticks, os botões e o ecrã, criando uma configuração DOOM que irá certamente apreciar.
Depois é só fazer o flash do firmware. E depois é preciso um ficheiro de configuração para ativar automaticamente o WiFi no ESP32.
Coloque isso no cartão SD e insira-o no seu Arduino Nano.
O jogo tem uma taxa de fotogramas média de 34 FPS com uma resolução de 320×240 pixéis.
Agora podes ter o DOOM em movimento com um Arduino Nano!
Conclusão
Pode encontrar os esquemas completos, o código e mais pormenores em a página hacker.io.
Também pode consultar mais projectos da Paragon que já apresentámos clicando em aqui.
Já falámos de um dos projectos do Naveen, o computador microcontrolador.
Deixem-me terminar isto com uma confissão. Para ser sincero, nunca completei o clássico DOOM completo - e tu?
это ложь в некоторой степени. представленная ссылка ведёт на Ардуино нано с атмега 128, а на картинках esp32. это небо и земля
Да, ссылка была неверной - спасибо за комментарий!
não é um Arduino nano com um atmega 328 (como o que ligaste).
é um Arduino nano-stm32. que não é assim tão chocante para correr o doom. significativamente mais poderoso do que, digamos, um Amiga 500, no qual as pessoas puseram o doom a funcionar.
Sim, a hiperligação foi indicada incorretamente. Peço desculpa pelo erro!
é uma versão nano-esp32. Pensei que por um
no momento em que o fez correr num AVR nano.
Não, desculpe. Não deixei a parte do ESP32 suficientemente clara! Já corrigi o texto.
Trata-se de uma diferença "mínima" entre um Arduino Nano (8 MHz, 2kB RAM) e um ESP32 (240MHz, muito mais RAM)! Esta é uma fórmula completamente irrefutável.
Está muito bem! Eu tenho o texto escrito. Obrigado pelo comentário!
Aber Du sprichst sehr gut Deutsch. Onde é que veio parar?
это не просто Arduino Nano, а ардуино с контроллером esp32. А ссылка отправляет нас в магазин где просто arduino nano, а не esp32
Да, ссылка была неверной - спасибо за комментарий!
Что бы писать такие статьи, нужно хоть немного разбираться в этом. Создатель молодец, а автор статьи написал полную ахинею.
Хаха извини за ахинею!
просьба поменять заголовок, так как используется Arduino Nano ESP32
Все в порядке?
para não ter de usar o Arduino nano!
nano jest na atmedze a nie na esp
Masz rację, przepraszam za pomyłkę! Para usar o Arduino Nano ESP32
wifi na karcie SD ???
Myślę, że w tłumaczeniu brakowało jednego słowa. Teraz lepiej?
bastante preso no progresso do esp idf. (o código não é o mesmo que nos vossos documentos) existe uma versão pré-compilada disponível que só precise de ser carregada?
isso seria bom 😀
Parece que o meu último comentário não chegou a ser aprovado haha
O código parece ter mudado ao longo do tempo.
queria construir um para os meus filhos neste Natal haha
alguma opção para obter um bin pré-compilado para carregar no esp32?
Com os melhores cumprimentos e muito obrigado
Robbert