2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Console de jogos realmente simples, com menu, tetris e cobra. Foi feito usando
- dois inversores 8x8 Square Matrix Red LED dot Module 74hc595 encontrados aqui
- um STM32F103 Nucleo-64
- 4 botões e 4 resistores
- fios, um breadbord, jumpers, etc.
- materiais de construção, parafusos, placas, etc. (aqueles são irrelevantes em relação ao produto de trabalho)
Você pode usar:
- manual stm32f encontrado aqui
- folha de dados do hc595 encontrada aqui
- um pouco de matriz de led chinês
Etapa 1: conexões
Aqui você pode ver como conectar as peças:
- botão de apertar
- tela
Os pinos GPIO que você escolhe para entrada e saída são irrelevantes, mas escolhi pinos de tela do GPIOA e pinos de botão do GPIOB.
Etapa 2: construir
Para construir seu código, você pode escolher algo chamado SEGGER ou (foi o que usei) isso.
- openocd é um servidor para o seu depurador
- st-link é o seu programador
- gcc-arm-none-eabi são suas ferramentas de programação
- observe que em common / openocd.conf eu precisei mudar para:
fonte [encontrar interface / stlink-v2-1.cfg]
source [find target / stm32f1x.cfg] reset_config srst_only srst_nogate
- Também precisei alterar o script.ld e usar outro link diferente do mostrado naquele exemplo para obter um depurador para arm. Observe também que, nesses exemplos, os arquivos stm32f10x_it. * Não estão vinculados ao makefile.
Etapa 3: Código
O código é bastante simples. A lógica é dividida em main.c, Driver. *, Menu. *, Tetris. * E Snake. *. Uma breve descrição é que o Driver oferece funções para interagir com o hardware. Em principal, você pode encontrar o driver e a inicialização do menu e ver que no menu do loop while controla a interação com os outros dois jogos. Você também pode ver como os jogos são adicionados ao menu. Cada jogo tem uma parte de inicialização e uma atualização. A atualização contém lógica, interpretação de estado e desenho.
Etapa 4: uso
Você começa no menu. Você pode selecionar outro item na página usando para cima e para baixo. Quando o último item da página é selecionado, você pode alternar entre as páginas do jogo. Atualmente, há apenas uma página, portanto, esse recurso não é usado. Quando estiver em um item do jogo, você pode usar a tecla certa para jogar.
Ao entrar no jogo, você entra na tela inicial, onde precisa pressionar o botão para baixo para iniciar ou para cima para sair. Depois de perder um jogo, você precisa pressionar a tecla para cima para ir para a tela inicial.
Para Tetris, os controles do jogo são para cima para girar a peça, para baixo para acelerar a queda da peça, para a esquerda e para a direita movem a peça para a esquerda e para a direita.
A chave esquerda é a que está mais próxima do cabo que o conecta ao console.