Sunteți pe pagina 1din 8

UNIVERSIDADE DE SÃO PAULO – USP

ESCOLA DE ENGENHARIA DE SÃO CARLOS


DEPARTAMENTO DE ENGENHARIA ELÉTRICA E DE
COMPUTAÇÃO

SEL0327 – APLICAÇÃO DE MICROPROCESSADORES 2

PRÁTICA 05 – JOGO DE CORRIDA

Prof. Yu Tzu Wu
Marcos Barbosa Roberto Neto (Número USP: 10377671)
Gabriel Alexandre Usai (Número USP: 10311083)

São Carlos
2019
Lista de ilustrações

Figura 1 – Exemplo funcionamento do jogo . . . . . . . . . . . . . . . . . . . . . 3


Figura 2 – Exemplo - Fim de jogo . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Figura 3 – Código dos caracteres ASCII . . . . . . . . . . . . . . . . . . . . . . . 4
Figura 4 – Caractere do Veículo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Figura 5 – Caractere do Obstáculo . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Figura 6 – Posição dos endereços do display LCD . . . . . . . . . . . . . . . . . . 5
Figura 7 – Fluxograma Programa Principal . . . . . . . . . . . . . . . . . . . . . 5
Figura 8 – Fluxograma função que gera obstáculos . . . . . . . . . . . . . . . . . 6
Figura 9 – Fluxograma Interrupção Externa 1 . . . . . . . . . . . . . . . . . . . . 7
Figura 10 – Fluxograma Interrupção Externa 2 . . . . . . . . . . . . . . . . . . . . 7
Sumário

1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Materiais e Métodos . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Resultados e Discussões . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 Programa Principal . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Interrupção Externa 1 . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3 Interrupção Externa 2 . . . . . . . . . . . . . . . . . . . . . . . . 7
4 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3

1 Objetivo

Nesta pratica será realizado um jogo de corrida utilizando um microcontrolador do


tipo 8051. O jogo gera aleatoriamente obstáculos no display LCD do micro, e o jogador,
utilizando um botão de interrupção externa, deve desviar desses obstáculos para dar
continuidade ao jogo.
A medida que ele desvia, a velocidade relativa do jogador em relação aos obstáculos
deve aumentar, existindo 3 velocidades diferentes, correspondentes a 3 níveis de dificuldade
. Se houver alguma colisão, o jogo acaba e a quantidade total de obstáculos desviados é
mostrada no display (pontuação).

Figura 1 – Exemplo funcionamento do jogo

Figura 2 – Exemplo - Fim de jogo

2 Materiais e Métodos

Foi definido dois caracteres para representas o carrinho, e os obstáculos. Para isso,
utilizou-se a tabela 5 dos códigos dos caracteres, para implementar a figura dos objetos no
código do jogo.
4

Figura 3 – Código dos caracteres ASCII

Foram escolhidas os dois caractere, a seguir, o primeiro, para o veículo, o segundo,


para o obstáculo.

Figura 4 – Caractere do Veículo

Figura 5 – Caractere do Obstáculo

Para posicionar os caractere no display, utilizou-se a tabela 6 das posições de endereço


do LCD, fornecida pelo fabricante.
5

Figura 6 – Posição dos endereços do display LCD

3 Resultados e Discussões

Para a implementação do projeto, foi utilizado o display LCD e a programação de


interrupções. O projeto foi distribuído entre o programa principal e duas interrupções
externas, as quais são explicadas nos fluxogramas a seguir:

3.1 Programa Principal

Figura 7 – Fluxograma Programa Principal


6

Figura 8 – Fluxograma função que gera obstáculos


7

3.2 Interrupção Externa 1

Figura 9 – Fluxograma Interrupção Externa 1

3.3 Interrupção Externa 2

Figura 10 – Fluxograma Interrupção Externa 2

4 Conclusão

Implementando a lógica proposta nos fluxogramas apresentados, teve-se dificuldade


gerar obstáculos aleatórios, além disso, o processo de colisão, mostrou-se dificultoso, porém,
foi realizado com sucesso. A mudança de velocidade, e o placar, não foram implementados.
O botão para o reinicio do jogo, e o botão de movimento do veículo, mostrou-se funcional.
Por fim, tiveram-se dificuldade durante a construção do jogo, porém foi possível realizar
parte das atividade propostas.

S-ar putea să vă placă și